lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f5022fe7-c3f6-4bea-bb0c-98dfe461d555@gmail.com>
Date: Thu, 24 Jul 2025 10:24:10 +0300
From: Ivaylo Ivanov <ivo.ivanov.ivanov1@...il.com>
To: Sam Protsenko <semen.protsenko@...aro.org>
Cc: Krzysztof Kozlowski <krzk@...nel.org>,
 Krzysztof Kozlowski <krzk+dt@...nel.org>,
 Alim Akhtar <alim.akhtar@...sung.com>, Rob Herring <robh@...nel.org>,
 Conor Dooley <conor+dt@...nel.org>, linux-samsung-soc@...r.kernel.org,
 devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
 linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1 1/2] dt-bindings: soc: samsung: usi: allow 64-bit
 address space

On 7/24/25 06:02, Sam Protsenko wrote:
> On Wed, Jul 23, 2025 at 3:21 AM Ivaylo Ivanov
> <ivo.ivanov.ivanov1@...il.com> wrote:
>> On 7/23/25 11:15, Krzysztof Kozlowski wrote:
>>> On Tue, Jul 22, 2025 at 03:10:36PM +0300, Ivaylo Ivanov wrote:
>>>> Some device trees, like the exynos2200 one, configure the root node
>>>> with #address-cells and #size-cells set to 2. However, the usi binding
>>>> expects 32 bit address space only. Allow these determining properties to
>>> So if USI expects 32 bit, then why do we allow 64?
>>>
>>> Switching this to 2 means you use 64-bit addressing for children
>> I don't, but the main point was to avoid defining ranges for every single usi
>> node, because they are a lot.
>>
> If all MMIO addresses in your SoC are 32-bit (they probably are), I
> think it'd be neater to just make the entire "soc" bus 32-bit (so both
> address and size cells = <1>), and map it to the root node's address
> space with "ranges", like this:
>
>     soc: soc@0 {
>         compatible = "simple-bus";
>         #address-cells = <1>;
>         #size-cells = <1>;
>         ranges = <0x0 0x0 0x0 0x20000000>;
>         ...
>
> That's how it's done in exynos850 and gs101 dts for example. This way
> you could drop all those extra "reg = <0x0 ...>" in the child nodes,
> also avoid declaring "ranges" arrays in each USI node (just "ranges;"
> would be enough), and this patch won't be needed.

Yeah, but then we'll have one more DT patch that is way bigger, changing
every single "reg =" in /soc. And the device tree for the SoC is merged already.

I do think that the neatest option is to avoid that and set an enum in the
binding, as otherwise we'd be making a stylistic change that has no
impact on functionality.

If we want the device tree to model hardware identically to how it is, then
we'd want to define IPs per bus (which I cannot really do on my own, I don't
even have TRMs).

I'll leave it up to Krzysztof to decide what is best.

Best regards,
Ivaylo

> Maybe I'm missing
> some details though?
>
>> Best regards,
>> Ivaylo
>>
>>>  and
>>> allowing DMA for >32 bit. This should be the true reason - what is the
>>> address space and DMA range for children?
>>>
>>> Best regards,
>>> Krzysztof
>>>


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ