aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWenli Looi <wlooi@ucalgary.ca>2021-06-15 02:21:01 -0700
committerHauke Mehrtens <hauke@hauke-m.de>2022-02-07 00:03:27 +0100
commit6ede645282f94c32a33a2c6858375b8c2f609922 (patch)
treedc9ffc5e2e9417ff706fea9b9eae0857f28ee3c0
parent43ec6d64bb368253f159ec9e6d8343fdbb0d97e4 (diff)
downloadupstream-6ede645282f94c32a33a2c6858375b8c2f609922.tar.gz
upstream-6ede645282f94c32a33a2c6858375b8c2f609922.tar.bz2
upstream-6ede645282f94c32a33a2c6858375b8c2f609922.zip
ath79: add support for booting QCN5502 SoC
Based on wikidevi, QCN5502 is a "Dragonfly" like QCA9561 and QCA9563. Treating it as QCA956x seems to work. Signed-off-by: Wenli Looi <wlooi@ucalgary.ca>
-rw-r--r--target/linux/ath79/patches-5.10/940-ath79-add-support-for-booting-QCN550x.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/target/linux/ath79/patches-5.10/940-ath79-add-support-for-booting-QCN550x.patch b/target/linux/ath79/patches-5.10/940-ath79-add-support-for-booting-QCN550x.patch
new file mode 100644
index 0000000000..cf77433634
--- /dev/null
+++ b/target/linux/ath79/patches-5.10/940-ath79-add-support-for-booting-QCN550x.patch
@@ -0,0 +1,48 @@
+From: Wenli Looi <wlooi@ucalgary.ca>
+Date: Sun, 20 Jun 2021 23:32:28 -0700
+Subject: [PATCH] ath79: add support for booting QCN550x
+
+Based on wikidevi, QCN550x is a "Dragonfly" like QCA9561 and QCA9563.
+Treating it as QCA956x seems to work.
+Tested on Netgear EX7300v2 which boots successfully with
+the same CPU clock as the stock firmware.
+
+Link: https://wikidevi.wi-cat.ru/Qualcomm#bgn
+Link: https://wikidevi.wi-cat.ru/Qualcomm_Atheros#.28a.29bgn_2
+Signed-off-by: Wenli Looi <wlooi@ucalgary.ca>
+
+--- a/arch/mips/ath79/early_printk.c
++++ b/arch/mips/ath79/early_printk.c
+@@ -121,6 +121,7 @@ static void prom_putchar_init(void)
+ case REV_ID_MAJOR_QCA9558:
+ case REV_ID_MAJOR_TP9343:
+ case REV_ID_MAJOR_QCA956X:
++ case REV_ID_MAJOR_QCN550X:
+ _prom_putchar = prom_putchar_ar71xx;
+ break;
+
+--- a/arch/mips/ath79/setup.c
++++ b/arch/mips/ath79/setup.c
+@@ -168,6 +168,12 @@ static void __init ath79_detect_sys_type
+ rev = id & QCA956X_REV_ID_REVISION_MASK;
+ break;
+
++ case REV_ID_MAJOR_QCN550X:
++ ath79_soc = ATH79_SOC_QCA956X;
++ chip = "550X";
++ rev = id & QCA956X_REV_ID_REVISION_MASK;
++ break;
++
+ case REV_ID_MAJOR_TP9343:
+ ath79_soc = ATH79_SOC_TP9343;
+ chip = "9343";
+--- a/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
++++ b/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
+@@ -867,6 +867,7 @@
+ #define REV_ID_MAJOR_QCA9558 0x1130
+ #define REV_ID_MAJOR_TP9343 0x0150
+ #define REV_ID_MAJOR_QCA956X 0x1150
++#define REV_ID_MAJOR_QCN550X 0x2170
+
+ #define AR71XX_REV_ID_MINOR_MASK 0x3
+ #define AR71XX_REV_ID_MINOR_AR7130 0x0