mirror of
				https://github.com/Telecominfraproject/wlan-ap.git
				synced 2025-10-31 18:38:10 +00:00 
			
		
		
		
	WIFI-12182: Support Edgecore OAP100e
Signed-off-by: Tanya Singh <tanya_singh@accton.com>
This commit is contained in:
		 Tanya Singh
					Tanya Singh
				
			
				
					committed by
					
						 John Crispin
						John Crispin
					
				
			
			
				
	
			
			
			 John Crispin
						John Crispin
					
				
			
						parent
						
							9f34e57df8
						
					
				
				
					commit
					2a145ba46a
				
			
							
								
								
									
										477
									
								
								patches/ipq40xx/0019-ipq40xx-support-oap100e.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										477
									
								
								patches/ipq40xx/0019-ipq40xx-support-oap100e.patch
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,477 @@ | ||||
| From 01a4ef29f885392972ad52ef910ab734ea7b58ce Mon Sep 17 00:00:00 2001 | ||||
| From: Tanya Singh <tanya_singh@accton.com> | ||||
| Date: Wed, 16 Nov 2022 16:49:19 +0800 | ||||
| Subject: [PATCH] ipq40xx: Support OAP100e | ||||
|  | ||||
| Signed-off-by: Tanya Singh <tanya_singh@accton.com> | ||||
| --- | ||||
|  .../ipq40xx/base-files/etc/board.d/01_leds    	|   3 +- | ||||
|  .../ipq40xx/base-files/etc/board.d/02_network 	|   1 + | ||||
|  .../etc/hotplug.d/firmware/11-ath10k-caldata  	|   2 + | ||||
|  .../base-files/lib/upgrade/platform.sh        	|   1 + | ||||
|  .../arm/boot/dts/qcom-ipq4019-oap100e.dts     	| 351 ++++++++++++++++++ | ||||
|  target/linux/ipq40xx/image/generic.mk         	|  14 + | ||||
|  .../9991-arm-boot-add-oap100e-dts-files.patch 	|  10 + | ||||
|  7 files changed, 381 insertions(+), 1 deletion(-) | ||||
|  create mode 100644 target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-oap100e.dts | ||||
|  create mode 100644 target/linux/ipq40xx/patches-5.4/9991-arm-boot-add-oap100e-dts-files.patch | ||||
|  | ||||
| diff --git a/target/linux/ipq40xx/base-files/etc/board.d/01_leds b/target/linux/ipq40xx/base-files/etc/board.d/01_leds | ||||
| index 5476dd5df6..e16e916d31 100755 | ||||
| --- a/target/linux/ipq40xx/base-files/etc/board.d/01_leds | ||||
| +++ b/target/linux/ipq40xx/base-files/etc/board.d/01_leds | ||||
| @@ -26,7 +26,8 @@ avm,fritzbox-7530 |\ | ||||
|  glinet,gl-b1300) | ||||
|  	ucidef_set_led_wlan "wlan" "WLAN" "green:wlan" "phy0tpt" | ||||
|  	;; | ||||
| -edgecore,oap100) | ||||
| +edgecore,oap100 |\ | ||||
| +edgecore,oap100e) | ||||
|  	ucidef_set_led_wlan "wlan2g" "WLAN2G" "blue:wlan2g" "phy0tpt" | ||||
|  	ucidef_set_led_wlan "wlan5g" "WLAN5G" "blue:wlan5g" "phy1tpt" | ||||
|  	;; | ||||
| diff --git a/target/linux/ipq40xx/base-files/etc/board.d/02_network b/target/linux/ipq40xx/base-files/etc/board.d/02_network | ||||
| index abaa6f3e16..efaf347b08 100755 | ||||
| --- a/target/linux/ipq40xx/base-files/etc/board.d/02_network | ||||
| +++ b/target/linux/ipq40xx/base-files/etc/board.d/02_network | ||||
| @@ -50,6 +50,7 @@ ipq40xx_setup_interfaces() | ||||
|  	edgecore,ecw5211|\ | ||||
|  	edgecore,spw2ac1200 |\ | ||||
|  	edgecore,oap100|\ | ||||
| +	edgecore,oap100e|\ | ||||
|  	udaya,a5-id2|\ | ||||
|  	openmesh,a42|\ | ||||
|  	openmesh,a62) | ||||
| diff --git a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata | ||||
| index 4af1d5ea2f..cc4406e7e2 100644 | ||||
| --- a/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata | ||||
| +++ b/target/linux/ipq40xx/base-files/etc/hotplug.d/firmware/11-ath10k-caldata | ||||
| @@ -108,6 +108,7 @@ case "$FIRMWARE" in | ||||
|  	edgecore,spw2ac1200 |\ | ||||
|  	edgecore,spw2ac1200-lan-poe |\ | ||||
|  	edgecore,oap100 |\ | ||||
| +	edgecore,oap100e |\ | ||||
|  	engenius,eap1300 |\ | ||||
|  	engenius,eap2200 |\ | ||||
|  	luma,wrtq-329acn|\ | ||||
| @@ -237,6 +238,7 @@ case "$FIRMWARE" in | ||||
|  	edgecore,spw2ac1200 |\ | ||||
|  	edgecore,spw2ac1200-lan-poe |\ | ||||
|  	edgecore,oap100 |\ | ||||
| +	edgecore,oap100e |\ | ||||
|  	engenius,eap1300 |\ | ||||
|  	engenius,eap2200 |\ | ||||
|  	luma,wrtq-329acn|\ | ||||
| diff --git a/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh b/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh | ||||
| index 6f2bff527c..fa6a16cf4f 100644 | ||||
| --- a/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh | ||||
| +++ b/target/linux/ipq40xx/base-files/lib/upgrade/platform.sh | ||||
| @@ -67,6 +67,7 @@ platform_do_upgrade() { | ||||
|  	buffalo,wtr-m2133hp |\ | ||||
|  	cilab,meshpoint-one |\ | ||||
|  	edgecore,oap100 |\ | ||||
| +	edgecore,oap100e |\ | ||||
|  	engenius,eap2200 |\ | ||||
|  	glinet,gl-ap1300 |\ | ||||
|  	luma,wrtq-329acn |\ | ||||
| diff --git a/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-oap100e.dts b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-oap100e.dts | ||||
| new file mode 100644 | ||||
| index 0000000000..d3891ddb47 | ||||
| --- /dev/null | ||||
| +++ b/target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-oap100e.dts | ||||
| @@ -0,0 +1,351 @@ | ||||
| +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT | ||||
| + | ||||
| +#include "qcom-ipq4019.dtsi" | ||||
| +#include <dt-bindings/gpio/gpio.h> | ||||
| +#include <dt-bindings/input/input.h> | ||||
| +#include <dt-bindings/soc/qcom,tcsr.h> | ||||
| + | ||||
| +/ { | ||||
| +	model = "EdgeCore OAP-100e"; | ||||
| +	compatible = "edgecore,oap100e"; | ||||
| + | ||||
| +	aliases { | ||||
| +		led-boot = &led_system; | ||||
| +		led-failsafe = &led_system; | ||||
| +		led-running = &led_system; | ||||
| +		led-upgrade = &led_system; | ||||
| +	}; | ||||
| + | ||||
| +	chosen { | ||||
| +		bootargs-append = " root=/dev/ubiblock0_1"; | ||||
| +	}; | ||||
| + | ||||
| +	soc { | ||||
| +		mdio@90000 { | ||||
| +			status = "okay"; | ||||
| +			pinctrl-0 = <&mdio_pins>; | ||||
| +			pinctrl-names = "default"; | ||||
| +		}; | ||||
| + | ||||
| +		ess-psgmii@98000 { | ||||
| +			status = "okay"; | ||||
| +		}; | ||||
| + | ||||
| +		tcsr@1949000 { | ||||
| +			compatible = "qcom,tcsr"; | ||||
| +			reg = <0x1949000 0x100>; | ||||
| +			qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>; | ||||
| +		}; | ||||
| + | ||||
| +		ess_tcsr@1953000 { | ||||
| +			compatible = "qcom,tcsr"; | ||||
| +			reg = <0x1953000 0x1000>; | ||||
| +			qcom,ess-interface-select = <TCSR_ESS_PSGMII>; | ||||
| +		}; | ||||
| + | ||||
| +		tcsr@1957000 { | ||||
| +			compatible = "qcom,tcsr"; | ||||
| +			reg = <0x1957000 0x100>; | ||||
| +			qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>; | ||||
| +		}; | ||||
| + | ||||
| +		tcsr@194b000 { | ||||
| +			/* select hostmode */ | ||||
| +			compatible = "qcom,tcsr"; | ||||
| +			reg = <0x194b000 0x100>; | ||||
| +			qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>; | ||||
| +			status = "okay"; | ||||
| +		}; | ||||
| + | ||||
| +		usb2@60f8800 { | ||||
| +			status = "okay"; | ||||
| + | ||||
| +			dwc3@6000000 { | ||||
| +				#address-cells = <1>; | ||||
| +				#size-cells = <0>; | ||||
| + | ||||
| +				usb2_port1: port@1 { | ||||
| +					reg = <1>; | ||||
| +					#trigger-source-cells = <0>; | ||||
| +				}; | ||||
| +			}; | ||||
| +		}; | ||||
| + | ||||
| +		usb3@8af8800 { | ||||
| +			status = "okay"; | ||||
| + | ||||
| +			dwc3@8a00000 { | ||||
| +				#address-cells = <1>; | ||||
| +				#size-cells = <0>; | ||||
| + | ||||
| +				usb3_port1: port@1 { | ||||
| +					reg = <1>; | ||||
| +					#trigger-source-cells = <0>; | ||||
| +				}; | ||||
| + | ||||
| +				usb3_port2: port@2 { | ||||
| +					reg = <2>; | ||||
| +					#trigger-source-cells = <0>; | ||||
| +				}; | ||||
| +			}; | ||||
| +		}; | ||||
| + | ||||
| +		crypto@8e3a000 { | ||||
| +			status = "okay"; | ||||
| +		}; | ||||
| + | ||||
| +		watchdog@b017000 { | ||||
| +			status = "okay"; | ||||
| +		}; | ||||
| + | ||||
| +		ess-switch@c000000 { | ||||
| +			status = "okay"; | ||||
| +			switch_mac_mode = <0x0>; /* mac mode for RGMII RMII */ | ||||
| +			switch_initvlas = <0x0007c 0x54>; /* port0 status */ | ||||
| +			switch_lan_bmp = <0x10>; | ||||
| +		}; | ||||
| + | ||||
| +		edma@c080000 { | ||||
| +			status = "okay"; | ||||
| +		}; | ||||
| +	}; | ||||
| + | ||||
| +	key { | ||||
| +		compatible = "gpio-keys"; | ||||
| + | ||||
| +		button@1 { | ||||
| +			label = "reset"; | ||||
| +			linux,code = <KEY_RESTART>; | ||||
| +			gpios = <&tlmm 18 GPIO_ACTIVE_LOW>; | ||||
| +			linux,input-type = <1>; | ||||
| +		}; | ||||
| +	}; | ||||
| + | ||||
| +	leds { | ||||
| +		compatible = "gpio-leds"; | ||||
| + | ||||
| +		led_system: led_system { | ||||
| +			label = "green:system"; | ||||
| +			gpios = <&tlmm 22 GPIO_ACTIVE_HIGH>; | ||||
| +		}; | ||||
| + | ||||
| +		led_2g { | ||||
| +			label = "blue:wlan2g"; | ||||
| +			gpios = <&tlmm 34 GPIO_ACTIVE_HIGH>; | ||||
| +		}; | ||||
| + | ||||
| +		led_5g { | ||||
| +			label = "blue:wlan5g"; | ||||
| +			gpios = <&tlmm 35 GPIO_ACTIVE_HIGH>; | ||||
| +		}; | ||||
| +	}; | ||||
| + | ||||
| +	gpio_export { | ||||
| +		compatible = "gpio-export"; | ||||
| +		#size-cells = <0>; | ||||
| + | ||||
| +		usb { | ||||
| +			gpio-export,name = "usb-power"; | ||||
| +			gpio-export,output = <1>; | ||||
| +			gpios = <&tlmm 44 GPIO_ACTIVE_HIGH>; | ||||
| +		}; | ||||
| + | ||||
| +		poe { | ||||
| +			gpio-export,name = "poe-power"; | ||||
| +			gpio-export,output = <0>; | ||||
| +			gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>; | ||||
| +		}; | ||||
| + | ||||
| +		external_antenna_1 { | ||||
| +			gpio-export,name = "gpio458"; | ||||
| +			gpio-export,output = <1>; | ||||
| +			gpios = <&tlmm 46 GPIO_ACTIVE_HIGH>; | ||||
| +		}; | ||||
| + | ||||
| +		external_antenna_2 { | ||||
| +			gpio-export,name = "gpio459"; | ||||
| +			gpio-export,output = <1>; | ||||
| +			gpios = <&tlmm 47 GPIO_ACTIVE_HIGH>; | ||||
| +		}; | ||||
| +	}; | ||||
| +}; | ||||
| + | ||||
| +&tlmm { | ||||
| +	serial_0_pins: serial_pinmux { | ||||
| +		mux { | ||||
| +			pins = "gpio16", "gpio17"; | ||||
| +			function = "blsp_uart0"; | ||||
| +			bias-disable; | ||||
| +		}; | ||||
| +	}; | ||||
| + | ||||
| +	spi_0_pins: spi_0_pinmux { | ||||
| +		pinmux { | ||||
| +			function = "blsp_spi0"; | ||||
| +			pins = "gpio13", "gpio14", "gpio15"; | ||||
| +			drive-strength = <12>; | ||||
| +			bias-disable; | ||||
| +		}; | ||||
| + | ||||
| +		pinmux_cs { | ||||
| +			function = "gpio"; | ||||
| +			pins = "gpio12"; | ||||
| +			drive-strength = <2>; | ||||
| +			bias-disable; | ||||
| +			output-high; | ||||
| +		}; | ||||
| +	}; | ||||
| + | ||||
| +	nand_pins: nand_pins { | ||||
| +		pullups { | ||||
| +			pins = "gpio53", "gpio58", "gpio59"; | ||||
| +			function = "qpic"; | ||||
| +			bias-pull-up; | ||||
| +		}; | ||||
| + | ||||
| +		pulldowns { | ||||
| +			pins = "gpio54", "gpio55", "gpio56", | ||||
| +				"gpio57", "gpio60", "gpio61", | ||||
| +				"gpio62", "gpio63", "gpio64", | ||||
| +				"gpio65", "gpio66", "gpio67", | ||||
| +				"gpio68", "gpio69"; | ||||
| +			function = "qpic"; | ||||
| +			bias-pull-down; | ||||
| +		}; | ||||
| +	}; | ||||
| + | ||||
| +	mdio_pins: mdio_pinmux { | ||||
| +		mux_1 { | ||||
| +			pins = "gpio6"; | ||||
| +			function = "mdio"; | ||||
| +			bias-pull-up; | ||||
| +		}; | ||||
| +		mux_2 { | ||||
| +			pins = "gpio7"; | ||||
| +			function = "mdc"; | ||||
| +			bias-pull-up; | ||||
| +		}; | ||||
| +	}; | ||||
| +}; | ||||
| + | ||||
| +&cryptobam { | ||||
| +	status = "okay"; | ||||
| +}; | ||||
| + | ||||
| +&blsp1_spi1 { | ||||
| +	pinctrl-0 = <&spi_0_pins>; | ||||
| +	pinctrl-names = "default"; | ||||
| +	status = "okay"; | ||||
| +	cs-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>; | ||||
| + | ||||
| +	flash@0 { | ||||
| +		#address-cells = <1>; | ||||
| +		#size-cells = <1>; | ||||
| +		compatible = "jedec,spi-nor"; | ||||
| +		reg = <0>; | ||||
| +		linux,modalias = "m25p80", "gd25q256"; | ||||
| +		spi-max-frequency = <24000000>; | ||||
| + | ||||
| +		partitions { | ||||
| +			compatible = "fixed-partitions"; | ||||
| +			#address-cells = <1>; | ||||
| +			#size-cells = <1>; | ||||
| + | ||||
| +			partition0@0 { | ||||
| +				label = "0:SBL1"; | ||||
| +				reg = <0x00000000 0x00040000>; | ||||
| +				read-only; | ||||
| +			}; | ||||
| +			partition1@40000 { | ||||
| +				label = "0:MIBIB"; | ||||
| +				reg = <0x00040000 0x00020000>; | ||||
| +				read-only; | ||||
| +			}; | ||||
| +			partition2@60000 { | ||||
| +				label = "0:QSEE"; | ||||
| +				reg = <0x00060000 0x00060000>; | ||||
| +				read-only; | ||||
| +			}; | ||||
| +			partition3@c0000 { | ||||
| +				label = "0:CDT"; | ||||
| +				reg = <0x000c0000 0x00010000>; | ||||
| +				read-only; | ||||
| +			}; | ||||
| +			partition4@d0000 { | ||||
| +				label = "0:DDRPARAMS"; | ||||
| +				reg = <0x000d0000 0x00010000>; | ||||
| +				read-only; | ||||
| +			}; | ||||
| +			partition5@e0000 { | ||||
| +				label = "0:APPSBLENV"; | ||||
| +				reg = <0x000e0000 0x00010000>; | ||||
| +				read-only; | ||||
| +			}; | ||||
| +			partition6@f0000 { | ||||
| +				label = "0:APPSBL"; | ||||
| +				reg = <0x000f0000 0x00080000>; | ||||
| +				read-only; | ||||
| +			}; | ||||
| +			partition7@170000 { | ||||
| +				label = "0:ART"; | ||||
| +				reg = <0x00170000 0x00010000>; | ||||
| +				read-only; | ||||
| +			}; | ||||
| +		}; | ||||
| +	}; | ||||
| +}; | ||||
| + | ||||
| +&nand { | ||||
| +	pinctrl-0 = <&nand_pins>; | ||||
| +	pinctrl-names = "default"; | ||||
| +	status = "okay"; | ||||
| + | ||||
| +	nand@0 { | ||||
| +		partitions { | ||||
| +			compatible = "fixed-partitions"; | ||||
| +			#address-cells = <1>; | ||||
| +			#size-cells = <1>; | ||||
| + | ||||
| +			partition@0 { | ||||
| +				label = "rootfs"; | ||||
| +				reg = <0x00000000 0x4000000>; | ||||
| +			}; | ||||
| +		}; | ||||
| +	}; | ||||
| +}; | ||||
| + | ||||
| +&blsp_dma { | ||||
| +	status = "okay"; | ||||
| +}; | ||||
| + | ||||
| +&blsp1_uart1 { | ||||
| +	pinctrl-0 = <&serial_0_pins>; | ||||
| +	pinctrl-names = "default"; | ||||
| +	status = "okay"; | ||||
| +}; | ||||
| + | ||||
| +&qpic_bam { | ||||
| +	status = "okay"; | ||||
| +}; | ||||
| + | ||||
| +&wifi0 { | ||||
| +	status = "okay"; | ||||
| +	qcom,ath10k-calibration-variant = "Edgecore OAP100e"; | ||||
| +}; | ||||
| + | ||||
| +&wifi1 { | ||||
| +	status = "okay"; | ||||
| +	qcom,ath10k-calibration-variant = "Edgecore OAP100e"; | ||||
| +}; | ||||
| + | ||||
| +&usb3_ss_phy { | ||||
| +	status = "okay"; | ||||
| +}; | ||||
| + | ||||
| +&usb3_hs_phy { | ||||
| +	status = "okay"; | ||||
| +}; | ||||
| + | ||||
| +&usb2_hs_phy { | ||||
| +	status = "okay"; | ||||
| +}; | ||||
| diff --git a/target/linux/ipq40xx/image/generic.mk b/target/linux/ipq40xx/image/generic.mk | ||||
| index c156cb3415..b68c647f04 100644 | ||||
| --- a/target/linux/ipq40xx/image/generic.mk | ||||
| +++ b/target/linux/ipq40xx/image/generic.mk | ||||
| @@ -414,6 +414,20 @@ define Device/edgecore_oap100 | ||||
|  endef | ||||
|  TARGET_DEVICES += edgecore_oap100 | ||||
|   | ||||
| +define Device/edgecore_oap100e | ||||
| +	$(call Device/FitImage) | ||||
| +	$(call Device/UbiFit) | ||||
| +	DEVICE_VENDOR := Edgecore | ||||
| +	DEVICE_MODEL := OAP100e | ||||
| +	SOC := qcom-ipq4019 | ||||
| +	BLOCKSIZE := 128k | ||||
| +	PAGESIZE := 2048 | ||||
| +	IMAGES := nand-sysupgrade.bin | ||||
| +	DEVICE_DTS_CONFIG := config@ap.dk07.1-c1 | ||||
| +	DEVICE_PACKAGES := ipq-wifi-edgecore_oap100 kmod-usb-acm kmod-usb-net kmod-usb-net-cdc-qmi uqmi | ||||
| +endef | ||||
| +TARGET_DEVICES += edgecore_oap100e | ||||
| + | ||||
|  define Device/engenius_eap1300 | ||||
|  	$(call Device/FitImage) | ||||
|  	DEVICE_VENDOR := EnGenius | ||||
| diff --git a/target/linux/ipq40xx/patches-5.4/9991-arm-boot-add-oap100e-dts-files.patch b/target/linux/ipq40xx/patches-5.4/9991-arm-boot-add-oap100e-dts-files.patch | ||||
| new file mode 100644 | ||||
| index 0000000000..3e397ae686 | ||||
| --- /dev/null | ||||
| +++ b/target/linux/ipq40xx/patches-5.4/9991-arm-boot-add-oap100e-dts-files.patch | ||||
| @@ -0,0 +1,10 @@ | ||||
| +--- a/arch/arm/boot/dts/Makefile	2022-11-16 16:35:30.232986884 +0800 | ||||
| ++++ b/arch/arm/boot/dts/Makefile	2022-11-16 16:35:48.949080170 +0800 | ||||
| +@@ -860,6 +860,7 @@ | ||||
| + 	qcom-ipq4018-sxtsq-5-ac.dtb \ | ||||
| + 	qcom-ipq4018-nbg6617.dtb \ | ||||
| + 	qcom-ipq4019-oap100.dtb \ | ||||
| ++	qcom-ipq4019-oap100e.dtb \ | ||||
| + 	qcom-ipq4018-pa1200.dtb \ | ||||
| + 	qcom-ipq4018-rt-ac58u.dtb \ | ||||
| + 	qcom-ipq4018-wre6606.dtb \ | ||||
| --  | ||||
| 2.17.1 | ||||
|  | ||||
		Reference in New Issue
	
	Block a user