<div dir="ltr">and leave it disabled. whos idea it was anyway to convert ar71xx to DTS? unnecesary complications from my POV<br><br></div><div class="gmail_extra"><br><div class="gmail_quote">On 11 January 2018 at 00:52, Matthias Schiffer <span dir="ltr"><<a href="mailto:mschiffer@universe-factory.net" target="_blank">mschiffer@universe-factory.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">While we'd like to convert ar71xx to DT-based configuration<br>
eventually, we aren't quite there yet, and shipping half-baked DT support<br>
that is not used at all wastes precious space.<br>
<br>
Saves ~120KB before LZMA, ~33KB after LZMA.<br>
<br>
Run-tested on TP-Link CPE510 and TL-WR841 v7.<br>
<br>
Signed-off-by: Matthias Schiffer <<a href="mailto:mschiffer@universe-factory.net">mschiffer@universe-factory.<wbr>net</a>><br>
---<br>
target/linux/ar71xx/config-4.9 | 21 +------<br>
.../ar71xx/patches-4.9/604-<wbr>MIPS-ath79-no-of.patch | 70 ++++++++++++++++++++++<br>
...20-MIPS-ath79-add-support-<wbr>for-QCA953x-SoC.patch | 4 +-<br>
...21-MIPS-ath79-add-support-<wbr>for-QCA956x-SoC.patch | 4 +-<br>
4 files changed, 75 insertions(+), 24 deletions(-)<br>
create mode 100644 target/linux/ar71xx/patches-4.<wbr>9/604-MIPS-ath79-no-of.patch<br>
<br>
diff --git a/target/linux/ar71xx/config-<wbr>4.9 b/target/linux/ar71xx/config-<wbr>4.9<br>
index 4334d25b80..1b9b971688 100644<br>
--- a/target/linux/ar71xx/config-<wbr>4.9<br>
+++ b/target/linux/ar71xx/config-<wbr>4.9<br>
@@ -284,7 +284,6 @@ CONFIG_CRYPTO_RNG2=y<br>
CONFIG_CRYPTO_WORKQUEUE=y<br>
CONFIG_CSRC_R4K=y<br>
CONFIG_DMA_NONCOHERENT=y<br>
-CONFIG_DTC=y<br>
CONFIG_EARLY_PRINTK=y<br>
CONFIG_ETHERNET_PACKET_MANGLE=<wbr>y<br>
CONFIG_FIXED_PHY=y<br>
@@ -360,14 +359,12 @@ CONFIG_INITRAMFS_ROOT_UID=0<br>
CONFIG_INITRAMFS_SOURCE="../..<wbr>/root"<br>
CONFIG_INTEL_XWAY_PHY=y<br>
CONFIG_IP17XX_PHY=y<br>
-CONFIG_IRQCHIP=y<br>
CONFIG_IRQ_DOMAIN=y<br>
CONFIG_IRQ_FORCED_THREADING=y<br>
CONFIG_IRQ_MIPS_CPU=y<br>
CONFIG_IRQ_WORK=y<br>
CONFIG_LEDS_GPIO=y<br>
# CONFIG_LEDS_WNDR3700_USB is not set<br>
-CONFIG_LIBFDT=y<br>
CONFIG_MARVELL_PHY=y<br>
CONFIG_MDIO_BITBANG=y<br>
CONFIG_MDIO_BOARDINFO=y<br>
@@ -378,15 +375,10 @@ CONFIG_MIPS_ASID_BITS=8<br>
CONFIG_MIPS_ASID_SHIFT=0<br>
CONFIG_MIPS_CLOCK_VSYSCALL=y<br>
# CONFIG_MIPS_CMDLINE_BUILTIN_<wbr>EXTEND is not set<br>
-# CONFIG_MIPS_CMDLINE_DTB_EXTEND is not set<br>
CONFIG_MIPS_CMDLINE_FROM_<wbr>BOOTLOADER=y<br>
-# CONFIG_MIPS_CMDLINE_FROM_DTB is not set<br>
-# CONFIG_MIPS_ELF_APPENDED_DTB is not set<br>
# CONFIG_MIPS_HUGE_TLB_SUPPORT is not set<br>
CONFIG_MIPS_L1_CACHE_SHIFT=5<br>
CONFIG_MIPS_MACHINE=y<br>
-CONFIG_MIPS_NO_APPENDED_DTB=y<br>
-# CONFIG_MIPS_RAW_APPENDED_DTB is not set<br>
CONFIG_MIPS_SPRAM=y<br>
CONFIG_MODULES_USE_ELF_REL=y<br>
CONFIG_MTD_CFI_ADV_OPTIONS=y<br>
@@ -422,17 +414,7 @@ CONFIG_NET_DSA_TAG_TRAILER=y<br>
CONFIG_NET_SWITCHDEV=y<br>
CONFIG_NO_GENERIC_PCI_IOPORT_<wbr>MAP=y<br>
# CONFIG_NO_IOPORT_MAP is not set<br>
-CONFIG_OF=y<br>
-CONFIG_OF_ADDRESS=y<br>
-CONFIG_OF_ADDRESS_PCI=y<br>
-CONFIG_OF_EARLY_FLATTREE=y<br>
-CONFIG_OF_FLATTREE=y<br>
-CONFIG_OF_GPIO=y<br>
-CONFIG_OF_IRQ=y<br>
-CONFIG_OF_MDIO=y<br>
-CONFIG_OF_NET=y<br>
-CONFIG_OF_PCI=y<br>
-CONFIG_OF_PCI_IRQ=y<br>
+# CONFIG_OF is not set<br>
CONFIG_PCI=y<br>
CONFIG_PCI_AR724X=y<br>
CONFIG_PCI_DISABLE_COMMON_<wbr>QUIRKS=y<br>
@@ -486,4 +468,3 @@ CONFIG_SYS_SUPPORTS_ZBOOT=y<br>
CONFIG_SYS_SUPPORTS_ZBOOT_<wbr>UART_PROM=y<br>
CONFIG_TICK_CPU_ACCOUNTING=y<br>
CONFIG_USB_SUPPORT=y<br>
-CONFIG_USE_OF=y<br>
diff --git a/target/linux/ar71xx/patches-<wbr>4.9/604-MIPS-ath79-no-of.patch b/target/linux/ar71xx/patches-<wbr>4.9/604-MIPS-ath79-no-of.patch<br>
new file mode 100644<br>
index 0000000000..c0b5459e45<br>
--- /dev/null<br>
+++ b/target/linux/ar71xx/patches-<wbr>4.9/604-MIPS-ath79-no-of.patch<br>
@@ -0,0 +1,70 @@<br>
+--- a/arch/mips/Kconfig<br>
++++ b/arch/mips/Kconfig<br>
+@@ -195,7 +195,6 @@ config ATH79<br>
+ select SYS_SUPPORTS_BIG_ENDIAN<br>
+ select SYS_SUPPORTS_MIPS16<br>
+ select SYS_SUPPORTS_ZBOOT_UART_PROM<br>
+- select USE_OF<br>
+ help<br>
+ Support for the Atheros AR71XX/AR724X/AR913X SoCs.<br>
+<br>
+--- a/arch/mips/ath79/setup.c<br>
++++ b/arch/mips/ath79/setup.c<br>
+@@ -196,16 +196,20 @@ unsigned int get_c0_compare_int(void)<br>
+<br>
+ void __init plat_mem_setup(void)<br>
+ {<br>
++#ifdef CONFIG_OF<br>
+ unsigned long fdt_start;<br>
++#endif<br>
+<br>
+ set_io_port_base(KSEG1);<br>
+<br>
++#ifdef CONFIG_OF<br>
+ /* Get the position of the FDT passed by the bootloader */<br>
+ fdt_start = fw_getenvl("fdt_start");<br>
+ if (fdt_start)<br>
+ __dt_setup_arch((void *)KSEG0ADDR(fdt_start));<br>
+ else if (fw_passed_dtb)<br>
+ __dt_setup_arch((void *)KSEG0ADDR(fw_passed_dtb));<br>
++#endif<br>
+<br>
+ if (mips_machtype != ATH79_MACH_GENERIC_OF) {<br>
+ ath79_reset_base = ioremap_nocache(AR71XX_RESET_<wbr>BASE,<br>
+@@ -301,17 +305,21 @@ static int __init ath79_setup(void)<br>
+<br>
+ arch_initcall(ath79_setup);<br>
+<br>
++#ifdef CONFIG_OF<br>
+ void __init device_tree_init(void)<br>
+ {<br>
+ unflatten_and_copy_device_<wbr>tree();<br>
+ }<br>
++#endif<br>
+<br>
+ MIPS_MACHINE(ATH79_MACH_<wbr>GENERIC,<br>
+ "Generic",<br>
+ "Generic AR71XX/AR724X/AR913X based board",<br>
+ NULL);<br>
+<br>
++#ifdef CONFIG_OF<br>
+ MIPS_MACHINE(ATH79_MACH_<wbr>GENERIC_OF,<br>
+ "DTB",<br>
+ "Generic AR71XX/AR724X/AR913X based board (DT)",<br>
+ NULL);<br>
++#endif<br>
+--- a/arch/mips/ath79/clock.c<br>
++++ b/arch/mips/ath79/clock.c<br>
+@@ -33,10 +33,12 @@<br>
+ #define AR724X_BASE_FREQ 40000000<br>
+<br>
+ static struct clk *clks[ATH79_CLK_END];<br>
++#ifdef CONFIG_OF<br>
+ static struct clk_onecell_data clk_data = {<br>
+ .clks = clks,<br>
+ .clk_num = ARRAY_SIZE(clks),<br>
+ };<br>
++#endif<br>
+<br>
+ static struct clk *__init ath79_add_sys_clkdev(<br>
+ const char *id, unsigned long rate)<br>
diff --git a/target/linux/ar71xx/patches-<wbr>4.9/620-MIPS-ath79-add-<wbr>support-for-QCA953x-SoC.patch b/target/linux/ar71xx/patches-<wbr>4.9/620-MIPS-ath79-add-<wbr>support-for-QCA953x-SoC.patch<br>
index 869fdd6dd0..03ff6c6aac 100644<br>
--- a/target/linux/ar71xx/patches-<wbr>4.9/620-MIPS-ath79-add-<wbr>support-for-QCA953x-SoC.patch<br>
+++ b/target/linux/ar71xx/patches-<wbr>4.9/620-MIPS-ath79-add-<wbr>support-for-QCA953x-SoC.patch<br>
@@ -44,7 +44,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed.<br>
config ATH79_NVRAM<br>
--- a/arch/mips/ath79/clock.c<br>
+++ b/arch/mips/ath79/clock.c<br>
-@@ -356,6 +356,91 @@ static void __init ar934x_clocks_init(vo<br>
+@@ -358,6 +358,91 @@ static void __init ar934x_clocks_init(vo<br>
iounmap(dpll_base);<br>
}<br>
<br>
@@ -136,7 +136,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed.<br>
static void __init qca955x_clocks_init(void)<br>
{<br>
unsigned long ref_rate;<br>
-@@ -451,6 +536,8 @@ void __init ath79_clocks_init(void)<br>
+@@ -453,6 +538,8 @@ void __init ath79_clocks_init(void)<br>
ar933x_clocks_init();<br>
else if (soc_is_ar934x())<br>
ar934x_clocks_init();<br>
diff --git a/target/linux/ar71xx/patches-<wbr>4.9/621-MIPS-ath79-add-<wbr>support-for-QCA956x-SoC.patch b/target/linux/ar71xx/patches-<wbr>4.9/621-MIPS-ath79-add-<wbr>support-for-QCA956x-SoC.patch<br>
index dafac99190..e6eaa7123a 100644<br>
--- a/target/linux/ar71xx/patches-<wbr>4.9/621-MIPS-ath79-add-<wbr>support-for-QCA956x-SoC.patch<br>
+++ b/target/linux/ar71xx/patches-<wbr>4.9/621-MIPS-ath79-add-<wbr>support-for-QCA956x-SoC.patch<br>
@@ -24,7 +24,7 @@<br>
config ATH79_NVRAM<br>
--- a/arch/mips/ath79/clock.c<br>
+++ b/arch/mips/ath79/clock.c<br>
-@@ -526,6 +526,100 @@ static void __init qca955x_clocks_init(v<br>
+@@ -528,6 +528,100 @@ static void __init qca955x_clocks_init(v<br>
clk_add_alias("uart", NULL, "ref", NULL);<br>
}<br>
<br>
@@ -125,7 +125,7 @@<br>
void __init ath79_clocks_init(void)<br>
{<br>
if (soc_is_ar71xx())<br>
-@@ -540,6 +634,8 @@ void __init ath79_clocks_init(void)<br>
+@@ -542,6 +636,8 @@ void __init ath79_clocks_init(void)<br>
qca953x_clocks_init();<br>
else if (soc_is_qca955x())<br>
qca955x_clocks_init();<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.15.1<br>
______________________________<wbr>_________________<br>
openwrt-devel mailing list<br>
<a href="mailto:openwrt-devel@lists.openwrt.org">openwrt-devel@lists.openwrt.<wbr>org</a><br>
<a href="https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel" rel="noreferrer" target="_blank">https://lists.openwrt.org/cgi-<wbr>bin/mailman/listinfo/openwrt-<wbr>devel</a><br>
</font></span></blockquote></div><br></div>