Hi Andrew, On 16:21 Fri 30 Aug , Andrew Lunn wrote: > On Fri, Aug 30, 2024 at 03:49:04PM +0200, Andrea della Porta wrote: > > Hi Krzysztof, > > > > On 10:38 Wed 21 Aug , Krzysztof Kozlowski wrote: > > > On Tue, Aug 20, 2024 at 04:36:10PM +0200, Andrea della Porta wrote: > > > > The RaspberryPi RP1 is ia PCI multi function device containing > > > > peripherals ranging from Ethernet to USB controller, I2C, SPI > > > > and others. > > > > Implement a bare minimum driver to operate the RP1, leveraging > > > > actual OF based driver implementations for the on-borad peripherals > > > > by loading a devicetree overlay during driver probe. > > > > The peripherals are accessed by mapping MMIO registers starting > > > > from PCI BAR1 region. > > > > As a minimum driver, the peripherals will not be added to the > > > > dtbo here, but in following patches. > > > > > > > > Link: https://datasheets.raspberrypi.com/rp1/rp1-peripherals.pdf > > > > Signed-off-by: Andrea della Porta <andrea.porta@xxxxxxxx> > > > > --- > > > > MAINTAINERS | 2 + > > > > arch/arm64/boot/dts/broadcom/rp1.dtso | 152 ++++++++++++ > > > > > > Do not mix DTS with drivers. > > > > > > These MUST be separate. > > > > Separating the dtso from the driver in two different patches would mean > > that the dtso patch would be ordered before the driver one. This is because > > the driver embeds the dtbo binary blob inside itself, at build time. So > > in order to build the driver, the dtso needs to be there also. This is not > > the standard approach used with 'normal' dtb/dtbo, where the dtb patch is > > ordered last wrt the driver it refers to. > > Are you sure you want to proceed in this way? > > It is more about they are logically separate things. The .dtb/dtbo > describes the hardware. It should be possible to review that as a > standalone thing. The code them implements the binding. It makes no > sense to review the code until the binding is correct, because changes > to the binding will need changes to the code. Hence, we want the > binding first, then the code which implements it. Ack. Cheers, Andrea > > Andrew