[PATCH 0/4] Introducing Exynos ChipId driver
From: arnd@arndb.de (Arnd Bergmann)
Date: 2014-05-06 07:23:12
Also in:
linux-samsung-soc, lkml
On Monday 05 May 2014 10:34:02 Rob Herring wrote:
quoted
Ideally this should be done by slightly restructuring the DT source to make all on-chip devices appear below the soc node. We'd have to think a bit about how to best do this while preserving compatibility with existing dts files.I don't agree. How is a block with chip ID info the parent of all the other devices? In doing some work to move default of_platform_populate out of platforms, I noticed that most platforms using the soc device are making it the parent of platform devices. I think this is either wrong or all platforms should have a default soc device. It makes little sense for some platforms to have a devices under a soc sysfs directory while others do not. Or the location changes when a platform latter adds the soc device.
We had a long discussion about this when we introduced the drivers/soc framework. The intention is that the /sys/devices/soc* node is meant to describe the SoC in its entirety, the same way you have a pci0000:00 node as the root of all PCI devices of the first pci host bridge on a PC system. This also reflects the reality of a SoC, which normally has one bus that the CPU is connected to and that has all the other devices as children. Having the chipid registers as part of the top-level bus should not be interpreted as having the other devices as children of the chipid device, but rather the chipid registers as a property of the soc itself as opposed to a random device that happens to be part of the soc. Arnd