On Fri, Dec 16, 2016 at 8:36 PM, Darren Hart <dvhart@xxxxxxxxxxxxx> wrote: > On Tue, Dec 13, 2016 at 02:26:21AM +0200, Andy Shevchenko wrote: >> On Tue, Dec 13, 2016 at 2:15 AM, Pierre-Louis Bossart >> <pierre-louis.bossart@xxxxxxxxxxxxxxx> wrote: >> For clock I would suggest include/linux/clk/ with x86_ prefix. >> For the rest I have no strong opinion except trying to avoid >> platform_data wording in the path as much as possible. >> >> As an example I could recall DMA engine subsystem where we have >> >> include/linux/platform_data/dma-*.h >> >> and >> >> include/linux/dma/*.h >> >> So, this sounds more to me as >> >> include/linux/x86/pmc_atom.h > > There should really be some Documentation about how to choose an include > directory :-) So true! > My understanding is include/linux should be more generic, rather than platform > specific headers. So while platform_data may refer specifically to the platform > bus drivers, it's the closest thing we have to include/platform, which would be > ideal. I would prefer to stick with include/platform_data because: > > 1) Semantically, it's the closest thing there is > 2) include/linux should be for more generic headers related to the OS or > subsystems > 3) It doesn't make sense to create a separate include/platform directory for a > single header. > 4) We don't want to rename platform_data to platform now and change all the > drivers, but it could be changed later. My understanding that part like P-Unit, PMIC, PMC, SCU, whatever we have inside SoC is platform from hardware prospective, but from software (driver) it doesn't use platform data since it's quite SoC specific (like CPU model to differentiate). That's why something in the middle between arch/x86/include/asm and include/linux/platform_data. I assume I would be not good in naming schemes, though platform_data for file which doesn't contain platform data for platform device sounds a bit confusing to me. Like someone already noticed include/platform_data is already messy. This might just add another level of it. So, what is exactly confuses me is mixing data for *platform devices* (as represented via *platform driver* -- struct platform_driver) and for SoC devices (no struct platform_driver per se). Maybe I misunderstood something... -- With Best Regards, Andy Shevchenko -- To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html