From: Rob Herring <robh@kernel.org> To: arm@kernel.org Cc: "Andrew Lunn" <andrew@lunn.ch>, "Alexandre Belloni" <alexandre.belloni@bootlin.com>, "Tony Lindgren" <tony@atomide.com>, "Linus Walleij" <linus.walleij@linaro.org>, "Liviu Dudau" <liviu.dudau@arm.com>, "Masahiro Yamada" <yamada.masahiro@socionext.com>, "Thierry Reding" <thierry.reding@gmail.com>, "Florian Fainelli" <f.fainelli@gmail.com>, "Kevin Hilman" <khilman@kernel.org>, "Gregory Clement" <gregory.clement@bootlin.com>, "Michal Simek" <michal.simek@xilinx.com>, "Krzysztof Kozlowski" <krzk@kernel.org>, "Joel Stanley" <joel@jms.id.au>, "Andy Gross" <andy.gross@linaro.org>, devicetree@vger.kernel.org, "Jason Cooper" <jason@lakedaemon.net>, "Simon Horman" <horms@verge.net.au>, linux-arm-kernel@lists.infradead.org, "Maxime Coquelin" <mcoquelin.stm32@gmail.com>, "Shawn Guo" <shawnguo@kernel.org>, "Andreas Färber" <afaerber@suse.de>, "Daniel Mack" <daniel@zonque.org> Subject: Moving ARM dts files Date: Tue, 4 Dec 2018 12:36:49 -0600 [thread overview] Message-ID: <20181204183649.GA5716@bogus> (raw) Olof, Arnd, I've put together a script to move the dts files and update the makefiles. It doesn't handle files not following a common prefix which isn't many and some includes within the dts files will need some fixups by hand. MAINTAINERS will also need updating. A few questions: Do we want to move absolutely everything to subdirs? There's quite a few platforms with only 1-2 platforms. I haven't added these to the list yet, but can. Do any vendors need another level of directories? davinci, omap, nspire, etc. for TI for example. What to do with armv7m.dtsi? I guess it should remain and we just fixup the include. There may be a few other cross vendor things. Sub-arch maintainers, 'vendor_map' below is the mapping of file prefix to new subdirectory (the SoC vendor prefix). Please comment if there are any issues. Rob 8<----------------------------------------------------------- #!/usr/bin/env python3 import os import re from git import Git import glob vendor_map = { 'imx': 'fsl', 'ls': 'fsl', 'vf': 'fsl', 'qcom': 'qcom', 'am3' : 'ti', 'am4' : 'ti', 'am5' : 'ti', 'da' : 'ti', 'dm' : 'ti', 'dra' : 'ti', 'keystone' : 'ti', 'omap' : 'ti', 'nspire' : 'ti', 'armada' : 'marvell', 'berlin' : 'marvell', 'dove' : 'marvell', 'kirkwood' : 'marvell', 'orion' : 'marvell', 'pxa' : 'marvell', 'mvebu' : 'marvell', 'mmp2' : 'marvell', 'arm-' : 'arm', 'integ' : 'arm', 've' : 'arm', 'aspeed' : 'aspeed', 'at91' : 'atmel', 'sama' : 'atmel', 'bcm' : 'brcm', 'exynos' : 'samsung', 's3c' : 'samsung', 's5p' : 'samsung', 'gemini' : 'cortina', 'hi3' : 'hisilicon', 'hip' : 'hisilicon', 'hisi' : 'hisilicon', 'mt' : 'mediatek', 'meson' : 'amlogic', 'owl' : 'actions', 'r7' : 'renesas', 'r8' : 'renesas', 'r9' : 'renesas', 'rk' : 'rockchip', 'socfpga' : 'altera', 'st' : 'st', 'spear' : 'st', 'sun' : 'allwinner', 'tegra' : 'nvidia', 'zynq' : 'xilinx', 'wm' : 'wm', 'uniph' : 'socionext', 'zx' : 'zte', } if __name__ == "__main__": g = Git('.') g.checkout("HEAD", "arch/arm/boot/dts/Makefile") dts_make = open("arch/arm/boot/dts/Makefile", "r").read() # make entries 1 line make2 = re.sub(r'\\\n', '', dts_make) for k,v in vendor_map.items(): for f in glob.iglob("arch/arm/boot/dts/" + k + "*.*"): new_dir = "arch/arm/boot/dts/" + v + "/" base = os.path.splitext(os.path.basename(f))[0] os.makedirs(new_dir, exist_ok=True) g.mv(f, new_dir) # Remove the file from the makefile dts_make = re.sub('.*' + base + r'\.dtb.*\\\n', '', dts_make) dts_make = re.sub('.*' + base + r'\.dtb', '', dts_make) # extract the matching makefile entry reg = re.search(r'.*' + base + r'.*', make2) if not reg: continue entry = reg.group(0) make2 = re.sub(r'.*' + base + r'.*', '', make2) if entry: makefile = open(new_dir + 'Makefile', 'a+') print(entry, file=makefile) makefile.close() for d in sorted(glob.iglob("arch/arm/boot/dts/*/")): dts_make += 'subdir-y += ' + d.split(os.path.sep)[-2] + '\n' # Add license and sort entries of sub-dir makefile vendor_make = '# SPDX-License-Identifier: GPL-2.0\n' make_lines = open(d + 'Makefile', 'r').readlines() for l in sorted(make_lines): vendor_make += l vendor_make = re.sub(r'\t', r'\\\n\t', vendor_make) f = open(d + 'Makefile', 'w') f.write(vendor_make) f.close() g.add(d + 'Makefile') # Remove entries with no dtbs left dts_make = re.sub(r'.*\+= \\\n\n', '', dts_make) open("arch/arm/boot/dts/Makefile", "w").write(dts_make) g.add("arch/arm/boot/dts/Makefile")
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org> To: arm@kernel.org Cc: "Andrew Lunn" <andrew@lunn.ch>, "Alexandre Belloni" <alexandre.belloni@bootlin.com>, "Tony Lindgren" <tony@atomide.com>, "Linus Walleij" <linus.walleij@linaro.org>, "Liviu Dudau" <liviu.dudau@arm.com>, "Masahiro Yamada" <yamada.masahiro@socionext.com>, "Thierry Reding" <thierry.reding@gmail.com>, "Florian Fainelli" <f.fainelli@gmail.com>, "Kevin Hilman" <khilman@kernel.org>, "Gregory Clement" <gregory.clement@bootlin.com>, "Michal Simek" <michal.simek@xilinx.com>, "Krzysztof Kozlowski" <krzk@kernel.org>, "Joel Stanley" <joel@jms.id.au>, "Andy Gross" <andy.gross@linaro.org>, devicetree@vger.kernel.org, "Jason Cooper" <jason@lakedaemon.net>, "Simon Horman" <horms@verge.net.au>, linux-arm-kernel@lists.infradead.org, "Maxime Coquelin" <mcoquelin.stm32@gmail.com>, "Shawn Guo" <shawnguo@kernel.org>, "Andreas Färber" <afaerber@suse.de>, "Daniel Mack" <daniel@zonque.org> Subject: Moving ARM dts files Date: Tue, 4 Dec 2018 12:36:49 -0600 [thread overview] Message-ID: <20181204183649.GA5716@bogus> (raw) Olof, Arnd, I've put together a script to move the dts files and update the makefiles. It doesn't handle files not following a common prefix which isn't many and some includes within the dts files will need some fixups by hand. MAINTAINERS will also need updating. A few questions: Do we want to move absolutely everything to subdirs? There's quite a few platforms with only 1-2 platforms. I haven't added these to the list yet, but can. Do any vendors need another level of directories? davinci, omap, nspire, etc. for TI for example. What to do with armv7m.dtsi? I guess it should remain and we just fixup the include. There may be a few other cross vendor things. Sub-arch maintainers, 'vendor_map' below is the mapping of file prefix to new subdirectory (the SoC vendor prefix). Please comment if there are any issues. Rob 8<----------------------------------------------------------- #!/usr/bin/env python3 import os import re from git import Git import glob vendor_map = { 'imx': 'fsl', 'ls': 'fsl', 'vf': 'fsl', 'qcom': 'qcom', 'am3' : 'ti', 'am4' : 'ti', 'am5' : 'ti', 'da' : 'ti', 'dm' : 'ti', 'dra' : 'ti', 'keystone' : 'ti', 'omap' : 'ti', 'nspire' : 'ti', 'armada' : 'marvell', 'berlin' : 'marvell', 'dove' : 'marvell', 'kirkwood' : 'marvell', 'orion' : 'marvell', 'pxa' : 'marvell', 'mvebu' : 'marvell', 'mmp2' : 'marvell', 'arm-' : 'arm', 'integ' : 'arm', 've' : 'arm', 'aspeed' : 'aspeed', 'at91' : 'atmel', 'sama' : 'atmel', 'bcm' : 'brcm', 'exynos' : 'samsung', 's3c' : 'samsung', 's5p' : 'samsung', 'gemini' : 'cortina', 'hi3' : 'hisilicon', 'hip' : 'hisilicon', 'hisi' : 'hisilicon', 'mt' : 'mediatek', 'meson' : 'amlogic', 'owl' : 'actions', 'r7' : 'renesas', 'r8' : 'renesas', 'r9' : 'renesas', 'rk' : 'rockchip', 'socfpga' : 'altera', 'st' : 'st', 'spear' : 'st', 'sun' : 'allwinner', 'tegra' : 'nvidia', 'zynq' : 'xilinx', 'wm' : 'wm', 'uniph' : 'socionext', 'zx' : 'zte', } if __name__ == "__main__": g = Git('.') g.checkout("HEAD", "arch/arm/boot/dts/Makefile") dts_make = open("arch/arm/boot/dts/Makefile", "r").read() # make entries 1 line make2 = re.sub(r'\\\n', '', dts_make) for k,v in vendor_map.items(): for f in glob.iglob("arch/arm/boot/dts/" + k + "*.*"): new_dir = "arch/arm/boot/dts/" + v + "/" base = os.path.splitext(os.path.basename(f))[0] os.makedirs(new_dir, exist_ok=True) g.mv(f, new_dir) # Remove the file from the makefile dts_make = re.sub('.*' + base + r'\.dtb.*\\\n', '', dts_make) dts_make = re.sub('.*' + base + r'\.dtb', '', dts_make) # extract the matching makefile entry reg = re.search(r'.*' + base + r'.*', make2) if not reg: continue entry = reg.group(0) make2 = re.sub(r'.*' + base + r'.*', '', make2) if entry: makefile = open(new_dir + 'Makefile', 'a+') print(entry, file=makefile) makefile.close() for d in sorted(glob.iglob("arch/arm/boot/dts/*/")): dts_make += 'subdir-y += ' + d.split(os.path.sep)[-2] + '\n' # Add license and sort entries of sub-dir makefile vendor_make = '# SPDX-License-Identifier: GPL-2.0\n' make_lines = open(d + 'Makefile', 'r').readlines() for l in sorted(make_lines): vendor_make += l vendor_make = re.sub(r'\t', r'\\\n\t', vendor_make) f = open(d + 'Makefile', 'w') f.write(vendor_make) f.close() g.add(d + 'Makefile') # Remove entries with no dtbs left dts_make = re.sub(r'.*\+= \\\n\n', '', dts_make) open("arch/arm/boot/dts/Makefile", "w").write(dts_make) g.add("arch/arm/boot/dts/Makefile") _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next reply other threads:[~2018-12-04 18:36 UTC|newest] Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-12-04 18:36 Rob Herring [this message] 2018-12-04 18:36 ` Moving ARM dts files Rob Herring 2018-12-04 18:47 ` Alexandre Belloni 2018-12-04 18:47 ` Alexandre Belloni 2018-12-04 19:09 ` Rob Herring 2018-12-04 19:09 ` Rob Herring 2018-12-04 22:21 ` Simon Horman 2018-12-04 22:21 ` Simon Horman 2018-12-05 1:22 ` Andreas Färber 2018-12-05 1:22 ` Andreas Färber [not found] ` <9c2b5528-679a-928e-3150-aa383a4f0405-l3A5Bk7waGM@public.gmane.org> 2018-12-05 4:17 ` Rob Herring 2018-12-05 4:17 ` Rob Herring 2018-12-05 17:33 ` Tom Rini 2018-12-05 17:33 ` Tom Rini 2018-12-06 13:32 ` Andreas Färber 2018-12-06 13:32 ` Andreas Färber 2018-12-06 19:06 ` Rob Herring 2018-12-06 19:06 ` Rob Herring 2018-12-06 20:06 ` Mark Brown 2018-12-06 20:06 ` Mark Brown [not found] ` <20181206200652.GB3084-GFdadSzt00ze9xe1eoZjHA@public.gmane.org> 2018-12-06 20:49 ` Olof Johansson 2018-12-06 20:49 ` Olof Johansson 2018-12-07 14:57 ` Rob Herring 2018-12-07 14:57 ` Rob Herring 2018-12-07 15:16 ` Mark Brown 2018-12-07 15:16 ` Mark Brown [not found] ` <20181207151625.GC6510-GFdadSzt00ze9xe1eoZjHA@public.gmane.org> 2018-12-07 15:29 ` Rob Herring 2018-12-07 15:29 ` Rob Herring 2018-12-06 20:14 ` Tom Rini 2018-12-06 20:14 ` Tom Rini 2018-12-05 4:18 ` Masahiro Yamada 2018-12-05 4:18 ` Masahiro Yamada 2018-12-05 9:48 ` Michal Simek 2018-12-05 9:48 ` Michal Simek 2018-12-05 6:02 ` Jisheng Zhang 2018-12-05 6:02 ` Jisheng Zhang 2018-12-05 8:19 ` Linus Walleij 2018-12-05 8:19 ` Linus Walleij 2018-12-05 8:34 ` Jisheng Zhang 2018-12-05 8:34 ` Jisheng Zhang 2018-12-05 9:04 ` Linus Walleij 2018-12-05 9:04 ` Linus Walleij 2018-12-05 15:01 ` Rob Herring 2018-12-05 15:01 ` Rob Herring 2018-12-05 21:03 ` Linus Walleij 2018-12-05 21:03 ` Linus Walleij 2018-12-06 13:39 ` Uwe Kleine-König 2018-12-06 13:39 ` Uwe Kleine-König 2018-12-06 13:58 ` Rob Herring 2018-12-06 13:58 ` Rob Herring 2018-12-06 14:05 ` Alexandre Belloni 2018-12-06 14:05 ` Alexandre Belloni 2018-12-06 14:30 ` Linus Walleij 2018-12-06 14:30 ` Linus Walleij 2018-12-06 16:57 ` Rob Herring 2018-12-06 16:57 ` Rob Herring 2018-12-06 22:12 ` Linus Walleij 2018-12-06 22:12 ` Linus Walleij 2018-12-07 23:35 ` Tony Lindgren 2018-12-07 23:35 ` Tony Lindgren 2018-12-05 8:13 ` Nicolas.Ferre 2018-12-05 8:13 ` Nicolas.Ferre 2018-12-05 15:14 ` Neil Armstrong 2018-12-05 15:14 ` Neil Armstrong 2018-12-05 17:36 ` Li Yang 2018-12-05 17:36 ` Li Yang 2018-12-07 22:33 ` Rob Herring 2018-12-07 22:33 ` Rob Herring 2018-12-08 9:25 ` Krzysztof Kozlowski 2018-12-08 9:25 ` Krzysztof Kozlowski 2018-12-08 22:40 ` Linus Walleij 2018-12-08 22:40 ` Linus Walleij 2018-12-11 15:58 ` Olof Johansson 2018-12-11 15:58 ` Olof Johansson 2018-12-08 10:07 ` Ian Campbell 2018-12-08 10:07 ` Ian Campbell
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20181204183649.GA5716@bogus \ --to=robh@kernel.org \ --cc=afaerber@suse.de \ --cc=alexandre.belloni@bootlin.com \ --cc=andrew@lunn.ch \ --cc=andy.gross@linaro.org \ --cc=arm@kernel.org \ --cc=daniel@zonque.org \ --cc=devicetree@vger.kernel.org \ --cc=f.fainelli@gmail.com \ --cc=gregory.clement@bootlin.com \ --cc=horms@verge.net.au \ --cc=jason@lakedaemon.net \ --cc=joel@jms.id.au \ --cc=khilman@kernel.org \ --cc=krzk@kernel.org \ --cc=linus.walleij@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=liviu.dudau@arm.com \ --cc=mcoquelin.stm32@gmail.com \ --cc=michal.simek@xilinx.com \ --cc=shawnguo@kernel.org \ --cc=thierry.reding@gmail.com \ --cc=tony@atomide.com \ --cc=yamada.masahiro@socionext.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.