On 24/07/2023 15:41, Nikita Shubin wrote: >>> diff --git a/arch/arm/boot/dts/cirrus/ep93xx-ts7250.dts >>> b/arch/arm/boot/dts/cirrus/ep93xx-ts7250.dts >>> new file mode 100644 >>> index 000000000000..625202f8cd25 >>> --- /dev/null >>> +++ b/arch/arm/boot/dts/cirrus/ep93xx-ts7250.dts >>> @@ -0,0 +1,145 @@ >>> +// SPDX-License-Identifier: GPL-2.0 >>> +/* >>> + * Device Tree file for Technologic Systems ts7250 board based on >>> Cirrus EP9302 SoC >>> + */ >>> +/dts-v1/; >>> +#include "ep93xx.dtsi" >>> +#include <dt-bindings/dma/cirrus,ep93xx-dma.h> >>> + >>> +/ { >>> + compatible = "technologic,ts7250", "cirrus,ep9301"; >>> + model = "TS-7250 SBC"; >>> + #address-cells = <1>; >>> + #size-cells = <1>; >>> + >>> + chosen { >>> + }; >>> + >>> + memory@0 { >>> + device_type = "memory"; >>> + /* should be set from ATAGS */ >>> + reg = <0x00000000 0x02000000>, >>> + <0x000530c0 0x01fdd000>; >>> + }; >>> + >>> + nand-controller@60000000 { >> >> Where is this address? It does not work like that. If this is part of >> SoC, then should be in DTSI and part of soc node. If not, then it is >> some other bus which needs some description. Top-level is not a bus. >> > > It's some kind of EBI, but it doesn't need a driver it is transparent I did not mention any drivers. It's not really important here. > on ts7250, the logic is controlled through installed CPLD. > > The EBI it self is a part of the SoC through: So should be in soc. > > https://elixir.bootlin.com/linux/v6.5-rc3/source/arch/arm/mach-ep93xx/soc.h#L35 > > EP93XX_CS0_PHYS_BASE_ASYNC to EP93XX_CS0_PHYS_BASE_SYNC. > > So for ts7250 this includes: > > - NAND > - m48t86 > - watchdog > > I don't even know how to represent it correctly, would "simple-bus" > with "ranges" defined suit here, so it will represent hierarchy but > won't do anything ? You said it is part of soc, so why shouldn't it be in the soc? > >> You should see errors when testing dtbs with W=1. > > Strangely - i don't see any, but anyway the above will change. Best regards, Krzysztof