On Tue, May 2, 2023 at 3:15 AM Arnd Bergmann <arnd@xxxxxxxx> wrote: > > On Tue, Apr 25, 2023, at 17:57, Rob Herring wrote: > > On Tue, Apr 25, 2023 at 2:28 AM Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote: > > > >> Does your script also cater for .dts files not matching any pattern, > >> but including a .dtsi file that does match a pattern? > > > > I assume I built everything after moving, but maybe not... > > > > That's all just "details". First, we need agreement on a) moving > > things to subdirs and b) doing it 1-by-1 or all at once. So far we've > > been stuck on a) for being 'too much churn'. > > Sorry for missing most of the discussion last week. The script sounds > fine to me, the only reason I didn't want to do this in the past is that > we had the plan to move platforms out of the kernel tree to an external > repository and I wanted to do this platform at a time and also only move > each one once. I don't think that is going to happen anytime soon now, > so let's just do your script. > > Can you send me the script and/or a pull request of the resulting > tree based on my soc/dt branch? Everything is merged upstream, > and I think git-merge would handle the remaining merges with any > other changes in mainline. I've dusted off my script and made a branch[1] with the result. There's just a couple of fixes needed after the script is run (see the top commit). The cross arch includes are all fixed up by the script. dtbs_install maintains a flat install. I compared the number of .dtbs before and after to check the script. I think the only issue remaining is finalizing the mapping of platforms to subdirs. What I have currently is a mixture of SoC families and vendors. The most notable are all the Freescale/NXP platforms, pxa, socfpga, and stm32. It's not consistent with arm64 either. Once that's finalized, I still need to go update MAINTAINERS. Here's the current mapping: vendor_map = { 'alphascale' : 'alphascale', 'alpine' : 'alpine', 'artpec' : 'axis', 'axm' : 'lsi', 'cx9' : 'cnxt', 'ecx' : 'calxeda', 'highbank' : 'calxeda', 'ep7' : 'cirrus', 'mxs': 'mxs', 'imx23': 'mxs', 'imx28': 'mxs', 'sun' : 'allwinner', 'imx': 'imx', 'e6' : 'imx', 'e7' : 'imx', 'mba6' : 'imx', 'ls': 'fsl', 'vf': 'fsl', 'qcom': 'qcom', 'am3' : 'ti', 'am4' : 'ti', 'am5' : 'ti', 'dra' : 'ti', 'keystone' : 'ti', 'omap' : 'ti', 'compulab' : 'ti', 'logicpd' : 'ti', 'elpida' : 'ti', 'motorola' : 'ti', 'twl' : 'ti', 'da' : 'ti', 'dm' : 'ti', 'nspire' : 'nspire', 'armada' : 'marvell', 'dove' : 'marvell', 'kirkwood' : 'marvell', 'orion' : 'marvell', 'mvebu' : 'marvell', 'mmp' : 'marvell', 'berlin' : 'berlin', 'pxa2' : 'pxa', 'pxa3' : 'pxa', 'pxa' : 'marvell', 'arm-' : 'arm', 'integ' : 'arm', 'mps' : 'arm', 've' : 'arm', 'aspeed' : 'aspeed', 'ast2' : 'aspeed', 'facebook' : 'aspeed', 'ibm' : 'aspeed', 'openbmc' : 'aspeed', 'en7' : 'airoha', 'at91' : 'microchip', 'sama' : 'microchip', 'sam9' : 'microchip', 'usb_' : 'microchip', 'tny_' : 'microchip', 'mpa1600' : 'microchip', 'animeo_ip' : 'microchip', 'aks-cdu' : 'microchip', 'ethernut5' : 'microchip', 'evk-pro3' : 'microchip', 'pm9g45' : 'microchip', 'ge86' : 'microchip', 'bcm' : 'brcm', 'exynos' : 'samsung', 's3c' : 'samsung', 's5p' : 'samsung', 'gemini' : 'gemini', 'hi3' : 'hisilicon', 'hip' : 'hisilicon', 'hisi' : 'hisilicon', 'sd5' : 'hisilicon', 'hpe' : 'hpe', 'intel': 'intel', 'mt' : 'mediatek', 'meson' : 'meson', 'moxa' : 'moxa', 'mstar' : 'mstar', 'nuvo' : 'nuvoton', 'lpc' : 'lpc', 'lan96' : 'microchip', 'owl' : 'actions', 'ox8' : 'oxsemi', 'rda' : 'rda', 'rtd' : 'realtek', 'r7' : 'renesas', 'r8' : 'renesas', 'r9' : 'renesas', 'emev2' : 'renesas', 'sh73a' : 'renesas', 'gr-' : 'renesas', 'iwg' : 'renesas', 'rk' : 'rockchip', 'rv11' : 'rockchip', 'rockchip' : 'rockchip', 'socfpga' : 'socfpga', 'stm' : 'stm32', 'sti' : 'sti', 'st-pin' : 'sti', 'ste' : 'st-ericsson', 'spear' : 'spear', 'axp' : 'allwinner', 'tegra' : 'nvidia', 'milbeaut' : 'socionext', 'uniph' : 'socionext', 'vt8500' : 'vt8500', 'wm8' : 'vt8500', 'xen' : 'xen', 'zx' : 'zte', 'zynq' : 'xilinx', } Rob [1] git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git arm-dts-move-v2