mirror of
				https://github.com/Telecominfraproject/wlan-ap.git
				synced 2025-10-31 18:38:10 +00:00 
			
		
		
		
	Compare commits
	
		
			9 Commits
		
	
	
		
			next
			...
			nwa50be-de
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | 757f7155a3 | ||
|   | 9b0bc0dbc0 | ||
|   | 66e5b21eba | ||
|   | 8e0b1a3237 | ||
|   | 0f114096a1 | ||
|   | 684126a3c8 | ||
|   | 7d6e04cc76 | ||
|   | 443fc3f4a2 | ||
|   | a696679b50 | 
							
								
								
									
										2
									
								
								.github/workflows/build-dev.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/build-dev.yml
									
									
									
									
										vendored
									
									
								
							| @@ -21,7 +21,7 @@ jobs: | |||||||
|     strategy: |     strategy: | ||||||
|       fail-fast: false |       fail-fast: false | ||||||
|       matrix: |       matrix: | ||||||
|         target: [ 'cig_wf189h', 'cig_wf189w', 'cig_wf660a', 'cig_wf672', 'cig_wf186h', 'cig_wf186w', 'cig_wf188n', 'cig_wf189', 'cig_wf196', 'cig_wf196', 'cybertan_eww631-a1', 'cybertan_eww631-b1', 'sonicfi_rap630w-312g', 'sonicfi_rap63xc-211g', 'sonicfi_rap630c-311g', 'sonicfi_rap630w-311g', 'sonicfi_rap630w-211g', 'sonicfi_rap650c', 'sonicfi_rap7110c-341x', 'sonicfi_rap750e-h', 'sonicfi_rap750e-s', 'sonicfi_rap750w-311a', 'edgecore_eap101', 'edgecore_eap102', 'edgecore_eap104', 'edgecore_eap105', 'edgecore_eap111', 'edgecore_eap112', 'edgecore_oap101', 'edgecore_oap101-6e', 'edgecore_oap101e', 'edgecore_oap101e-6e', 'edgecore_oap103', 'hfcl_ion4xe', 'hfcl_ion4xi', 'hfcl_ion4x', 'hfcl_ion4x_2', 'hfcl_ion4x_3', 'hfcl_ion4xi_w', 'hfcl_ion4x_w', 'indio_um-305ax', 'senao_iap4300m', 'senao_iap2300m', 'senao_jeap6500', 'udaya_a6-id2', 'udaya_a6-od2', 'yuncore_ax820', 'yuncore_ax840', 'yuncore_fap640', 'yuncore_fap650', 'yuncore_fap655', 'emplus_wap588m', 'zyxel_nwa130be', 'sercomm_ap72tip-v4' ] |         target: [ 'cig_wf189h', 'cig_wf189w', 'cig_wf660a', 'cig_wf672', 'cig_wf186h', 'cig_wf186w', 'cig_wf188n', 'cig_wf189', 'cig_wf196', 'cig_wf196', 'cybertan_eww631-a1', 'cybertan_eww631-b1', 'sonicfi_rap630w-312g', 'sonicfi_rap63xc-211g', 'sonicfi_rap630c-311g', 'sonicfi_rap630w-311g', 'sonicfi_rap630w-211g', 'sonicfi_rap650c', 'sonicfi_rap7110c-341x', 'sonicfi_rap750e-h', 'sonicfi_rap750e-s', 'sonicfi_rap750w-311a', 'edgecore_eap101', 'edgecore_eap102', 'edgecore_eap104', 'edgecore_eap105', 'edgecore_eap111', 'edgecore_eap112', 'edgecore_oap101', 'edgecore_oap101-6e', 'edgecore_oap101e', 'edgecore_oap101e-6e', 'edgecore_oap103', 'hfcl_ion4xe', 'hfcl_ion4xi', 'hfcl_ion4x', 'hfcl_ion4x_2', 'hfcl_ion4x_3', 'hfcl_ion4xi_w', 'hfcl_ion4x_w', 'indio_um-305ax', 'senao_iap4300m', 'senao_iap2300m', 'senao_jeap6500', 'udaya_a6-id2', 'udaya_a6-od2', 'yuncore_ax820', 'yuncore_ax840', 'yuncore_fap640', 'yuncore_fap650', 'yuncore_fap655', 'emplus_wap588m', 'zyxel_nwa130be', 'zyxel_nwa50be', 'sercomm_ap72tip-v4' ] | ||||||
|     steps: |     steps: | ||||||
|     - uses: actions/checkout@v3 |     - uses: actions/checkout@v3 | ||||||
|  |  | ||||||
|   | |||||||
| @@ -88,6 +88,11 @@ $(call Package/ath12k-wifi-default) | |||||||
|     TITLE:=board-2.bin for NWA130BE |     TITLE:=board-2.bin for NWA130BE | ||||||
| endef | endef | ||||||
|  |  | ||||||
|  | define Package/ath12k-wifi-zyxel-nwa50be | ||||||
|  | $(call Package/ath12k-wifi-default) | ||||||
|  |     TITLE:=board-2.bin for NWA50BE | ||||||
|  | endef | ||||||
|  |  | ||||||
| define Package/ath12k-wifi-cig-wf672 | define Package/ath12k-wifi-cig-wf672 | ||||||
| $(call Package/ath12k-wifi-default) | $(call Package/ath12k-wifi-default) | ||||||
|     TITLE:=board-2.bin for WF672 |     TITLE:=board-2.bin for WF672 | ||||||
| @@ -179,6 +184,13 @@ define Package/ath12k-wifi-zyxel-nwa130be/install | |||||||
| 	$(INSTALL_DATA) ./board-2.bin.nwa130be.IPQ5332 $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/board-2.bin | 	$(INSTALL_DATA) ./board-2.bin.nwa130be.IPQ5332 $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/board-2.bin | ||||||
| endef | endef | ||||||
|  |  | ||||||
|  | define Package/ath12k-wifi-zyxel-nwa50be/install | ||||||
|  | 	$(INSTALL_DIR) $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/ | ||||||
|  | 	$(INSTALL_DIR) $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/ | ||||||
|  | 	$(INSTALL_DATA) ./board-2.bin.nwa130be.QCN92XX $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/board-2.bin | ||||||
|  | 	$(INSTALL_DATA) ./board-2.bin.nwa130be.IPQ5332 $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/board-2.bin | ||||||
|  | endef | ||||||
|  |  | ||||||
| define Package/ath12k-wifi-cig-wf672/install | define Package/ath12k-wifi-cig-wf672/install | ||||||
| 	$(INSTALL_DIR) $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/ | 	$(INSTALL_DIR) $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/ | ||||||
| 	$(INSTALL_DIR) $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/ | 	$(INSTALL_DIR) $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/ | ||||||
| @@ -197,4 +209,5 @@ $(eval $(call BuildPackage,ath12k-wifi-cig-wf189h)) | |||||||
| $(eval $(call BuildPackage,ath12k-wifi-sercomm-ap72tip)) | $(eval $(call BuildPackage,ath12k-wifi-sercomm-ap72tip)) | ||||||
| $(eval $(call BuildPackage,ath12k-wifi-sercomm-ap72tip-v4)) | $(eval $(call BuildPackage,ath12k-wifi-sercomm-ap72tip-v4)) | ||||||
| $(eval $(call BuildPackage,ath12k-wifi-zyxel-nwa130be)) | $(eval $(call BuildPackage,ath12k-wifi-zyxel-nwa130be)) | ||||||
|  | $(eval $(call BuildPackage,ath12k-wifi-zyxel-nwa50be)) | ||||||
| $(eval $(call BuildPackage,ath12k-wifi-cig-wf672)) | $(eval $(call BuildPackage,ath12k-wifi-cig-wf672)) | ||||||
|   | |||||||
| @@ -35,7 +35,8 @@ ipq53xx_setup_interfaces() | |||||||
| 	sercomm,ap72tip-v4) | 	sercomm,ap72tip-v4) | ||||||
| 		ucidef_set_interface_wan "eth0" | 		ucidef_set_interface_wan "eth0" | ||||||
| 		;;	 | 		;;	 | ||||||
| 	zyxel,nwa130be) | 	zyxel,nwa130be|\ | ||||||
|  | 	zyxel,nwa50be) | ||||||
| 		ucidef_set_interfaces_lan_wan "eth1" "eth0" | 		ucidef_set_interfaces_lan_wan "eth1" "eth0" | ||||||
| 		;; | 		;; | ||||||
| 	esac | 	esac | ||||||
| @@ -123,6 +124,18 @@ qcom_setup_macs() | |||||||
| 		ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) | 		ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) | ||||||
| 		ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4) | 		ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4) | ||||||
| 		;; | 		;; | ||||||
|  | 	zyxel,nwa50be) | ||||||
|  | 		wan_mac=$(cat /proc/cmdline) | ||||||
|  | 		wan_mac="${wan_mac##*hwaddr=}" | ||||||
|  | 		wan_mac="${wan_mac%% *}" | ||||||
|  | 		wan_mac="$(echo ${wan_mac} | sed 's/\(..\)/\1:/g;s/:$//')" | ||||||
|  | 		lan_mac=$(macaddr_add "$wan_mac" 1) | ||||||
|  | 		ucidef_set_network_device_mac eth0 $wan_mac | ||||||
|  | 		ucidef_set_network_device_mac eth1 $lan_mac | ||||||
|  | 		ucidef_set_label_macaddr $wan_mac | ||||||
|  | 		ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2) | ||||||
|  | 		ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3) | ||||||
|  | 		;; | ||||||
|         *) |         *) | ||||||
|                 wan_mac=$(cat /sys/class/net/eth1/address) |                 wan_mac=$(cat /sys/class/net/eth1/address) | ||||||
|                 lan_mac=$(macaddr_add "$wan_mac" 1) |                 lan_mac=$(macaddr_add "$wan_mac" 1) | ||||||
|   | |||||||
| @@ -66,7 +66,8 @@ ath12k/IPQ5332/hw1.0/caldata.bin) | |||||||
| 	edgecore,eap105|\ | 	edgecore,eap105|\ | ||||||
| 	sercomm,ap72tip-v4|\ | 	sercomm,ap72tip-v4|\ | ||||||
| 	sercomm,ap72tip|\ | 	sercomm,ap72tip|\ | ||||||
| 	zyxel,nwa130be) | 	zyxel,nwa130be|\ | ||||||
|  | 	zyxel,nwa50be) | ||||||
| 		caldata_extract "0:ART" 0x1000 0x20000  | 		caldata_extract "0:ART" 0x1000 0x20000  | ||||||
| 		;; | 		;; | ||||||
| 	cig,wf672) | 	cig,wf672) | ||||||
| @@ -88,7 +89,8 @@ ath12k/QCN92XX/hw1.0/cal-pci-0001:01:00.0.bin) | |||||||
| 	edgecore,eap105|\ | 	edgecore,eap105|\ | ||||||
| 	sercomm,ap72tip-v4|\ | 	sercomm,ap72tip-v4|\ | ||||||
| 	sercomm,ap72tip|\ | 	sercomm,ap72tip|\ | ||||||
| 	zyxel,nwa130be) | 	zyxel,nwa130be|\ | ||||||
|  | 	zyxel,nwa50be) | ||||||
| 		caldata_extract "0:ART" 0x58800 0x2d000 | 		caldata_extract "0:ART" 0x58800 0x2d000 | ||||||
| 		;; | 		;; | ||||||
| 	cig,wf672) | 	cig,wf672) | ||||||
|   | |||||||
| @@ -9,7 +9,8 @@ boot() { | |||||||
| 	edgecore,eap105) | 	edgecore,eap105) | ||||||
| 		ssdk_sh debug phy set 0x1 0x601FD032 0xff | 		ssdk_sh debug phy set 0x1 0x601FD032 0xff | ||||||
| 		;; | 		;; | ||||||
| 	zyxel,nwa130be) | 	zyxel,nwa130be|\ | ||||||
|  | 	zyxel,nwa50be) | ||||||
| 		#eth0: APPE: phyaddr 4  green:2.5G  orange:others | 		#eth0: APPE: phyaddr 4  green:2.5G  orange:others | ||||||
| 		ssdk_sh debug phy set 4 0x40078074 0x670 | 		ssdk_sh debug phy set 4 0x40078074 0x670 | ||||||
| 		ssdk_sh debug phy set 4 0x40078078 0x8600 | 		ssdk_sh debug phy set 4 0x40078078 0x8600 | ||||||
|   | |||||||
| @@ -173,7 +173,8 @@ platform_do_upgrade() { | |||||||
| 		sonicfi_dualimage_check | 		sonicfi_dualimage_check | ||||||
| 		nand_upgrade_tar "$1" | 		nand_upgrade_tar "$1" | ||||||
| 		;; | 		;; | ||||||
| 	zyxel,nwa130be) | 	zyxel,nwa130be|\ | ||||||
|  | 	zyxel,nwa50be) | ||||||
| 		nand_upgrade_tar "$1" | 		nand_upgrade_tar "$1" | ||||||
| 		;; | 		;; | ||||||
| 	esac | 	esac | ||||||
|   | |||||||
							
								
								
									
										893
									
								
								feeds/qca-wifi-7/ipq53xx/dts/ipq5332-zyxel-nwa50be.dts
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										893
									
								
								feeds/qca-wifi-7/ipq53xx/dts/ipq5332-zyxel-nwa50be.dts
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,893 @@ | |||||||
|  | // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) | ||||||
|  | /* | ||||||
|  |  * IPQ5332 RDP442 board device tree source | ||||||
|  |  * | ||||||
|  |  * Copyright (c) 2020-2021 The Linux Foundation. All rights reserved. | ||||||
|  |  * Copyright (c) 2022-2024 Qualcomm Innovation Center, Inc. All rights reserved. | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | /dts-v1/; | ||||||
|  |  | ||||||
|  | #include "ipq5332.dtsi" | ||||||
|  | #include <dt-bindings/gpio/gpio.h> | ||||||
|  | #include <dt-bindings/input/input.h> | ||||||
|  | #include <dt-bindings/leds/common.h> | ||||||
|  | #include "ipq5332-default-memory.dtsi" | ||||||
|  |  | ||||||
|  |  | ||||||
|  | / { | ||||||
|  | 	model = "Qualcomm Technologies, Inc. IPQ5332/RDP442/AP-MI01.3"; | ||||||
|  | 	compatible = "zyxel,nwa50be", "qcom,ipq5332-ap-mi01.3", "qcom,ipq5332-rdp442", "qcom,ipq5332"; | ||||||
|  |  | ||||||
|  | #ifdef __IPQ_MEM_PROFILE_512_MB__ | ||||||
|  |  | ||||||
|  | 	/*     512M  Layout for IPQ5332 + QCN6432 + QCN6432 | ||||||
|  | 	 * +==========+==============+========================+ | ||||||
|  | 	 * |         |              |                         | | ||||||
|  | 	 * |  Region | Start Offset |          Size           | | ||||||
|  | 	 * |         |              |                         | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |   Q6    |              |                         | | ||||||
|  | 	 * |  code/  |  0x4A900000  |          25MB           | | ||||||
|  | 	 * |  data   |              |                         | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * | IPQ5332 |              |                         | | ||||||
|  | 	 * |  data   |  0x4C200000  |          17MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * | IPQ5332 |              |                         | | ||||||
|  | 	 * | M3 Dump |  0x4D300000  |           1MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * | IPQ5332 |              |                         | | ||||||
|  | 	 * |  QDSS   |  0x4D400000  |           1MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * | IPQ5332 |              |                         | | ||||||
|  | 	 * |  CALDB  |  0x4D500000  |           3MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |QCN6432_1|              |                         | | ||||||
|  | 	 * |  data   |  0x4D800000  |          16MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |QCN6432_1|              |                         | | ||||||
|  | 	 * | M3 Dump |  0x4E800000  |           1MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |QCN6432_1|              |                         | | ||||||
|  | 	 * |  QDSS   |  0x4E900000  |           1MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |QCN6432_1|              |                         | | ||||||
|  | 	 * |  CALDB  |  0x4EA00000  |           5MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |QCN6432_2|              |                         | | ||||||
|  | 	 * |  data   |  0x4EF00000  |          16MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |QCN6432_2|              |                         | | ||||||
|  | 	 * | M3 Dump |  0x4FF00000  |           1MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |QCN6432_2|              |                         | | ||||||
|  | 	 * |  QDSS   |  0x50000000  |           1MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |QCN6432_2|              |                         | | ||||||
|  | 	 * |  CALDB  |  0x50100000  |           5MB           | | ||||||
|  | 	 * +---------+--------------+-------------------------+ | ||||||
|  | 	 * |         |              |                         | | ||||||
|  | 	 * |   MLO   |  0x50600000  |          12MB           | | ||||||
|  | 	 * +==================================================+ | ||||||
|  | 	 * |                                                  | | ||||||
|  | 	 * |                                                  | | ||||||
|  | 	 * |                                                  | | ||||||
|  | 	 * |             Rest of memory for Linux             | | ||||||
|  | 	 * |                                                  | | ||||||
|  | 	 * |                                                  | | ||||||
|  | 	 * |                                                  | | ||||||
|  | 	 * +==================================================+ | ||||||
|  | 	 */ | ||||||
|  |  | ||||||
|  | 	reserved-memory { | ||||||
|  |  | ||||||
|  | 		/delete-node/ m3_dump@4cc00000; | ||||||
|  | 		/delete-node/ q6_etr_dump@1; | ||||||
|  | 		/delete-node/ mlo_global_mem_0@0x4db00000; | ||||||
|  | 		/delete-node/ wcnss@4a900000; | ||||||
|  | 		/delete-node/ q6_caldb_region@4ce00000; | ||||||
|  |  | ||||||
|  | 		q6_mem_regions: q6_mem_regions@4A900000  { | ||||||
|  | 			reg = <0x0 0x4a900000 0x0 0x5D00000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_code_data: q6_code_data@4A900000 { | ||||||
|  | 			reg = <0x0 0x4a900000 0x0 0x1900000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_ipq5332_data: q6_ipq5332_data@4C200000 { | ||||||
|  | 			reg = <0x0 0x4C200000 0x0 0x1100000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		m3_dump: m3_dump@4D300000 { | ||||||
|  | 			reg = <0x0 0x4D300000 0x0 0x100000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_etr_region: q6_etr_dump@4D400000 { | ||||||
|  | 			reg = <0x0 0x4D400000 0x0 0x100000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_ipq5332_caldb: q6_ipq5332_caldb@4D500000 { | ||||||
|  | 			reg = <0x0 0x4D500000 0x0 0x300000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_data_1: q6_qcn6432_data_1@4D800000 { | ||||||
|  | 			reg = <0x0 0x4D800000 0x0 0x1000000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		m3_dump_qcn6432_1: m3_dump_qcn6432_1@4E800000 { | ||||||
|  | 			reg = <0x0 0x4E800000 0x0 0x100000>; | ||||||
|  | 			no-map; | ||||||
|  |                 }; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_etr_1: q6_qcn6432_etr_1@4E900000 { | ||||||
|  | 			reg = <0x0 0x4E900000 0x0 0x100000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_caldb_1: q6_qcn6432_caldb_1@4EA00000 { | ||||||
|  | 			reg = <0x0 0x4EA00000 0x0 0x500000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_data_2: q6_qcn6432_data_2@4EF00000 { | ||||||
|  | 			reg = <0x0 0x4EF00000 0x0 0x1000000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		m3_dump_qcn6432_2: m3_dump_qcn6432_2@4FF00000 { | ||||||
|  | 			reg = <0x0 0x4FF00000 0x0 0x100000>; | ||||||
|  | 			no-map; | ||||||
|  |                 }; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_etr_2: q6_qcn6432_etr_2@50000000 { | ||||||
|  | 			reg = <0x0 0x50000000 0x0 0x100000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_caldb_2: q6_qcn6432_caldb_2@50100000 { | ||||||
|  | 			reg = <0x0 0x50100000 0x0 0x500000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		mlo_global_mem0: mlo_global_mem_0@50600000 { | ||||||
|  | 			reg = <0x0 0x50600000 0x0 0xC00000>; | ||||||
|  | 			no-map; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | #else | ||||||
|  |  | ||||||
|  | 	/*  1G  Layout for IPQ5332 + QCN6432 + QCN6432 | ||||||
|  | 	* +==========+==============+========================+ | ||||||
|  | 	* |         |              |                         | | ||||||
|  | 	* |  Region | Start Offset |          Size           | | ||||||
|  | 	* |         |              |                         | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |   Q6    |              |                         | | ||||||
|  | 	* |  code/  |  0x4A900000  |          25MB           | | ||||||
|  | 	* |  data   |              |                         | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* | IPQ5332 |              |                         | | ||||||
|  | 	* |  data   |  0x4C200000  |          21MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* | IPQ5332 |              |                         | | ||||||
|  | 	* | M3 Dump |  0x4D700000  |           1MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* | IPQ5332 |              |                         | | ||||||
|  | 	* |  QDSS   |  0x4D800000  |           1MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* | IPQ5332 |              |                         | | ||||||
|  | 	* |  CALDB  |  0x4D900000  |           5MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |QCN6432_1|              |                         | | ||||||
|  | 	* |  data   |  0x4DE00000  |          21MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |QCN6432_1|              |                         | | ||||||
|  | 	* | M3 Dump |  0x4F300000  |           1MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |QCN6432_1|              |                         | | ||||||
|  | 	* |  QDSS   |  0x4F400000  |           1MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |QCN6432_1|              |                         | | ||||||
|  | 	* |  CALDB  |  0x4F500000  |           5MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |QCN6432_2|              |                         | | ||||||
|  | 	* |  data   |  0x4FA00000  |          21MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |QCN6432_2|              |                         | | ||||||
|  | 	* | M3 Dump |  0x50F00000  |           1MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |QCN6432_2|              |                         | | ||||||
|  | 	* |  QDSS   |  0x51000000  |           1MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |QCN6432_2|              |                         | | ||||||
|  | 	* |  CALDB  |  0x51100000  |           5MB           | | ||||||
|  | 	* +---------+--------------+-------------------------+ | ||||||
|  | 	* |         |              |                         | | ||||||
|  | 	* |   MLO   |  0x51600000  |          12MB           | | ||||||
|  | 	* +==================================================+ | ||||||
|  | 	* |                                                  | | ||||||
|  | 	* |                                                  | | ||||||
|  | 	* |                                                  | | ||||||
|  | 	* |             Rest of memory for Linux             | | ||||||
|  | 	* |                                                  | | ||||||
|  | 	* |                                                  | | ||||||
|  | 	* |                                                  | | ||||||
|  | 	* +==================================================+ | ||||||
|  | 	*/ | ||||||
|  | 	reserved-memory { | ||||||
|  |  | ||||||
|  | 		/delete-node/ m3_dump@4cc00000; | ||||||
|  | 		/delete-node/ q6_etr_dump@1; | ||||||
|  | 		/delete-node/ mlo_global_mem_0@0x4db00000; | ||||||
|  | 		/delete-node/ wcnss@4a900000; | ||||||
|  | 		/delete-node/ q6_caldb_region@4ce00000; | ||||||
|  |  | ||||||
|  | 		q6_mem_regions: q6_mem_regions@4A900000  { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4a900000 0x0 0x6D00000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_code_data: q6_code_data@4A900000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4a900000 0x0 0x1900000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_ipq5332_data: q6_ipq5332_data@4C200000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4C200000 0x0 0x1500000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		m3_dump: m3_dump@4D700000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4D700000 0x0 0x100000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_etr_region: q6_etr_dump@4D800000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4D800000 0x0 0x100000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_ipq5332_caldb: q6_ipq5332_caldb@4D900000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4D900000 0x0 0x500000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_data_1: q6_qcn6432_data_1@4DE00000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4DE00000 0x0 0x1500000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		m3_dump_qcn6432_1: m3_dump_qcn6432_1@4F300000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4F300000 0x0 0x100000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_etr_1: q6_qcn6432_etr_1@4F400000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4F400000 0x0 0x100000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_caldb_1: q6_qcn6432_caldb_1@4F500000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4F500000 0x0 0x500000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_data_2: q6_qcn6432_data_2@4FA00000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x4FA00000 0x0 0x1500000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		m3_dump_qcn6432_2: m3_dump_qcn6432_2@50F00000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x50F00000 0x0 0x100000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_etr_2: q6_qcn6432_etr_2@51000000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x51000000 0x0 0x100000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6_qcn6432_caldb_2: q6_qcn6432_caldb_2@51100000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x51100000 0x0 0x500000>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		mlo_global_mem0: mlo_global_mem_0@51600000 { | ||||||
|  | 			no-map; | ||||||
|  | 			reg = <0x0 0x51600000 0x0 0xC00000>; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | #endif | ||||||
|  |  | ||||||
|  | 	aliases { | ||||||
|  | 		serial0 = &blsp1_uart0; | ||||||
|  | 		serial1 = &blsp1_uart1; | ||||||
|  | 		ethernet0 = "/soc/dp1"; | ||||||
|  | 		ethernet1 = "/soc/dp2"; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	chosen { | ||||||
|  | 		stdout-path = "serial0"; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	soc@0 { | ||||||
|  | 		mdio:mdio@90000 { | ||||||
|  | 			pinctrl-0 = <&mdio1_pins>; | ||||||
|  | 			pinctrl-names = "default"; | ||||||
|  | 			/*gpio22 is for wan napa, gpio51 for lan napa*/ | ||||||
|  | 			phy-reset-gpio = <&tlmm 51 GPIO_ACTIVE_LOW>; | ||||||
|  | 			status = "okay"; | ||||||
|  |  | ||||||
|  | 			phy2: ethernet-phy@2 { | ||||||
|  | 				reg = <28>; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		leds { | ||||||
|  | 			compatible = "gpio-leds"; | ||||||
|  | 			pinctrl-0 = <&led_pins>; | ||||||
|  | 			pinctrl-names = "default"; | ||||||
|  | 			led_blue{ | ||||||
|  | 				label = "led_blue"; | ||||||
|  | 				gpio = <&tlmm 22 GPIO_ACTIVE_HIGH>; | ||||||
|  | 				linux,default-trigger = "led_blue"; | ||||||
|  | 				default-state = "off"; | ||||||
|  | 			}; | ||||||
|  | 			led_green { | ||||||
|  | 				label = "led_green"; | ||||||
|  | 				gpio = <&tlmm 45 GPIO_ACTIVE_HIGH>; | ||||||
|  | 				linux,default-trigger = "led_green"; | ||||||
|  | 				default-state = "on"; | ||||||
|  | 			}; | ||||||
|  | 			led_white { | ||||||
|  | 				label = "led_white"; | ||||||
|  | 				gpio = <&tlmm 43 GPIO_ACTIVE_HIGH>; | ||||||
|  | 				linux,default-trigger = "led_white"; | ||||||
|  | 				default-state = "off"; | ||||||
|  | 			}; | ||||||
|  | 			led_red { | ||||||
|  | 				label = "led_red"; | ||||||
|  | 				gpio = <&tlmm 44 GPIO_ACTIVE_HIGH>; | ||||||
|  | 				linux,default-trigger = "led_red"; | ||||||
|  | 				default-state = "off"; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		gpio_keys { | ||||||
|  | 			compatible = "gpio-keys"; | ||||||
|  | 			pinctrl-0 = <&button_pins>; | ||||||
|  | 			pinctrl-names = "default"; | ||||||
|  | 			status = "okay"; | ||||||
|  |  | ||||||
|  | 			button@1 { | ||||||
|  | 				label = "reset"; | ||||||
|  | 				linux,code = <KEY_RESTART>; | ||||||
|  | 				gpios = <&tlmm 29 GPIO_ACTIVE_LOW>; | ||||||
|  | 				linux,input-type = <1>; | ||||||
|  | 				debounce-interval = <60>; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		ess-instance { | ||||||
|  | 			ess-switch@3a000000 { | ||||||
|  | 				switch_cpu_bmp = <0x1>;  /* cpu port bitmap */ | ||||||
|  | 				switch_lan_bmp = <0x4>; /* lan port bitmap */ | ||||||
|  | 				switch_wan_bmp = <0x0>; /* wan port bitmap */ | ||||||
|  | 				switch_mac_mode = <0xf>; /* mac mode for uniphy instance0*/ | ||||||
|  | 				switch_mac_mode1 = <0xff>; /* mac mode for uniphy instance1*/ | ||||||
|  | 				switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/ | ||||||
|  | 				qcom,port_phyinfo { | ||||||
|  | 					port@0 { | ||||||
|  | 						port_id = <2>; | ||||||
|  | 						phy_address = <28>; | ||||||
|  | 					}; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		dp1 { | ||||||
|  | 			device_type = "network"; | ||||||
|  | 			compatible = "qcom,nss-dp"; | ||||||
|  | 			qcom,id = <2>; | ||||||
|  | 			reg = <0x3a504000 0x4000>; | ||||||
|  | 			qcom,mactype = <1>; | ||||||
|  | 			local-mac-address = [000000000000]; | ||||||
|  | 			mdio-bus = <&mdio>; | ||||||
|  | 			qcom,phy-mdio-addr = <28>; | ||||||
|  | 			qcom,link-poll = <1>; | ||||||
|  | 			phy-mode = "sgmii"; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		nss-macsec0 { | ||||||
|  | 			compatible = "qcom,nss-macsec"; | ||||||
|  | 			phy_addr = <28>; | ||||||
|  | 			mdiobus = <&mdio>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		/* EDMA host driver configuration for the board */ | ||||||
|  | 		edma@3ab00000 { | ||||||
|  | 			qcom,txdesc-ring-start = <4>;		/* Tx desc ring start ID */ | ||||||
|  | 			qcom,txdesc-rings = <12>;		/* Total number of Tx desc rings to be provisioned */ | ||||||
|  | 			qcom,mht-txdesc-rings = <8>;            /* Extra Tx desc rings to be provisioned for MHT SW ports */ | ||||||
|  | 			qcom,txcmpl-ring-start = <4>;		/* Tx complete ring start ID */ | ||||||
|  | 			qcom,txcmpl-rings = <12>;		/* Total number of Tx complete rings to be provisioned */ | ||||||
|  | 			qcom,mht-txcmpl-rings = <8>;            /* Extra Tx complete rings to be provisioned for mht sw ports. */ | ||||||
|  | 			qcom,rxfill-ring-start = <4>;		/* Rx fill ring start ID */ | ||||||
|  | 			qcom,rxfill-rings = <4>;		/* Total number of Rx fill rings to be provisioned */ | ||||||
|  | 			qcom,rxdesc-ring-start = <12>;		/* Rx desc ring start ID */ | ||||||
|  | 			qcom,rxdesc-rings = <4>;		/* Total number of Rx desc rings to be provisioned */ | ||||||
|  | 			qcom,rx-page-mode = <0>;		/* Rx fill ring page mode */ | ||||||
|  | 			qcom,tx-map-priority-level = <1>;	/* Tx priority level per port */ | ||||||
|  | 			qcom,rx-map-priority-level = <1>;	/* Rx priority level per core */ | ||||||
|  | 			qcom,ppeds-num = <2>;			/* Number of PPEDS nodes */ | ||||||
|  | 			/* PPE-DS node format: <Rx-fill Tx-cmpl Rx Tx Queue-base Queue-count> */ | ||||||
|  | 			qcom,ppeds-map = <1 1 1 1 32 8>,	/* PPEDS Node#0 ring and queue map */ | ||||||
|  | 					<2 2 2 2 40 8>;		/* PPEDS Node#1 ring and queue map */ | ||||||
|  | 			qcom,txdesc-map = <8 9 10 11>,		/* Port0 per-core Tx ring map */ | ||||||
|  | 					<12 13 14 15>,        /* MHT-Port1 per-core Tx ring map */ | ||||||
|  | 					<4 5 6 7>,            /* MHT-Port2 per-core Tx ring map/packets from  vp*/ | ||||||
|  | 					<16 17 18 19>,        /* MHT-Port3 per-core Tx ring map */ | ||||||
|  | 					<20 21 22 23>;        /* MHT-Port4 per-core Tx ring map */ | ||||||
|  | 			qcom,txdesc-fc-grp-map = <1 2 3 4 5>;   /* Per GMAC flow control group map */ | ||||||
|  | 			qcom,rxfill-map = <4 5 6 7>;		/* Per-core Rx fill ring map */ | ||||||
|  | 			qcom,rxdesc-map = <12 13 14 15>;	/* Per-core Rx desc ring map */ | ||||||
|  | 			qcom,rx-queue-start = <0>;		/* Rx queue start */ | ||||||
|  | 			qcom,rx-ring-queue-map = <0 8 16 24>,	/* Priority 0 queues per-core Rx ring map */ | ||||||
|  | 						<1 9 17 25>,	/* Priority 1 queues per-core Rx ring map */ | ||||||
|  | 						<2 10 18 26>,	/* Priority 2 queues per-core Rx ring map */ | ||||||
|  | 						<3 11 19 27>,	/* Priority 3 queues per-core Rx ring map */ | ||||||
|  | 						<4 12 20 28>,	/* Priority 4 queues per-core Rx ring map */ | ||||||
|  | 						<5 13 21 29>,	/* Priority 5 queues per-core Rx ring map */ | ||||||
|  | 						<6 14 22 30>,	/* Priority 6 queues per-core Rx ring map */ | ||||||
|  | 						<7 15 23 31>;	/* Priority 7 queues per-core Rx ring map */ | ||||||
|  | 			interrupts = <0 163 4>,			/* Tx complete ring id #4 IRQ info */ | ||||||
|  | 				   <0 164 4>,			/* Tx complete ring id #5 IRQ info */ | ||||||
|  | 				   <0 165 4>,			/* Tx complete ring id #6 IRQ info */ | ||||||
|  | 				   <0 166 4>,			/* Tx complete ring id #7 IRQ info */ | ||||||
|  | 				   <0 167 4>,			/* Tx complete ring id #8 IRQ info */ | ||||||
|  | 				   <0 168 4>,			/* Tx complete ring id #9 IRQ info */ | ||||||
|  | 				   <0 169 4>,			/* Tx complete ring id #10 IRQ info */ | ||||||
|  | 				   <0 170 4>,			/* Tx complete ring id #11 IRQ info */ | ||||||
|  | 				   <0 171 4>,			/* Tx complete ring id #12 IRQ info */ | ||||||
|  | 				   <0 172 4>,			/* Tx complete ring id #13 IRQ info */ | ||||||
|  | 				   <0 173 4>,			/* Tx complete ring id #14 IRQ info */ | ||||||
|  | 				   <0 174 4>,			/* Tx complete ring id #15 IRQ info */ | ||||||
|  | 				   <0 139 4>,			/* Rx desc ring id #12 IRQ info */ | ||||||
|  | 				   <0 140 4>,			/* Rx desc ring id #13 IRQ info */ | ||||||
|  | 				   <0 141 4>,			/* Rx desc ring id #14 IRQ info */ | ||||||
|  | 				   <0 142 4>,			/* Rx desc ring id #15 IRQ info */ | ||||||
|  | 				   <0 191 4>,			/* Misc error IRQ info */ | ||||||
|  | 				<0 160 4>,			/* PPEDS Node #1(TxComp ring id #1) TxComplete IRQ info */ | ||||||
|  | 				<0 128 4>,			/* PPEDS Node #1(Rx Desc ring id #1) Rx Desc IRQ info */ | ||||||
|  | 				<0 152 4>,			/* PPEDS Node #1(RxFill Desc ring id #1) Rx Fill IRQ info */ | ||||||
|  | 				<0 161 4>,			/* PPEDS Node #2(TxComp ring id #2) TxComplete IRQ info */ | ||||||
|  | 				<0 129 4>,			/* PPEDS Node #2(Rx Desc ring id #2) Rx Desc IRQ info */ | ||||||
|  | 				<0 153 4>,                      /* PPEDS Node #2(RxFill Desc ring id #2) Rx Fill IRQ info */ | ||||||
|  | 				<0 175 4>,                   /* MHT port Tx complete ring id #16 IRQ info */ | ||||||
|  | 				<0 176 4>,                   /* MHT port Tx complete ring id #17 IRQ info */ | ||||||
|  | 				<0 177 4>,                   /* MHT port Tx complete ring id #18 IRQ info */ | ||||||
|  | 				<0 178 4>,                   /* MHT port Tx complete ring id #19 IRQ info */ | ||||||
|  | 				<0 179 4>,                   /* MHT port Tx complete ring id #20 IRQ info */ | ||||||
|  | 				<0 180 4>,                   /* MHT port Tx complete ring id #21 IRQ info */ | ||||||
|  | 				<0 181 4>,                   /* MHT port Tx complete ring id #22 IRQ info */ | ||||||
|  | 				<0 182 4>;                   /* MHT port Tx complete ring id #23 IRQ info */ | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		wsi: wsi { | ||||||
|  | 			id = <0>; | ||||||
|  | 			num_chip = <3>; | ||||||
|  | 			chip_info = <0 2 1 2>, | ||||||
|  | 				    <1 2 2 0>, | ||||||
|  | 				    <2 2 0 1>; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		q6v5_wcss: remoteproc@d100000 { | ||||||
|  | 			boot-args = <0x1 0x4 0x3 0x0 0x26 0x2>, | ||||||
|  | 					<0x1 0x4 0x4 0x1 0x2f 0x2>; | ||||||
|  | 			memory-region = <&q6_mem_regions>; | ||||||
|  |  | ||||||
|  | 			/delete-node/ remoteproc_pd1; | ||||||
|  | 			/delete-node/ remoteproc_pd2; | ||||||
|  | 			/delete-node/ remoteproc_pd3; | ||||||
|  |  | ||||||
|  | 			q6_wcss_pd4: remoteproc_pd4 { | ||||||
|  | 				compatible = "qcom,ipq5332-mpd-upd-text"; | ||||||
|  | 				firmware = "IPQ5332/q6_fw4.mdt"; | ||||||
|  |  | ||||||
|  | 				q6_wcss_pd1: remoteproc_pd1 { | ||||||
|  | 					compatible = "qcom,ipq5332-wcss-ahb-mpd"; | ||||||
|  | 					firmware = "IPQ5332/q6_fw1.mdt"; | ||||||
|  | 					m3_firmware = "IPQ5332/iu_fw.mdt"; | ||||||
|  | 					interrupts-extended = <&wcss_smp2p_in 8 0>, | ||||||
|  | 							<&wcss_smp2p_in 9 0>, | ||||||
|  | 							<&wcss_smp2p_in 12 0>, | ||||||
|  | 							<&wcss_smp2p_in 11 0>; | ||||||
|  | 					interrupt-names = "fatal", | ||||||
|  | 							"ready", | ||||||
|  | 							"spawn-ack", | ||||||
|  | 							"stop-ack"; | ||||||
|  |  | ||||||
|  | 					qcom,smem-states = <&wcss_smp2p_out 8>, | ||||||
|  | 							<&wcss_smp2p_out 9>, | ||||||
|  | 							<&wcss_smp2p_out 10>; | ||||||
|  | 					qcom,smem-state-names = "shutdown", | ||||||
|  | 								"stop", | ||||||
|  | 								"spawn"; | ||||||
|  | 					memory-region = <&q6_ipq5332_data>, | ||||||
|  | 							<&m3_dump>, | ||||||
|  | 							<&q6_etr_region>, | ||||||
|  | 							<&q6_ipq5332_caldb>; | ||||||
|  | 				}; | ||||||
|  |  | ||||||
|  | 				q6_wcss_pd2: remoteproc_pd2 { | ||||||
|  | 					compatible = "qcom,ipq5332-wcss-pcie-mpd"; | ||||||
|  | 					firmware = "IPQ5332/q6_fw2.mdt"; | ||||||
|  | 					m3_firmware = "qcn6432/iu_fw.mdt"; | ||||||
|  | 					interrupts-extended = <&wcss_smp2p_in 16 0>, | ||||||
|  | 							<&wcss_smp2p_in 17 0>, | ||||||
|  | 							<&wcss_smp2p_in 20 0>, | ||||||
|  | 							<&wcss_smp2p_in 19 0>; | ||||||
|  | 					interrupt-names = "fatal", | ||||||
|  | 							"ready", | ||||||
|  | 							"spawn-ack", | ||||||
|  | 							"stop-ack"; | ||||||
|  |  | ||||||
|  | 					qcom,smem-states = <&wcss_smp2p_out 16>, | ||||||
|  | 							<&wcss_smp2p_out 17>, | ||||||
|  | 							<&wcss_smp2p_out 18>; | ||||||
|  | 					qcom,smem-state-names = "shutdown", | ||||||
|  | 								"stop", | ||||||
|  | 								"spawn"; | ||||||
|  | 					memory-region = <&q6_qcn6432_data_1>, | ||||||
|  | 							<&m3_dump_qcn6432_1>, | ||||||
|  | 							<&q6_qcn6432_etr_1>, | ||||||
|  | 							<&q6_qcn6432_caldb_1>; | ||||||
|  | 					status = "ok"; | ||||||
|  | 				}; | ||||||
|  |  | ||||||
|  | 				q6_wcss_pd3: remoteproc_pd3 { | ||||||
|  | 					compatible = "qcom,ipq5332-wcss-pcie-mpd"; | ||||||
|  | 					firmware = "IPQ5332/q6_fw3.mdt"; | ||||||
|  | 					interrupts-extended = <&wcss_smp2p_in 24 0>, | ||||||
|  | 							<&wcss_smp2p_in 25 0>, | ||||||
|  | 							<&wcss_smp2p_in 28 0>, | ||||||
|  | 							<&wcss_smp2p_in 27 0>; | ||||||
|  | 					interrupt-names = "fatal", | ||||||
|  | 							"ready", | ||||||
|  | 							"spawn-ack", | ||||||
|  | 							"stop-ack"; | ||||||
|  |  | ||||||
|  | 					qcom,smem-states = <&wcss_smp2p_out 24>, | ||||||
|  | 							<&wcss_smp2p_out 25>, | ||||||
|  | 							<&wcss_smp2p_out 26>; | ||||||
|  | 					qcom,smem-state-names = "shutdown", | ||||||
|  | 								"stop", | ||||||
|  | 								"spawn"; | ||||||
|  | 					memory-region = <&q6_qcn6432_data_2>, | ||||||
|  | 							<&m3_dump_qcn6432_2>, | ||||||
|  | 							<&q6_qcn6432_etr_2>, | ||||||
|  | 							<&q6_qcn6432_caldb_2>; | ||||||
|  | 					status = "ok"; | ||||||
|  | 				}; | ||||||
|  | 			}; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &blsp1_uart0 { | ||||||
|  | 	pinctrl-0 = <&serial_0_pins>; | ||||||
|  | 	pinctrl-names = "default"; | ||||||
|  | 	status = "okay"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &blsp1_uart1 { | ||||||
|  |         pinctrl-0 = <&serial_1_pins>; | ||||||
|  |         pinctrl-names = "default"; | ||||||
|  |         status = "disabled"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &blsp1_i2c1 { | ||||||
|  | 	clock-frequency  = <400000>; | ||||||
|  | 	pinctrl-0 = <&i2c_1_pins>; | ||||||
|  | 	pinctrl-names = "default"; | ||||||
|  | 	status = "disabled"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &blsp1_spi0 { | ||||||
|  | 	pinctrl-0 = <&spi_0_data_clk_pins &spi_0_cs_pins>; | ||||||
|  | 	pinctrl-names = "default"; | ||||||
|  | 	status = "okay"; | ||||||
|  |  | ||||||
|  | 	flash@0 { | ||||||
|  | 		compatible = "n25q128a11", "micron,n25q128a11", "jedec,spi-nor"; | ||||||
|  | 		reg = <0>; | ||||||
|  | 		#address-cells = <1>; | ||||||
|  | 		#size-cells = <1>; | ||||||
|  | 		spi-max-frequency = <50000000>; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &sdhc { | ||||||
|  | 	bus-width = <4>; | ||||||
|  | 	max-frequency = <192000000>; | ||||||
|  | 	mmc-ddr-1_8v; | ||||||
|  | 	mmc-hs200-1_8v; | ||||||
|  | 	non-removable; | ||||||
|  | 	pinctrl-0 = <&sdc_default_state>; | ||||||
|  | 	pinctrl-names = "default"; | ||||||
|  | 	status = "disabled"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &sleep_clk { | ||||||
|  | 	clock-frequency = <32000>; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &qpic_bam { | ||||||
|  | 	status = "okay"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &qpic_nand { | ||||||
|  | 	pinctrl-0 = <&qspi_default_state>; | ||||||
|  | 	pinctrl-names = "default"; | ||||||
|  | 	status = "okay"; | ||||||
|  |  | ||||||
|  | 	nandcs@0 { | ||||||
|  | 		reg = <0>; | ||||||
|  | 		#address-cells = <1>; | ||||||
|  | 		#size-cells = <1>; | ||||||
|  |  | ||||||
|  | 		nand-ecc-strength = <8>; | ||||||
|  | 		nand-ecc-step-size = <512>; | ||||||
|  | 		nand-bus-width = <8>; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | /* PINCTRL */ | ||||||
|  |  | ||||||
|  | &tlmm { | ||||||
|  |  | ||||||
|  | 	led_pins: led_pins { | ||||||
|  | 		led_blue { | ||||||
|  | 			pins = "gpio22"; | ||||||
|  | 			function = "gpio"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-down; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		led_green { | ||||||
|  | 			pins = "gpio45"; | ||||||
|  | 			function = "gpio"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-down; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		led_white { | ||||||
|  | 			pins = "gpio43"; | ||||||
|  | 			function = "gpio"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-down; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		led_red { | ||||||
|  | 			pins = "gpio44"; | ||||||
|  | 			function = "gpio"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-down; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	qspi_default_state: qspi-default-state { | ||||||
|  | 		qspi_clock { | ||||||
|  | 			pins = "gpio13"; | ||||||
|  | 			function = "qspi_clk"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-down; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		qspi_cs { | ||||||
|  | 			pins = "gpio12"; | ||||||
|  | 			function = "qspi_cs"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-up; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		qspi_data { | ||||||
|  | 			pins = "gpio8", "gpio9", "gpio10", "gpio11"; | ||||||
|  | 			function = "qspi_data"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-down; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	serial_1_pins: serial1-pinmux { | ||||||
|  | 		pins = "gpio33", "gpio34", "gpio35", "gpio36"; | ||||||
|  | 		function = "blsp1_uart2"; | ||||||
|  | 		drive-strength = <8>; | ||||||
|  | 		bias-pull-up; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	i2c_1_pins: i2c-1-state { | ||||||
|  | 		pins = "gpio29", "gpio30"; | ||||||
|  | 		function = "blsp1_i2c0"; | ||||||
|  | 		drive-strength = <8>; | ||||||
|  | 		bias-pull-up; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	button_pins: button-state { | ||||||
|  | 		pins = "gpio35"; | ||||||
|  | 		function = "gpio"; | ||||||
|  | 		drive-strength = <8>; | ||||||
|  | 		bias-pull-up; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	pwm_pins: pwm-state { | ||||||
|  | 		pins = "gpio46"; | ||||||
|  | 		function = "pwm0"; | ||||||
|  | 		drive-strength = <8>; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	sdc_default_state: sdc-default-state { | ||||||
|  | 		clk-pins { | ||||||
|  | 			pins = "gpio13"; | ||||||
|  | 			function = "sdc_clk"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-disable; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		cmd-pins { | ||||||
|  | 			pins = "gpio12"; | ||||||
|  | 			function = "sdc_cmd"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-up; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		data-pins { | ||||||
|  | 			pins = "gpio8", "gpio9", "gpio10", "gpio11"; | ||||||
|  | 			function = "sdc_data"; | ||||||
|  | 			drive-strength = <8>; | ||||||
|  | 			bias-pull-up; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	spi_0_data_clk_pins: spi-0-data-clk-state { | ||||||
|  | 		pins = "gpio14", "gpio15", "gpio16"; | ||||||
|  | 		function = "blsp0_spi"; | ||||||
|  | 		drive-strength = <2>; | ||||||
|  | 		bias-pull-down; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	spi_0_cs_pins: spi-0-cs-state { | ||||||
|  | 		pins = "gpio17"; | ||||||
|  | 		function = "blsp0_spi"; | ||||||
|  | 		drive-strength = <2>; | ||||||
|  | 		bias-pull-up; | ||||||
|  | 	}; | ||||||
|  |  | ||||||
|  | 	mdio1_pins: mdio1-state { | ||||||
|  | 		mux_0 { | ||||||
|  | 			pins = "gpio27"; | ||||||
|  | 			function = "mdc1"; | ||||||
|  | 			drive-strength = <2>; | ||||||
|  | 			bias-pull-up; | ||||||
|  | 		}; | ||||||
|  | 		mux_1 { | ||||||
|  | 			pins = "gpio28"; | ||||||
|  | 			function = "mdio1"; | ||||||
|  | 			drive-strength = <2>; | ||||||
|  | 			bias-pull-up; | ||||||
|  | 		}; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &license_manager { | ||||||
|  | 	status = "okay"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &usb3 { | ||||||
|  | 	qcom,select-utmi-as-pipe-clk; | ||||||
|  | 	status = "okay"; | ||||||
|  |  | ||||||
|  | 	dwc3@8a00000 { | ||||||
|  | 		/delete-property/ #phy-cells; | ||||||
|  | 		/delete-property/ phys; | ||||||
|  | 		/delete-property/ phy-names; | ||||||
|  | 	}; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &pwm { | ||||||
|  | 	pinctrl-0 = <&pwm_pins>; | ||||||
|  | 	pinctrl-names = "default"; | ||||||
|  | 	status = "okay"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &hs_m31phy_0 { | ||||||
|  | 	status = "okay"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &wifi0 { | ||||||
|  | 	qcom,multipd_arch; | ||||||
|  | 	qcom,rproc = <&q6_wcss_pd1>; | ||||||
|  | 	qcom,rproc_rpd = <&q6v5_wcss>; | ||||||
|  | 	qcom,userpd-subsys-name = "q6v5_wcss_userpd1"; | ||||||
|  | 	qcom,bdf-addr = <0x4C200000 0x4C200000 0x4C200000 0x0 0x0 0x0>; | ||||||
|  | 	qcom,caldb-addr = <0x4D900000 0x4D500000 0x0 0x0 0x0 0x0>; | ||||||
|  | #ifdef __IPQ_MEM_PROFILE_512_MB__ | ||||||
|  | 	qcom,tgt-mem-mode = <1>; | ||||||
|  | 	qcom,caldb-size = <0x300000>; | ||||||
|  | #else | ||||||
|  | 	qcom,tgt-mem-mode = <0>; | ||||||
|  | 	qcom,caldb-size = <0x500000>; | ||||||
|  | #endif | ||||||
|  | 	qcom,board_id = <0x12>; | ||||||
|  | #if defined(__CNSS2__) | ||||||
|  | 	mem-region = <&q6_ipq5332_data>; | ||||||
|  | #else | ||||||
|  | 	memory-region = <&q6_ipq5332_data>; | ||||||
|  | #endif | ||||||
|  | 	qcom,wsi = <&wsi>; | ||||||
|  | 	qcom,wsi_index = <0>; | ||||||
|  | 	status = "ok"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &wifi1 { | ||||||
|  | 	qcom,multipd_arch; | ||||||
|  | 	qcom,rproc = <&q6_wcss_pd2>; | ||||||
|  | 	qcom,rproc_rpd = <&q6v5_wcss>; | ||||||
|  | 	qcom,userpd-subsys-name = "q6v5_wcss_userpd2"; | ||||||
|  | 	qcom,bdf-addr = <0x4DE00000 0x4D800000 0x0 0x0 0x0 0x0>; | ||||||
|  | 	qcom,caldb-addr = <0x4F500000 0x4EA00000 0x0 0x0 0x0 0x0>; | ||||||
|  | 	qcom,umac-irq-reset-addr = <0x20000884>; | ||||||
|  | 	qcom,caldb-size = <0x500000>; | ||||||
|  | #ifdef __IPQ_MEM_PROFILE_512_MB__ | ||||||
|  | 	qcom,tgt-mem-mode = <1>; | ||||||
|  | #else | ||||||
|  | 	qcom,tgt-mem-mode = <0>; | ||||||
|  | #endif | ||||||
|  | 	qcom,board_id = <0x060>; | ||||||
|  | #if defined(__CNSS2__) | ||||||
|  | 	mem-region = <&q6_qcn6432_data_1>; | ||||||
|  | #else | ||||||
|  | 	memory-region = <&q6_qcn6432_data_1>; | ||||||
|  | #endif | ||||||
|  | 	qcom,wsi = <&wsi>; | ||||||
|  | 	qcom,wsi_index = <1>; | ||||||
|  | 	status = "ok"; | ||||||
|  | 	interrupts = <GIC_SPI 33 IRQ_TYPE_EDGE_RISING>; | ||||||
|  | 	interrupt-names = "umac_reset"; | ||||||
|  | }; | ||||||
|  |  | ||||||
|  | &wifi2 { | ||||||
|  | 	qcom,multipd_arch; | ||||||
|  | 	qcom,rproc = <&q6_wcss_pd3>; | ||||||
|  | 	qcom,rproc_rpd = <&q6v5_wcss>; | ||||||
|  | 	qcom,userpd-subsys-name = "q6v5_wcss_userpd3"; | ||||||
|  | 	qcom,bdf-addr = <0x4FA00000 0x4EF00000 0x4FA00000 0x0 0x0 0x0>; | ||||||
|  | 	qcom,caldb-addr = <0x51100000 0x50100000 0x51100000 0x0 0x0 0x0>; | ||||||
|  | 	qcom,umac-irq-reset-addr = <0x18000884>; | ||||||
|  | 	qcom,caldb-size = <0x500000>; | ||||||
|  | #ifdef __IPQ_MEM_PROFILE_512_MB__ | ||||||
|  | 	qcom,tgt-mem-mode = <1>; | ||||||
|  | #else | ||||||
|  | 	qcom,tgt-mem-mode = <0>; | ||||||
|  | #endif | ||||||
|  | 	qcom,board_id = <0x070>; | ||||||
|  | #if defined(__CNSS2__) | ||||||
|  | 	mem-region = <&q6_qcn6432_data_2>; | ||||||
|  | #else | ||||||
|  | 	memory-region = <&q6_qcn6432_data_2>; | ||||||
|  | #endif | ||||||
|  | 	qcom,wsi = <&wsi>; | ||||||
|  | 	qcom,wsi_index = <2>; | ||||||
|  | 	status = "ok"; | ||||||
|  | 	interrupts = <GIC_SPI 410 IRQ_TYPE_EDGE_RISING>; | ||||||
|  | 	interrupt-names = "umac_reset"; | ||||||
|  | }; | ||||||
| @@ -149,6 +149,22 @@ define Device/zyxel_nwa130be | |||||||
| endef | endef | ||||||
| TARGET_DEVICES += zyxel_nwa130be | TARGET_DEVICES += zyxel_nwa130be | ||||||
|  |  | ||||||
|  |  | ||||||
|  | define Device/zyxel_nwa50be | ||||||
|  |   DEVICE_TITLE := Zyxel NWA50BE | ||||||
|  |   DEVICE_DTS := ipq5332-zyxel-nwa50be | ||||||
|  |   DEVICE_DTS_DIR := ../dts | ||||||
|  |   DEVICE_DTS_CONFIG := config-mi01.3 | ||||||
|  |   IMAGES := sysupgrade.tar nand-factory.bin nand-factory.ubi | ||||||
|  |   BLOCKSIZE := 128k | ||||||
|  |   PAGESIZE := 2048 | ||||||
|  |   IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata | ||||||
|  |   IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand | ||||||
|  |   IMAGE/nand-factory.ubi := append-ubi | ||||||
|  |   DEVICE_PACKAGES := ath12k-wifi-zyxel-nwa130be ath12k-firmware-qcn92xx ath12k-firmware-ipq5332 | ||||||
|  | endef | ||||||
|  | TARGET_DEVICES += zyxel_nwa50be | ||||||
|  |  | ||||||
| define Device/cig_wf672 | define Device/cig_wf672 | ||||||
|   DEVICE_TITLE := CIG WF672 |   DEVICE_TITLE := CIG WF672 | ||||||
|   DEVICE_DTS := ipq5332-cig-wf672 |   DEVICE_DTS := ipq5332-cig-wf672 | ||||||
|   | |||||||
| @@ -0,0 +1,66 @@ | |||||||
|  | From f13f2e47f4a14443b4244672b3a6c71c21306806 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: YenLin Pan <yenlin.pan@zyxel.com.tw> | ||||||
|  | Date: Wed, 9 Jul 2025 11:47:31 +0800 | ||||||
|  | Subject: [PATCH] thermal: thermal setting | ||||||
|  |  | ||||||
|  | lo0 -100 -hi0 105 -off0 0 | ||||||
|  | lo1 95 -hi1 110 -off1 20 | ||||||
|  | lo2 100 -hi2 115 -off2 60 | ||||||
|  | lo3 105 -hi3 119 -off3 98 | ||||||
|  |  | ||||||
|  | Signed-off-by: YenLin Pan <YenLin.Pan@zyxel.com.tw> | ||||||
|  | --- | ||||||
|  |  drivers/net/wireless/ath/ath12k/thermal.h | 28 +++++++++++------------ | ||||||
|  |  1 file changed, 14 insertions(+), 14 deletions(-) | ||||||
|  |  | ||||||
|  | diff --git a/drivers/net/wireless/ath/ath12k/thermal.h b/drivers/net/wireless/ath/ath12k/thermal.h | ||||||
|  | index 5c91906..db1f251 100644 | ||||||
|  | --- a/drivers/net/wireless/ath/ath12k/thermal.h | ||||||
|  | +++ b/drivers/net/wireless/ath/ath12k/thermal.h | ||||||
|  | @@ -13,29 +13,29 @@ | ||||||
|  |   | ||||||
|  |  /* Below temperatures are in celsius */ | ||||||
|  |  #define ATH12K_THERMAL_LVL0_TEMP_LOW_MARK -100 | ||||||
|  | -#define ATH12K_THERMAL_LVL0_TEMP_HIGH_MARK 100 | ||||||
|  | +#define ATH12K_THERMAL_LVL0_TEMP_HIGH_MARK 105 | ||||||
|  |  #define ATH12K_THERMAL_LVL1_TEMP_LOW_MARK 95 | ||||||
|  | -#define ATH12K_THERMAL_LVL1_TEMP_HIGH_MARK 105 | ||||||
|  | +#define ATH12K_THERMAL_LVL1_TEMP_HIGH_MARK 110 | ||||||
|  |  #define ATH12K_THERMAL_LVL2_TEMP_LOW_MARK 100 | ||||||
|  | -#define ATH12K_THERMAL_LVL2_TEMP_HIGH_MARK 110 | ||||||
|  | +#define ATH12K_THERMAL_LVL2_TEMP_HIGH_MARK 115 | ||||||
|  |  #define ATH12K_THERMAL_LVL3_TEMP_LOW_MARK 105 | ||||||
|  | -#define ATH12K_THERMAL_LVL3_TEMP_HIGH_MARK 120 | ||||||
|  | +#define ATH12K_THERMAL_LVL3_TEMP_HIGH_MARK 119 | ||||||
|  |   | ||||||
|  |  #define ATH12K_THERMAL_LVL0_V2_TEMP_LOW_MARK -100 | ||||||
|  | -#define ATH12K_THERMAL_LVL0_V2_TEMP_HIGH_MARK 95 | ||||||
|  | -#define ATH12K_THERMAL_LVL1_V2_TEMP_LOW_MARK 90 | ||||||
|  | -#define ATH12K_THERMAL_LVL1_V2_TEMP_HIGH_MARK 100 | ||||||
|  | -#define ATH12K_THERMAL_LVL2_V2_TEMP_LOW_MARK 95 | ||||||
|  | -#define ATH12K_THERMAL_LVL2_V2_TEMP_HIGH_MARK 105 | ||||||
|  | -#define ATH12K_THERMAL_LVL3_V2_TEMP_LOW_MARK 100 | ||||||
|  | -#define ATH12K_THERMAL_LVL3_V2_TEMP_HIGH_MARK 110 | ||||||
|  | +#define ATH12K_THERMAL_LVL0_V2_TEMP_HIGH_MARK 105 | ||||||
|  | +#define ATH12K_THERMAL_LVL1_V2_TEMP_LOW_MARK 95 | ||||||
|  | +#define ATH12K_THERMAL_LVL1_V2_TEMP_HIGH_MARK 110 | ||||||
|  | +#define ATH12K_THERMAL_LVL2_V2_TEMP_LOW_MARK 100 | ||||||
|  | +#define ATH12K_THERMAL_LVL2_V2_TEMP_HIGH_MARK 115 | ||||||
|  | +#define ATH12K_THERMAL_LVL3_V2_TEMP_LOW_MARK 105 | ||||||
|  | +#define ATH12K_THERMAL_LVL3_V2_TEMP_HIGH_MARK 119 | ||||||
|  |  #define ATH12K_THERMAL_LVL4_V2_TEMP_LOW_MARK 105 | ||||||
|  |  #define ATH12K_THERMAL_LVL4_V2_TEMP_HIGH_MARK 120 | ||||||
|  |   | ||||||
|  |  #define ATH12K_THERMAL_LVL0_DUTY_CYCLE 0 | ||||||
|  | -#define ATH12K_THERMAL_LVL1_DUTY_CYCLE 50 | ||||||
|  | -#define ATH12K_THERMAL_LVL2_DUTY_CYCLE 90 | ||||||
|  | -#define ATH12K_THERMAL_LVL3_DUTY_CYCLE 100 | ||||||
|  | +#define ATH12K_THERMAL_LVL1_DUTY_CYCLE 20 | ||||||
|  | +#define ATH12K_THERMAL_LVL2_DUTY_CYCLE 60 | ||||||
|  | +#define ATH12K_THERMAL_LVL3_DUTY_CYCLE 98 | ||||||
|  |   | ||||||
|  |  #define ATH12K_THERMAL_LVL0_V2_DUTY_CYCLE ATH12K_THERMAL_LVL0_DUTY_CYCLE | ||||||
|  |  #define ATH12K_THERMAL_LVL1_V2_DUTY_CYCLE ATH12K_THERMAL_LVL0_DUTY_CYCLE | ||||||
|  | --  | ||||||
|  | 2.34.1 | ||||||
|  |  | ||||||
| @@ -100,6 +100,7 @@ endif | |||||||
| ifdef CONFIG_TARGET_PROFILE | ifdef CONFIG_TARGET_PROFILE | ||||||
| TARGET_PROFILE=$(subst ",,$(CONFIG_TARGET_PROFILE)) | TARGET_PROFILE=$(subst ",,$(CONFIG_TARGET_PROFILE)) | ||||||
| PATCH_PROFILE_NAME=patches-$(subst DEVICE_,,$(TARGET_PROFILE)) | PATCH_PROFILE_NAME=patches-$(subst DEVICE_,,$(TARGET_PROFILE)) | ||||||
|  | FILES_PROFILE_NAME=files-$(subst DEVICE_,,$(TARGET_PROFILE)) | ||||||
| endif | endif | ||||||
|  |  | ||||||
| QCASSDK_CONFIG_OPTS+= TOOL_PATH=$(TOOLCHAIN_BIN_PATH) \ | QCASSDK_CONFIG_OPTS+= TOOL_PATH=$(TOOLCHAIN_BIN_PATH) \ | ||||||
| @@ -202,6 +203,15 @@ define patch_profile | |||||||
| 	$(call PatchDir/Default,$(PKG_BUILD_DIR),./$(PATCH_PROFILE_NAME)) | 	$(call PatchDir/Default,$(PKG_BUILD_DIR),./$(PATCH_PROFILE_NAME)) | ||||||
| endef | endef | ||||||
|  |  | ||||||
|  | define files_profile | ||||||
|  |  | ||||||
|  | 	if [ -d "./$(FILES_PROFILE_NAME)" ]; then \ | ||||||
|  | 		$(CP) ./$(FILES_PROFILE_NAME)/* ./files/ ; \ | ||||||
|  | 	fi | ||||||
|  | endef | ||||||
|  |  | ||||||
| Hooks/Prepare/Post += patch_profile | Hooks/Prepare/Post += patch_profile | ||||||
|  | Hooks/Prepare/Post += files_profile | ||||||
|  |  | ||||||
| $(eval $(call KernelPackage,qca-ssdk-qca-nohnat)) | $(eval $(call KernelPackage,qca-ssdk-qca-nohnat)) | ||||||
| $(eval $(call KernelPackage,qca-ssdk-qca-hnat)) | $(eval $(call KernelPackage,qca-ssdk-qca-hnat)) | ||||||
|   | |||||||
							
								
								
									
										317
									
								
								feeds/qca-wifi-7/qca-ssdk-qca/files-zyxel_nwa130be/qca-ssdk
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										317
									
								
								feeds/qca-wifi-7/qca-ssdk-qca/files-zyxel_nwa130be/qca-ssdk
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,317 @@ | |||||||
|  | #!/bin/sh /etc/rc.common | ||||||
|  | # Copyright (c) 2018, 2021, The Linux Foundation. All rights reserved. | ||||||
|  | # Copyright (c) 2022-2024, Qualcomm Innovation Center, Inc. All rights reserved. | ||||||
|  | # | ||||||
|  | # Permission to use, copy, modify, and/or distribute this software for any | ||||||
|  | # purpose with or without fee is hereby granted, provided that the above | ||||||
|  | # copyright notice and this permission notice appear in all copies. | ||||||
|  | # | ||||||
|  | # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||||||
|  | # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||||||
|  | # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||||||
|  | # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||||||
|  | # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||||||
|  | # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | ||||||
|  | # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||||
|  | # | ||||||
|  |  | ||||||
|  | START=16 | ||||||
|  |  | ||||||
|  | #!/bin/sh | ||||||
|  | ruletype="ip4 ip6" | ||||||
|  | side="wan lan" | ||||||
|  | qwan="1 3 2 0 5 7 6 4" | ||||||
|  | qlan="0 1 2 3 4 5 6 7" | ||||||
|  |  | ||||||
|  | function create_war_acl_rules(){ | ||||||
|  | 	for lw in $side | ||||||
|  | 	do | ||||||
|  | 		#echo $lw | ||||||
|  | 		if [ "$lw" == "wan" ];then | ||||||
|  | 			listid=254 | ||||||
|  | 			queue=$qwan | ||||||
|  | 			portmap=0x20 | ||||||
|  | 		else | ||||||
|  | 			listid=255 | ||||||
|  | 			queue=$qlan | ||||||
|  | 			portmap=0x1e | ||||||
|  | 		fi | ||||||
|  | 		#echo $queue | ||||||
|  | 		#echo "creating list $listid" | ||||||
|  | 		ssdk_sh acl list create $listid 255 | ||||||
|  | 		ruleid=0 | ||||||
|  | 		for rt in $ruletype | ||||||
|  | 		do | ||||||
|  | 			for qid in $queue | ||||||
|  | 			do | ||||||
|  | 				cmd="ssdk_sh acl rule add $listid $ruleid  1 n 0 0" | ||||||
|  | 				#echo $cmd | ||||||
|  | 				if [ "$rt" == "ip4" ];then | ||||||
|  | 					cmd="$cmd ip4 n n n n n n n n n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 					#echo $cmd | ||||||
|  | 				else | ||||||
|  | 					cmd="$cmd ip6 n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 					#echo $cmd | ||||||
|  | 				fi | ||||||
|  | 				if [ $ruleid -le 3 ];then | ||||||
|  | 					#non-zero dscp | ||||||
|  | 					cmd="$cmd y 0x0 0xff" | ||||||
|  | 				elif [ $ruleid -le 7 ];then | ||||||
|  | 					#zero dscp | ||||||
|  | 					cmd="$cmd n" | ||||||
|  | 				elif [ $ruleid -le 11 ];then | ||||||
|  | 					#non-zero dscp | ||||||
|  | 					cmd="$cmd y 0x0 0xff" | ||||||
|  | 				else | ||||||
|  | 					#zero dscp | ||||||
|  | 					cmd="$cmd n" | ||||||
|  | 				fi | ||||||
|  | 				p=$((ruleid/2)) | ||||||
|  | 				cmd="$cmd y mask $((ruleid%2)) 0x1 y mask $((p%2)) 0x1 n n n n n n n n n n n n n n n y n n n n n n n y $qid n n 0 0 n n n n n n n n n n n n n n n n n n n n 0" | ||||||
|  | 				#echo $cmd | ||||||
|  | 				$cmd | ||||||
|  | 				ruleid=`expr $ruleid + 1` | ||||||
|  | 			done | ||||||
|  | 		done | ||||||
|  | 		ssdk_sh acl list bind $listid 0 1 $portmap | ||||||
|  | 	done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function create_war_cosmap(){ | ||||||
|  | 	ssdk_sh cosmap pri2q set 0 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 1 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 2 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 3 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 4 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 5 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 6 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 7 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 0 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 1 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 2 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 3 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 4 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 5 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 6 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 7 1 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function create_acl_byp_egstp_rules(){ | ||||||
|  | 	chip_ver=$1 | ||||||
|  | 	cmd="ssdk_sh servcode config set 1 n 0 0xfffefc7f 0xffbdff 0 0 0 0 0 0" | ||||||
|  | 	if [ "$chip_ver" == "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		cmd="$cmd 0" | ||||||
|  | 	fi | ||||||
|  | 	#echo $cmd | ||||||
|  | 	$cmd | ||||||
|  |  | ||||||
|  | 	ssdk_sh acl list create 56 48 | ||||||
|  | 	#action bypass eg stp check | ||||||
|  | 	action="y n n n n n n n n n n 0 0 n n n n n n n n n n n n n y n n n n n n n n n n n n y n n n n n n n n n n n n n n n n n n" | ||||||
|  | 	if [ "$chip_ver" == "0x2000" ]; then | ||||||
|  | 		action="$action n n 0" | ||||||
|  | 	elif [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		action="$action n n n 0" | ||||||
|  | 	else | ||||||
|  | 		action="$action 0" | ||||||
|  | 	fi | ||||||
|  |  | ||||||
|  | 	for ruleid in $( seq 0 2 ) | ||||||
|  | 	do | ||||||
|  | 		if [ "$ruleid" == "0" ];then | ||||||
|  | 			cmd="ssdk_sh acl rule add 56 0 1 n 0 0 mac n n n n n y 01-80-c2-00-00-00 ff-ff-ff-ff-ff-ff n n n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 		elif [ "$ruleid" == "1" ];then | ||||||
|  | 			cmd="ssdk_sh acl rule add 56 1 1 n 0 0 mac n n n n n n n yes 0x8809 0xffff n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 		else | ||||||
|  | 			cmd="ssdk_sh acl rule add 56 2 1 n 0 0 mac n n n n n n n yes 0x888e 0xffff n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 		fi | ||||||
|  | 		if [ "$chip_ver" == "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 			cmd="$cmd n $action" | ||||||
|  | 		else | ||||||
|  | 			cmd="$cmd $action" | ||||||
|  | 		fi | ||||||
|  | 		#echo $cmd | ||||||
|  | 		$cmd | ||||||
|  | 	done | ||||||
|  | 	ssdk_sh acl list bind 56 0 2 1 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function delete_war_acl_rules(){ | ||||||
|  | 	for lw in $side | ||||||
|  | 	do | ||||||
|  | 		#echo $lw | ||||||
|  | 		if [ "$lw" == "wan" ];then | ||||||
|  | 			listid=254 | ||||||
|  | 			queue=$qwan | ||||||
|  | 			portmap=0x20 | ||||||
|  | 		else | ||||||
|  | 			listid=255 | ||||||
|  | 			queue=$qlan | ||||||
|  | 			portmap=0x1e | ||||||
|  | 		fi | ||||||
|  | 		ssdk_sh acl list unbind $listid 0 1 $portmap | ||||||
|  | 		for rt in $ruletype | ||||||
|  | 		do | ||||||
|  | 			for qid in $queue | ||||||
|  | 			do | ||||||
|  | 				cmd="ssdk_sh acl rule del $listid 0 1" | ||||||
|  | 				echo $cmd | ||||||
|  | 				$cmd | ||||||
|  | 			done | ||||||
|  | 		done | ||||||
|  | 		#echo "deleting list $listid" | ||||||
|  | 		ssdk_sh acl list destroy $listid | ||||||
|  | 	done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function delete_war_cosmap(){ | ||||||
|  | 	ssdk_sh cosmap pri2q set 0 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 1 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 2 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 3 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 4 2 | ||||||
|  | 	ssdk_sh cosmap pri2q set 5 2 | ||||||
|  | 	ssdk_sh cosmap pri2q set 6 3 | ||||||
|  | 	ssdk_sh cosmap pri2q set 7 3 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 0 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 1 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 2 2 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 3 2 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 4 3 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 5 3 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 6 4 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 7 5 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function delete_acl_byp_egstp_rules(){ | ||||||
|  | 	chip_ver=$1 | ||||||
|  | 	cmd="ssdk_sh servcode config set 1 n 0 0xfffefcff 0xffbfff 0 0 0 0 0 0" | ||||||
|  | 	if [ "$chip_ver" == "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		cmd="$cmd 0" | ||||||
|  | 	fi | ||||||
|  | 	#echo $cmd | ||||||
|  | 	$cmd | ||||||
|  | 	ssdk_sh acl list unbind 56 0 2 1 | ||||||
|  | 	ssdk_sh acl rule del 56 0 1 | ||||||
|  | 	ssdk_sh acl rule del 56 1 1 | ||||||
|  | 	ssdk_sh acl rule del 56 2 1 | ||||||
|  | 	ssdk_sh acl list destroy 56 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function edma_war_config_add(){ | ||||||
|  | 	create_war_cosmap | ||||||
|  | 	ssdk_sh acl status set enable | ||||||
|  | 	create_war_acl_rules | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function edma_war_config_del(){ | ||||||
|  | 	delete_war_acl_rules | ||||||
|  | 	delete_war_cosmap | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function ipq50xx_serdes_monitor () { | ||||||
|  | 	#if qca808x phy exist, need to monitor the serdes to avoid the effect for WIFI | ||||||
|  | 	port_id=2 | ||||||
|  | 	old_linkstatus="DISABLE" | ||||||
|  | 	phy_id_info=`ssdk_sh port phyid get $port_id | grep Org | awk -F '!' '{print $2}'` | ||||||
|  | 	if [ "$phy_id_info" = "[Org ID]:0x004d[Rev ID]:0xd101" ]; then | ||||||
|  | 		ssdk_sh debug phy set 29 0xb 0x300d | ||||||
|  | 		ssdk_sh debug uniphy set 0 0x7ac 0x300d 4 | ||||||
|  |  | ||||||
|  | 		while true | ||||||
|  | 		do | ||||||
|  | 			cur_linkstatus=`ssdk_sh port linkstatus get $port_id | grep Status | awk -F ':' '{print $2}'` | ||||||
|  | 			#when qca808x phy link status is from down to up, serdes tx would be enabled | ||||||
|  | 			if [ "$cur_linkstatus" = "ENABLE" ] && [ "$old_linkstatus" = "DISABLE" ]; then | ||||||
|  | 				ssdk_sh debug phy set 29 0xb 0xb00d | ||||||
|  | 				ssdk_sh debug uniphy set 0 0x7ac 0xb00d 4 | ||||||
|  | 			fi | ||||||
|  | 			#when qca808x phy link status is from up to down, serdes tx would be disabled | ||||||
|  | 			if [ "$cur_linkstatus" = "DISABLE" ] && [ "$old_linkstatus" = "ENABLE" ]; then | ||||||
|  | 				ssdk_sh debug phy set 29 0xb 0x300d | ||||||
|  | 				ssdk_sh debug uniphy set 0 0x7ac 0x300d 4 | ||||||
|  | 			fi | ||||||
|  | 			old_linkstatus=$cur_linkstatus | ||||||
|  | 		done | ||||||
|  | 	fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function ipq53xx_phy_amplitude_set () { | ||||||
|  | 	#for qca808x phy sgmii, set half amplitude with src_half_swing register | ||||||
|  | 	port_id=2 | ||||||
|  | 	phy_id_info=`ssdk_sh port phyid get $port_id | grep Org | awk -F '!' '{print $2}'` | ||||||
|  | 	if [ "$phy_id_info" = "[Org ID]:0x004d[Rev ID]:0xd180" ]; then | ||||||
|  | 		ssdk_sh debug phy set 5 0x40010087 0x208a | ||||||
|  | 		ssdk_sh debug phy set 6 0x40010087 0x208a | ||||||
|  | 		#Set the Reg0x67 bits[7:5]=3’b000 and bit4=1’b1 | ||||||
|  | 		ampl_val=$(eval "ssdk_sh debug phy get 5 0x40010067 | grep SSDK | grep -oE '0x[0-9a-fA-F]+' | sed 's/\(0x..\)./\11/'") | ||||||
|  | 		ssdk_sh debug phy set 5 0x40010067 $ampl_val | ||||||
|  | 		ampl_val=$(eval "ssdk_sh debug phy get 6 0x40010067 | grep SSDK | grep -oE '0x[0-9a-fA-F]+' | sed 's/\(0x..\)./\11/'") | ||||||
|  | 		ssdk_sh debug phy set 6 0x40010067 $ampl_val | ||||||
|  | 	fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function ipq53xx_uniphy_amplitude_set () { | ||||||
|  | 	#for ipq50xx sgmii, set half amplitude with tx_emp_lvl/margin_index and tx_margin | ||||||
|  | 	ssdk_sh debug uniphy set 0 0x7ac 0xb10d 4 | ||||||
|  | 	ssdk_sh debug uniphy set 0 0x24 0 4 | ||||||
|  | 	ssdk_sh debug uniphy set 1 0x7ac 0xb10d 4 | ||||||
|  | 	ssdk_sh debug uniphy set 1 0x24 0 4 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | ssdk_dependency() { | ||||||
|  | 	counter=0 | ||||||
|  | 	[ -e /lib/modules/$(uname -r)/qca-ssdk.ko ] && [ ! -d /sys/module/qca_ssdk ] && { | ||||||
|  | 		insmod qca-ssdk.ko | ||||||
|  | 	} | ||||||
|  | 	while [ ! -d /sys/ssdk ] && [ "$counter" -le 5 ] | ||||||
|  | 	do | ||||||
|  | 		sleep 1 | ||||||
|  | 		counter=$((counter+1)) | ||||||
|  | 	done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | start() { | ||||||
|  | 	ssdk_dependency | ||||||
|  | 	chip_ver=`ssdk_sh debug reg get 0 4 | grep Data | tr -d 'SSDK Init OK![Data]:'` | ||||||
|  | 	#The following commands should be uncommented to enable EDMA WAR | ||||||
|  | 	if [ "$chip_ver" = "0x1401" ]; then | ||||||
|  | 		#edma_war_config_add | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	#The following commands should be uncommented to add acl egress stp bypass rules | ||||||
|  | 	if [ "$chip_ver" = "0x1500" ] || [ "$chip_ver" = "0x1501" ] || [ "$chip_ver" = "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		#create_acl_byp_egstp_rules $chip_ver | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	#The following commands should be uncommented to enable WAR for ipq50xx | ||||||
|  | 	chip_type_info=`cat tmp/sysinfo/model` | ||||||
|  | 	result=$(echo $chip_type_info | grep "IPQ5018") | ||||||
|  | 	if [ "$result" != "" ]; then | ||||||
|  | 		#ipq50xx_serdes_monitor & | ||||||
|  | 		#ipq50xx_uniphy_amplitude_set | ||||||
|  | 		#ipq50xx_phy_amplitude_set | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	if [ "$chip_ver" = "0x2001" ]; then | ||||||
|  | 		ipq53xx_uniphy_amplitude_set | ||||||
|  | 		ipq53xx_phy_amplitude_set | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	echo starting | ||||||
|  | } | ||||||
|  |  | ||||||
|  | stop() { | ||||||
|  | 	chip_ver=`ssdk_sh debug reg get 0 4 | grep Data | tr -d 'SSDK Init OK![Data]:'` | ||||||
|  | 	#The following commands should be uncommented to disable EDMA WAR | ||||||
|  | 	if [ "$chip_ver" = "0x1401" ]; then | ||||||
|  | 		#edma_war_config_del | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	#The following commands should be uncommented to delete acl egress stp bypass rules | ||||||
|  | 	if [ "$chip_ver" = "0x1500" ] || [ "$chip_ver" = "0x1501" ] || [ "$chip_ver" = "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		#delete_acl_byp_egstp_rules $chip_ver | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	echo stoping | ||||||
|  | } | ||||||
							
								
								
									
										315
									
								
								feeds/qca-wifi-7/qca-ssdk-qca/files-zyxel_nwa50be/qca-ssdk
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										315
									
								
								feeds/qca-wifi-7/qca-ssdk-qca/files-zyxel_nwa50be/qca-ssdk
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,315 @@ | |||||||
|  | #!/bin/sh /etc/rc.common | ||||||
|  | # Copyright (c) 2018, 2021, The Linux Foundation. All rights reserved. | ||||||
|  | # Copyright (c) 2022-2024, Qualcomm Innovation Center, Inc. All rights reserved. | ||||||
|  | # | ||||||
|  | # Permission to use, copy, modify, and/or distribute this software for any | ||||||
|  | # purpose with or without fee is hereby granted, provided that the above | ||||||
|  | # copyright notice and this permission notice appear in all copies. | ||||||
|  | # | ||||||
|  | # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||||||
|  | # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||||||
|  | # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||||||
|  | # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||||||
|  | # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||||||
|  | # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | ||||||
|  | # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||||
|  | # | ||||||
|  |  | ||||||
|  | START=16 | ||||||
|  |  | ||||||
|  | #!/bin/sh | ||||||
|  | ruletype="ip4 ip6" | ||||||
|  | side="wan lan" | ||||||
|  | qwan="1 3 2 0 5 7 6 4" | ||||||
|  | qlan="0 1 2 3 4 5 6 7" | ||||||
|  |  | ||||||
|  | function create_war_acl_rules(){ | ||||||
|  | 	for lw in $side | ||||||
|  | 	do | ||||||
|  | 		#echo $lw | ||||||
|  | 		if [ "$lw" == "wan" ];then | ||||||
|  | 			listid=254 | ||||||
|  | 			queue=$qwan | ||||||
|  | 			portmap=0x20 | ||||||
|  | 		else | ||||||
|  | 			listid=255 | ||||||
|  | 			queue=$qlan | ||||||
|  | 			portmap=0x1e | ||||||
|  | 		fi | ||||||
|  | 		#echo $queue | ||||||
|  | 		#echo "creating list $listid" | ||||||
|  | 		ssdk_sh acl list create $listid 255 | ||||||
|  | 		ruleid=0 | ||||||
|  | 		for rt in $ruletype | ||||||
|  | 		do | ||||||
|  | 			for qid in $queue | ||||||
|  | 			do | ||||||
|  | 				cmd="ssdk_sh acl rule add $listid $ruleid  1 n 0 0" | ||||||
|  | 				#echo $cmd | ||||||
|  | 				if [ "$rt" == "ip4" ];then | ||||||
|  | 					cmd="$cmd ip4 n n n n n n n n n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 					#echo $cmd | ||||||
|  | 				else | ||||||
|  | 					cmd="$cmd ip6 n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 					#echo $cmd | ||||||
|  | 				fi | ||||||
|  | 				if [ $ruleid -le 3 ];then | ||||||
|  | 					#non-zero dscp | ||||||
|  | 					cmd="$cmd y 0x0 0xff" | ||||||
|  | 				elif [ $ruleid -le 7 ];then | ||||||
|  | 					#zero dscp | ||||||
|  | 					cmd="$cmd n" | ||||||
|  | 				elif [ $ruleid -le 11 ];then | ||||||
|  | 					#non-zero dscp | ||||||
|  | 					cmd="$cmd y 0x0 0xff" | ||||||
|  | 				else | ||||||
|  | 					#zero dscp | ||||||
|  | 					cmd="$cmd n" | ||||||
|  | 				fi | ||||||
|  | 				p=$((ruleid/2)) | ||||||
|  | 				cmd="$cmd y mask $((ruleid%2)) 0x1 y mask $((p%2)) 0x1 n n n n n n n n n n n n n n n y n n n n n n n y $qid n n 0 0 n n n n n n n n n n n n n n n n n n n n 0" | ||||||
|  | 				#echo $cmd | ||||||
|  | 				$cmd | ||||||
|  | 				ruleid=`expr $ruleid + 1` | ||||||
|  | 			done | ||||||
|  | 		done | ||||||
|  | 		ssdk_sh acl list bind $listid 0 1 $portmap | ||||||
|  | 	done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function create_war_cosmap(){ | ||||||
|  | 	ssdk_sh cosmap pri2q set 0 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 1 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 2 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 3 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 4 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 5 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 6 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 7 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 0 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 1 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 2 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 3 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 4 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 5 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 6 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 7 1 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function create_acl_byp_egstp_rules(){ | ||||||
|  | 	chip_ver=$1 | ||||||
|  | 	cmd="ssdk_sh servcode config set 1 n 0 0xfffefc7f 0xffbdff 0 0 0 0 0 0" | ||||||
|  | 	if [ "$chip_ver" == "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		cmd="$cmd 0" | ||||||
|  | 	fi | ||||||
|  | 	#echo $cmd | ||||||
|  | 	$cmd | ||||||
|  |  | ||||||
|  | 	ssdk_sh acl list create 56 48 | ||||||
|  | 	#action bypass eg stp check | ||||||
|  | 	action="y n n n n n n n n n n 0 0 n n n n n n n n n n n n n y n n n n n n n n n n n n y n n n n n n n n n n n n n n n n n n" | ||||||
|  | 	if [ "$chip_ver" == "0x2000" ]; then | ||||||
|  | 		action="$action n n 0" | ||||||
|  | 	elif [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		action="$action n n n 0" | ||||||
|  | 	else | ||||||
|  | 		action="$action 0" | ||||||
|  | 	fi | ||||||
|  |  | ||||||
|  | 	for ruleid in $( seq 0 2 ) | ||||||
|  | 	do | ||||||
|  | 		if [ "$ruleid" == "0" ];then | ||||||
|  | 			cmd="ssdk_sh acl rule add 56 0 1 n 0 0 mac n n n n n y 01-80-c2-00-00-00 ff-ff-ff-ff-ff-ff n n n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 		elif [ "$ruleid" == "1" ];then | ||||||
|  | 			cmd="ssdk_sh acl rule add 56 1 1 n 0 0 mac n n n n n n n yes 0x8809 0xffff n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 		else | ||||||
|  | 			cmd="ssdk_sh acl rule add 56 2 1 n 0 0 mac n n n n n n n yes 0x888e 0xffff n n n n n n n n n n n n n n n n n n n n n" | ||||||
|  | 		fi | ||||||
|  | 		if [ "$chip_ver" == "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 			cmd="$cmd n $action" | ||||||
|  | 		else | ||||||
|  | 			cmd="$cmd $action" | ||||||
|  | 		fi | ||||||
|  | 		#echo $cmd | ||||||
|  | 		$cmd | ||||||
|  | 	done | ||||||
|  | 	ssdk_sh acl list bind 56 0 2 1 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function delete_war_acl_rules(){ | ||||||
|  | 	for lw in $side | ||||||
|  | 	do | ||||||
|  | 		#echo $lw | ||||||
|  | 		if [ "$lw" == "wan" ];then | ||||||
|  | 			listid=254 | ||||||
|  | 			queue=$qwan | ||||||
|  | 			portmap=0x20 | ||||||
|  | 		else | ||||||
|  | 			listid=255 | ||||||
|  | 			queue=$qlan | ||||||
|  | 			portmap=0x1e | ||||||
|  | 		fi | ||||||
|  | 		ssdk_sh acl list unbind $listid 0 1 $portmap | ||||||
|  | 		for rt in $ruletype | ||||||
|  | 		do | ||||||
|  | 			for qid in $queue | ||||||
|  | 			do | ||||||
|  | 				cmd="ssdk_sh acl rule del $listid 0 1" | ||||||
|  | 				echo $cmd | ||||||
|  | 				$cmd | ||||||
|  | 			done | ||||||
|  | 		done | ||||||
|  | 		#echo "deleting list $listid" | ||||||
|  | 		ssdk_sh acl list destroy $listid | ||||||
|  | 	done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function delete_war_cosmap(){ | ||||||
|  | 	ssdk_sh cosmap pri2q set 0 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 1 0 | ||||||
|  | 	ssdk_sh cosmap pri2q set 2 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 3 1 | ||||||
|  | 	ssdk_sh cosmap pri2q set 4 2 | ||||||
|  | 	ssdk_sh cosmap pri2q set 5 2 | ||||||
|  | 	ssdk_sh cosmap pri2q set 6 3 | ||||||
|  | 	ssdk_sh cosmap pri2q set 7 3 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 0 1 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 1 0 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 2 2 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 3 2 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 4 3 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 5 3 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 6 4 | ||||||
|  | 	ssdk_sh cosmap pri2ehq set 7 5 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function delete_acl_byp_egstp_rules(){ | ||||||
|  | 	chip_ver=$1 | ||||||
|  | 	cmd="ssdk_sh servcode config set 1 n 0 0xfffefcff 0xffbfff 0 0 0 0 0 0" | ||||||
|  | 	if [ "$chip_ver" == "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		cmd="$cmd 0" | ||||||
|  | 	fi | ||||||
|  | 	#echo $cmd | ||||||
|  | 	$cmd | ||||||
|  | 	ssdk_sh acl list unbind 56 0 2 1 | ||||||
|  | 	ssdk_sh acl rule del 56 0 1 | ||||||
|  | 	ssdk_sh acl rule del 56 1 1 | ||||||
|  | 	ssdk_sh acl rule del 56 2 1 | ||||||
|  | 	ssdk_sh acl list destroy 56 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function edma_war_config_add(){ | ||||||
|  | 	create_war_cosmap | ||||||
|  | 	ssdk_sh acl status set enable | ||||||
|  | 	create_war_acl_rules | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function edma_war_config_del(){ | ||||||
|  | 	delete_war_acl_rules | ||||||
|  | 	delete_war_cosmap | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function ipq50xx_serdes_monitor () { | ||||||
|  | 	#if qca808x phy exist, need to monitor the serdes to avoid the effect for WIFI | ||||||
|  | 	port_id=2 | ||||||
|  | 	old_linkstatus="DISABLE" | ||||||
|  | 	phy_id_info=`ssdk_sh port phyid get $port_id | grep Org | awk -F '!' '{print $2}'` | ||||||
|  | 	if [ "$phy_id_info" = "[Org ID]:0x004d[Rev ID]:0xd101" ]; then | ||||||
|  | 		ssdk_sh debug phy set 29 0xb 0x300d | ||||||
|  | 		ssdk_sh debug uniphy set 0 0x7ac 0x300d 4 | ||||||
|  |  | ||||||
|  | 		while true | ||||||
|  | 		do | ||||||
|  | 			cur_linkstatus=`ssdk_sh port linkstatus get $port_id | grep Status | awk -F ':' '{print $2}'` | ||||||
|  | 			#when qca808x phy link status is from down to up, serdes tx would be enabled | ||||||
|  | 			if [ "$cur_linkstatus" = "ENABLE" ] && [ "$old_linkstatus" = "DISABLE" ]; then | ||||||
|  | 				ssdk_sh debug phy set 29 0xb 0xb00d | ||||||
|  | 				ssdk_sh debug uniphy set 0 0x7ac 0xb00d 4 | ||||||
|  | 			fi | ||||||
|  | 			#when qca808x phy link status is from up to down, serdes tx would be disabled | ||||||
|  | 			if [ "$cur_linkstatus" = "DISABLE" ] && [ "$old_linkstatus" = "ENABLE" ]; then | ||||||
|  | 				ssdk_sh debug phy set 29 0xb 0x300d | ||||||
|  | 				ssdk_sh debug uniphy set 0 0x7ac 0x300d 4 | ||||||
|  | 			fi | ||||||
|  | 			old_linkstatus=$cur_linkstatus | ||||||
|  | 		done | ||||||
|  | 	fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function ipq53xx_phy_amplitude_set () { | ||||||
|  | 	#PHY (8081->5321): Full amplitude (bit[7:5]=000), half swing (bit[4]=1) | ||||||
|  | 	#for qca808x phy sgmii, set half amplitude with src_half_swing register | ||||||
|  | 	port_id=2 | ||||||
|  | 	phy_addr=0x1d | ||||||
|  | 	phy_id_info=`ssdk_sh port phyid get $port_id | grep Org | awk -F '!' '{print $2}'` | ||||||
|  | 	if [ "$phy_id_info" = "[Org ID]:0x004d[Rev ID]:0xd101" ]; then | ||||||
|  | 		ssdk_sh debug phy set $phy_addr 0x40010087 0x208a | ||||||
|  | 		#Set the Reg0x67 bits[7:5]=3’b000 and bit4=1’b1 | ||||||
|  | 		ampl_val=$(ssdk_sh debug phy get $phy_addr 0x40010067 | grep SSDK | grep -oE '0x[0-9a-fA-F]+' | sed 's/\(0x..\)./\11/') | ||||||
|  | 		ssdk_sh debug phy set $phy_addr 0x40010067 $ampl_val | ||||||
|  | 	fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function ipq53xx_uniphy_amplitude_set () { | ||||||
|  |         #UniPhy (5321->8081): Custom amplitude (bit[8:4]=21) = 0xb15d | ||||||
|  | 	#for ipq53xx sgmii, set half amplitude with tx_emp_lvl/margin_index and tx_margin | ||||||
|  | 	ssdk_sh debug uniphy set 1 0x7ac 0xb15d 4 | ||||||
|  | 	ssdk_sh debug uniphy set 1 0x24 0 4 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | ssdk_dependency() { | ||||||
|  | 	counter=0 | ||||||
|  | 	[ -e /lib/modules/$(uname -r)/qca-ssdk.ko ] && [ ! -d /sys/module/qca_ssdk ] && { | ||||||
|  | 		insmod qca-ssdk.ko | ||||||
|  | 	} | ||||||
|  | 	while [ ! -d /sys/ssdk ] && [ "$counter" -le 5 ] | ||||||
|  | 	do | ||||||
|  | 		sleep 1 | ||||||
|  | 		counter=$((counter+1)) | ||||||
|  | 	done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | start() { | ||||||
|  | 	ssdk_dependency | ||||||
|  | 	chip_ver=`ssdk_sh debug reg get 0 4 | grep Data | tr -d 'SSDK Init OK![Data]:'` | ||||||
|  | 	#The following commands should be uncommented to enable EDMA WAR | ||||||
|  | 	if [ "$chip_ver" = "0x1401" ]; then | ||||||
|  | 		#edma_war_config_add | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	#The following commands should be uncommented to add acl egress stp bypass rules | ||||||
|  | 	if [ "$chip_ver" = "0x1500" ] || [ "$chip_ver" = "0x1501" ] || [ "$chip_ver" = "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		#create_acl_byp_egstp_rules $chip_ver | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	#The following commands should be uncommented to enable WAR for ipq50xx | ||||||
|  | 	chip_type_info=`cat tmp/sysinfo/model` | ||||||
|  | 	result=$(echo $chip_type_info | grep "IPQ5018") | ||||||
|  | 	if [ "$result" != "" ]; then | ||||||
|  | 		#ipq50xx_serdes_monitor & | ||||||
|  | 		#ipq50xx_uniphy_amplitude_set | ||||||
|  | 		#ipq50xx_phy_amplitude_set | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	if [ "$chip_ver" = "0x2001" ]; then | ||||||
|  | 		ipq53xx_uniphy_amplitude_set | ||||||
|  | 		ipq53xx_phy_amplitude_set | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	echo starting | ||||||
|  | } | ||||||
|  |  | ||||||
|  | stop() { | ||||||
|  | 	chip_ver=`ssdk_sh debug reg get 0 4 | grep Data | tr -d 'SSDK Init OK![Data]:'` | ||||||
|  | 	#The following commands should be uncommented to disable EDMA WAR | ||||||
|  | 	if [ "$chip_ver" = "0x1401" ]; then | ||||||
|  | 		#edma_war_config_del | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	#The following commands should be uncommented to delete acl egress stp bypass rules | ||||||
|  | 	if [ "$chip_ver" = "0x1500" ] || [ "$chip_ver" = "0x1501" ] || [ "$chip_ver" = "0x2000" ] || [ "$chip_ver" = "0x2001" ] || [ "$chip_ver" = "0x2100" ]; then | ||||||
|  | 		#delete_acl_byp_egstp_rules $chip_ver | ||||||
|  | 		echo '' | ||||||
|  | 	fi | ||||||
|  | 	echo stoping | ||||||
|  | } | ||||||
| @@ -0,0 +1,47 @@ | |||||||
|  | From 7fa9e9b683f1c573c58a14755347988919bc7d06 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: YenLin Pan <yenlin.pan@zyxel.com.tw> | ||||||
|  | Date: Wed, 14 May 2025 13:47:06 +0800 | ||||||
|  | Subject: [PATCH] pinctrl: make the switch LED works | ||||||
|  |  | ||||||
|  | Enable switch LED pin definition for LED0/LED1/LED2 control | ||||||
|  |  | ||||||
|  | Signed-off-by: YenLin Pan <YenLin.Pan@zyxel.com.tw> | ||||||
|  | --- | ||||||
|  |  src/init/ssdk_mht_pinctrl.c | 10 ++++++++-- | ||||||
|  |  1 file changed, 8 insertions(+), 2 deletions(-) | ||||||
|  |  | ||||||
|  | diff --git a/src/init/ssdk_mht_pinctrl.c b/src/init/ssdk_mht_pinctrl.c | ||||||
|  | index 2debe59..1ae0002 100755 | ||||||
|  | --- a/src/init/ssdk_mht_pinctrl.c | ||||||
|  | +++ b/src/init/ssdk_mht_pinctrl.c | ||||||
|  | @@ -33,11 +33,17 @@ static struct mht_pinctrl_setting mht_pin_settings[] = { | ||||||
|  |      /*PINs default MUX Setting*/ | ||||||
|  |      MHT_PIN_SETTING_MUX(0,  MHT_PIN_FUNC_INTN_WOL), | ||||||
|  |      MHT_PIN_SETTING_MUX(1,  MHT_PIN_FUNC_INTN), | ||||||
|  | -#if 0 | ||||||
|  | +#if 1 | ||||||
|  |      MHT_PIN_SETTING_MUX(2,  MHT_PIN_FUNC_P0_LED_0), | ||||||
|  |      MHT_PIN_SETTING_MUX(3,  MHT_PIN_FUNC_P1_LED_0), | ||||||
|  |      MHT_PIN_SETTING_MUX(4,  MHT_PIN_FUNC_P2_LED_0), | ||||||
|  |      MHT_PIN_SETTING_MUX(5,  MHT_PIN_FUNC_P3_LED_0), | ||||||
|  | +    MHT_PIN_SETTING_MUX(6,  MHT_PIN_FUNC_P0_LED_2), | ||||||
|  | +    MHT_PIN_SETTING_MUX(7,  MHT_PIN_FUNC_P1_LED_2), | ||||||
|  | +    MHT_PIN_SETTING_MUX(8,  MHT_PIN_FUNC_P2_LED_2), | ||||||
|  | +    MHT_PIN_SETTING_MUX(9,  MHT_PIN_FUNC_P3_LED_2), | ||||||
|  | +#endif | ||||||
|  | +#if 0 | ||||||
|  |      MHT_PIN_SETTING_MUX(6,  MHT_PIN_FUNC_PPS_IN), | ||||||
|  |      MHT_PIN_SETTING_MUX(7,  MHT_PIN_FUNC_TOD_IN), | ||||||
|  |      MHT_PIN_SETTING_MUX(8,  MHT_PIN_FUNC_RTC_REFCLK_IN), | ||||||
|  | @@ -49,7 +55,7 @@ static struct mht_pinctrl_setting mht_pin_settings[] = { | ||||||
|  |      MHT_PIN_SETTING_MUX(13, MHT_PIN_FUNC_P0_TOD_OUT), | ||||||
|  |      MHT_PIN_SETTING_MUX(14, MHT_PIN_FUNC_P0_CLK125_TDI), | ||||||
|  |      MHT_PIN_SETTING_MUX(15, MHT_PIN_FUNC_P0_SYNC_CLKO_PTP), | ||||||
|  | -#if 0 | ||||||
|  | +#if 1 | ||||||
|  |      MHT_PIN_SETTING_MUX(16, MHT_PIN_FUNC_P0_LED_1), | ||||||
|  |      MHT_PIN_SETTING_MUX(17, MHT_PIN_FUNC_P1_LED_1), | ||||||
|  |      MHT_PIN_SETTING_MUX(18, MHT_PIN_FUNC_P2_LED_1), | ||||||
|  | --  | ||||||
|  | 2.34.1 | ||||||
|  |  | ||||||
							
								
								
									
										16
									
								
								profiles/zyxel_nwa50be.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								profiles/zyxel_nwa50be.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,16 @@ | |||||||
|  | --- | ||||||
|  | profile: zyxel_nwa50be | ||||||
|  | target: ipq53xx | ||||||
|  | subtarget: generic | ||||||
|  | description: Build image for the zyxel nwa50be | ||||||
|  | image: bin/targets/ipq53xx/generic/openwrt-ipq53xx-zyxel_nwa50be-squashfs-sysupgrade.tar | ||||||
|  | feeds: | ||||||
|  |   - name: qca | ||||||
|  |     path: ../../feeds/qca-wifi-7 | ||||||
|  | packages: | ||||||
|  |   - ipq53xx | ||||||
|  |   - qca-ssdk-shell | ||||||
|  | include: | ||||||
|  |   - ucentral-ap | ||||||
|  | diffconfig: | | ||||||
|  |   CONFIG_KERNEL_IPQ_MEM_PROFILE=0 | ||||||
		Reference in New Issue
	
	Block a user