From: John Crispin Date: Fri, 12 Sep 2014 06:53:43 +0000 (+0000) Subject: atheros: add AR2316 and AR2318 SoCs detection X-Git-Tag: reboot~5979 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=413736e5f8d313e77ede599591fc89ef7ec3cbf4;p=oweals%2Fopenwrt.git atheros: add AR2316 and AR2318 SoCs detection Tested with AR2315, AR2316 and AR2317 SoCs, not tested with AR2318 but changes seems correct: revision is one more than AR2317. Signed-off-by: Sergey Ryazanov SVN-Revision: 42507 --- diff --git a/target/linux/atheros/patches-3.14/100-board.patch b/target/linux/atheros/patches-3.14/100-board.patch index 4cc0246e85..efbc241a17 100644 --- a/target/linux/atheros/patches-3.14/100-board.patch +++ b/target/linux/atheros/patches-3.14/100-board.patch @@ -2096,7 +2096,7 @@ + --- /dev/null +++ b/arch/mips/ar231x/ar2315.c -@@ -0,0 +1,556 @@ +@@ -0,0 +1,562 @@ +/* + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive @@ -2622,10 +2622,16 @@ + /* Detect the hardware based on the device ID */ + devid = ar231x_read_reg(AR2315_SREV) & AR2315_REV_CHIP; + switch (devid) { ++ case 0x91: /* Need to check */ ++ ar231x_devtype = DEV_TYPE_AR2318; ++ break; + case 0x90: -+ case 0x91: + ar231x_devtype = DEV_TYPE_AR2317; + break; ++ case 0x87: ++ ar231x_devtype = DEV_TYPE_AR2316; ++ break; ++ case 0x86: + default: + ar231x_devtype = DEV_TYPE_AR2315; + break; @@ -2781,7 +2787,7 @@ +#endif /* __ASM_MACH_AR231X_H */ --- /dev/null +++ b/arch/mips/ar231x/devices.h -@@ -0,0 +1,38 @@ +@@ -0,0 +1,39 @@ +#ifndef __AR231X_DEVICES_H +#define __AR231X_DEVICES_H + @@ -2795,6 +2801,7 @@ + DEV_TYPE_AR2315, + DEV_TYPE_AR2316, + DEV_TYPE_AR2317, ++ DEV_TYPE_AR2318, + + DEV_TYPE_UNKNOWN +}; @@ -2822,7 +2829,7 @@ +#endif --- /dev/null +++ b/arch/mips/ar231x/devices.c -@@ -0,0 +1,180 @@ +@@ -0,0 +1,181 @@ +#include +#include +#include @@ -2931,6 +2938,7 @@ + [DEV_TYPE_AR2315] = "Atheros AR2315", + [DEV_TYPE_AR2316] = "Atheros AR2316", + [DEV_TYPE_AR2317] = "Atheros AR2317", ++ [DEV_TYPE_AR2318] = "Atheros AR2318", + [DEV_TYPE_UNKNOWN] = "Atheros (unknown)", +}; + diff --git a/target/linux/atheros/patches-3.14/105-ar2315_pci.patch b/target/linux/atheros/patches-3.14/105-ar2315_pci.patch index 18529c8767..2b7f5ed70e 100644 --- a/target/linux/atheros/patches-3.14/105-ar2315_pci.patch +++ b/target/linux/atheros/patches-3.14/105-ar2315_pci.patch @@ -382,7 +382,7 @@ else if (pending & CAUSEF_IP2) do_IRQ(AR2315_IRQ_MISC_INTRS); else if (pending & CAUSEF_IP7) -@@ -554,3 +558,18 @@ ar2315_plat_setup(void) +@@ -560,3 +564,18 @@ ar2315_plat_setup(void) ar231x_serial_setup(AR2315_UART0, AR2315_MISC_IRQ_UART0, ar2315_apb_frequency()); }