From 413736e5f8d313e77ede599591fc89ef7ec3cbf4 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Fri, 12 Sep 2014 06:53:43 +0000 Subject: [PATCH] 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 --- .../linux/atheros/patches-3.14/100-board.patch | 16 ++++++++++++---- .../atheros/patches-3.14/105-ar2315_pci.patch | 2 +- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/target/linux/atheros/patches-3.14/100-board.patch b/target/linux/atheros/patches-3.14/100-board.patch index 4cc0246e8555..efbc241a172e 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 18529c876771..2b7f5ed70e27 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()); } -- 2.30.2