ipq40xx: add support for GL.iNet GL-AP1300
Specifications:
SOC:        Qualcomm IPQ4018 (DAKOTA) ARM Quad-Core
RAM:        256 MiB
FLASH1:     4 MiB NOR
FLASH2:     128 MiB NAND
ETH:        Qualcomm QCA8075
WLAN1:      Qualcomm Atheros QCA4018 2.4GHz 802.11b/g/n 2x2
WLAN2:      Qualcomm Atheros QCA4018 5GHz 802.11n/ac W2 2x2
INPUT:      Reset
LED:        Power, Internet
UART1:      On board pin header near to LED (3.3V, TX, RX, GND), 3.3V without pin - 115200 8N1
OTHER:      On board with BLE module - by cp210x USB serial chip
            On board hareware watchdog with GPIO0 high to turn on, and GPIO4 for watchdog feed
Install via uboot tftp or uboot web failsafe.
By uboot tftp:
(IPQ40xx) # tftpboot 0x84000000 openwrt-ipq40xx-generic-glinet_gl-ap1300-squashfs-nand-factory.ubi
(IPQ40xx) # run lf
By uboot web failsafe:
Push the reset button for 10 seconds util the power led flash faster,
then use broswer to access http://192.168.1.1
Afterwards upgrade can use sysupgrade image.
Signed-off-by: Dongming Han <handongming@gl-inet.com>
			
			
This commit is contained in:
		 Dongming Han
					Dongming Han
				
			
				
					committed by
					
						 Petr Štetiar
						Petr Štetiar
					
				
			
			
				
	
			
			
			 Petr Štetiar
						Petr Štetiar
					
				
			
						parent
						
							3bb1618573
						
					
				
				
					commit
					b9389186b0
				
			| @@ -34,6 +34,7 @@ case "$board" in | ||||
| alfa-network,ap120c-ac |\ | ||||
| devolo,magic-2-wifi-next |\ | ||||
| edgecore,ecw5211 |\ | ||||
| glinet,gl-ap1300 |\ | ||||
| glinet,gl-b1300 |\ | ||||
| luma,wrtq-329acn |\ | ||||
| openmesh,a42 |\ | ||||
|   | ||||
| @@ -38,6 +38,7 @@ ALLWIFIBOARDS:= \ | ||||
| 	engenius_emd1 \ | ||||
| 	engenius_emr3500 \ | ||||
| 	ezviz_cs-w3-wd1200g-eup \ | ||||
| 	glinet_gl-ap1300 \ | ||||
| 	glinet_gl-s1300 \ | ||||
| 	linksys_ea8300 \ | ||||
| 	linksys_mr8300-v0 \ | ||||
| @@ -120,6 +121,7 @@ $(eval $(call generate-ipq-wifi-package,engenius_eap2200,EnGenius EAP2200)) | ||||
| $(eval $(call generate-ipq-wifi-package,engenius_emd1,EnGenius EMD1)) | ||||
| $(eval $(call generate-ipq-wifi-package,engenius_emr3500,EnGenius EMR3500)) | ||||
| $(eval $(call generate-ipq-wifi-package,ezviz_cs-w3-wd1200g-eup,EZVIZ CS-W3-WD1200G EUP)) | ||||
| $(eval $(call generate-ipq-wifi-package,glinet_gl-ap1300,GL.iNet GL-AP1300)) | ||||
| $(eval $(call generate-ipq-wifi-package,glinet_gl-s1300,GL.iNet GL-S1300)) | ||||
| $(eval $(call generate-ipq-wifi-package,linksys_ea8300,Linksys EA8300)) | ||||
| $(eval $(call generate-ipq-wifi-package,linksys_mr8300-v0,Linksys MR8300)) | ||||
|   | ||||
							
								
								
									
										
											BIN
										
									
								
								package/firmware/ipq-wifi/board-glinet_gl-ap1300.qca4019
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								package/firmware/ipq-wifi/board-glinet_gl-ap1300.qca4019
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @@ -92,6 +92,7 @@ ipq40xx_setup_interfaces() | ||||
| 		ucidef_add_switch "switch0" \ | ||||
| 			"0u@eth0" "2:lan:3" "3:lan:2" "4:lan:1" "0u@eth1" "5:wan" | ||||
| 		;; | ||||
| 	glinet,gl-ap1300 |\ | ||||
| 	glinet,gl-b1300 |\ | ||||
| 	glinet,gl-s1300) | ||||
| 		ucidef_set_interfaces_lan_wan "eth0" "eth1" | ||||
|   | ||||
| @@ -55,6 +55,7 @@ case "$FIRMWARE" in | ||||
| 	alfa-network,ap120c-ac |\ | ||||
| 	cilab,meshpoint-one |\ | ||||
| 	ezviz,cs-w3-wd1200g-eup |\ | ||||
| 	glinet,gl-ap1300 |\ | ||||
| 	glinet,gl-b1300 |\ | ||||
| 	glinet,gl-s1300 |\ | ||||
| 	linksys,ea6350v3 |\ | ||||
| @@ -158,6 +159,7 @@ case "$FIRMWARE" in | ||||
| 	alfa-network,ap120c-ac |\ | ||||
| 	cilab,meshpoint-one |\ | ||||
| 	ezviz,cs-w3-wd1200g-eup |\ | ||||
| 	glinet,gl-ap1300 |\ | ||||
| 	glinet,gl-b1300 |\ | ||||
| 	glinet,gl-s1300 |\ | ||||
| 	linksys,ea6350v3 |\ | ||||
|   | ||||
| @@ -69,6 +69,7 @@ platform_do_upgrade() { | ||||
| 	edgecore,ecw5211 |\ | ||||
| 	edgecore,oap100 |\ | ||||
| 	engenius,eap2200 |\ | ||||
| 	glinet,gl-ap1300 |\ | ||||
| 	luma,wrtq-329acn |\ | ||||
| 	mobipromo,cm520-79f |\ | ||||
| 	qxwlan,e2600ac-c2) | ||||
|   | ||||
| @@ -0,0 +1,269 @@ | ||||
| // 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 = "GL.iNet GL-AP1300"; | ||||
| 	compatible = "glinet,gl-ap1300"; | ||||
|  | ||||
| 	aliases { | ||||
| 		led-boot = &led_power; | ||||
| 		led-failsafe = &led_power; | ||||
| 		led-running = &led_power; | ||||
| 		led-upgrade = &led_power; | ||||
| 	}; | ||||
|  | ||||
| 	memory { | ||||
| 		device_type = "memory"; | ||||
| 		reg = <0x80000000 0x10000000>; | ||||
| 	}; | ||||
|  | ||||
| 	chosen { | ||||
| 		bootargs-append = " ubi.mtd=ubi root=/dev/ubiblock0_1 clk_ignore_unused"; | ||||
| 	}; | ||||
|  | ||||
| 	soc { | ||||
| 		rng@22000 { | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
|  | ||||
| 		mdio@90000 { | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
|  | ||||
| 		ess-psgmii@98000 { | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
|  | ||||
| 		tcsr@1949000 { | ||||
| 			compatible = "qcom,tcsr"; | ||||
| 			reg = <0x1949000 0x100>; | ||||
| 			qcom,wifi_glb_cfg = <TCSR_WIFI_GLB_CFG>; | ||||
| 		}; | ||||
|  | ||||
| 		tcsr@194b000 { | ||||
| 			/* select hostmode */ | ||||
| 			compatible = "qcom,tcsr"; | ||||
| 			reg = <0x194b000 0x100>; | ||||
| 			qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>; | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
|  | ||||
| 		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>; | ||||
| 		}; | ||||
|  | ||||
| 		usb2@60f8800 { | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
|  | ||||
| 		usb3@8af8800 { | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
|  | ||||
| 		crypto@8e3a000 { | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
|  | ||||
| 		watchdog@b017000 { | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
|  | ||||
| 		ess-switch@c000000 { | ||||
| 			status = "okay"; | ||||
| 			switch_lan_bmp = <0x18>; | ||||
| 			switch_wan_bmp = <0x20>; | ||||
| 		}; | ||||
|  | ||||
| 		edma@c080000 { | ||||
| 			status = "okay"; | ||||
| 		}; | ||||
| 	}; | ||||
|  | ||||
| 	keys { | ||||
| 		compatible = "gpio-keys"; | ||||
|  | ||||
| 		reset { | ||||
| 			label = "reset"; | ||||
| 			gpios = <&tlmm 63 GPIO_ACTIVE_LOW>; | ||||
| 			linux,code = <KEY_RESTART>; | ||||
| 		}; | ||||
| 	}; | ||||
|  | ||||
| 	leds { | ||||
| 		compatible = "gpio-leds"; | ||||
|  | ||||
| 		led_power: power { | ||||
| 			label = "green:power"; | ||||
| 			gpios = <&tlmm 2 GPIO_ACTIVE_HIGH>; | ||||
| 			default-state = "on"; | ||||
| 		}; | ||||
|  | ||||
| 		wan { | ||||
| 			label = "green:wan"; | ||||
| 			gpios = <&tlmm 3 GPIO_ACTIVE_HIGH>; | ||||
| 		}; | ||||
| 	}; | ||||
| }; | ||||
|  | ||||
| &blsp_dma { | ||||
| 	status = "okay"; | ||||
| }; | ||||
|  | ||||
| &cryptobam { | ||||
| 	status = "okay"; | ||||
| }; | ||||
|  | ||||
| &blsp1_spi1 { | ||||
| 	status = "okay"; | ||||
|  | ||||
| 	pinctrl-0 = <&spi0_pins>; | ||||
| 	pinctrl-names = "default"; | ||||
| 	cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>, <&tlmm 5 GPIO_ACTIVE_HIGH>; | ||||
|  | ||||
| 	flash@0 { | ||||
| 		status = "okay"; | ||||
|  | ||||
| 		compatible = "jedec,spi-nor"; | ||||
| 		reg = <0>; | ||||
| 		spi-max-frequency = <24000000>; | ||||
|  | ||||
| 		partitions { | ||||
| 			compatible = "fixed-partitions"; | ||||
| 			#address-cells = <1>; | ||||
| 			#size-cells = <1>; | ||||
|  | ||||
| 			partition@0 { | ||||
| 				label = "SBL1"; | ||||
| 				reg = <0x00000000 0x00040000>; | ||||
| 				read-only; | ||||
| 			}; | ||||
|  | ||||
| 			partition@40000 { | ||||
| 				label = "MIBIB"; | ||||
| 				reg = <0x00040000 0x00020000>; | ||||
| 				read-only; | ||||
| 			}; | ||||
|  | ||||
| 			partition@60000 { | ||||
| 				label = "QSEE"; | ||||
| 				reg = <0x00060000 0x00060000>; | ||||
| 				read-only; | ||||
| 			}; | ||||
|  | ||||
| 			partition@c0000 { | ||||
| 				label = "CDT"; | ||||
| 				reg = <0x000c0000 0x00010000>; | ||||
| 				read-only; | ||||
| 			}; | ||||
|  | ||||
| 			partition@d0000 { | ||||
| 				label = "DDRPARAMS"; | ||||
| 				reg = <0x000d0000 0x00010000>; | ||||
| 				read-only; | ||||
| 			}; | ||||
|  | ||||
| 			partition@e0000 { | ||||
| 				label = "APPSBLENV"; /* uboot env*/ | ||||
| 				reg = <0x000e0000 0x00010000>; | ||||
| 			}; | ||||
|  | ||||
| 			partition@f0000 { | ||||
| 				label = "APPSBL"; /* uboot */ | ||||
| 				reg = <0x000f0000 0x00080000>; | ||||
| 				read-only; | ||||
| 			}; | ||||
|  | ||||
| 			partition@170000 { | ||||
| 				label = "ART"; | ||||
| 				reg = <0x00170000 0x00010000>; | ||||
| 				read-only; | ||||
| 			}; | ||||
| 		}; | ||||
| 	}; | ||||
|  | ||||
| 	spi-nand@1 { | ||||
| 		status = "okay"; | ||||
|  | ||||
| 		compatible = "spi-nand"; | ||||
| 		reg = <1>; | ||||
| 		spi-max-frequency = <24000000>; | ||||
|  | ||||
| 		partitions { | ||||
| 			compatible = "fixed-partitions"; | ||||
| 			#address-cells = <1>; | ||||
| 			#size-cells = <1>; | ||||
|  | ||||
| 			partition@0 { | ||||
| 				label = "ubi"; | ||||
| 				reg = <0x00000000 0x08000000>; | ||||
| 			}; | ||||
| 		}; | ||||
| 	}; | ||||
| }; | ||||
|  | ||||
| &blsp1_uart1 { | ||||
| 	pinctrl-0 = <&serial_pins>; | ||||
| 	pinctrl-names = "default"; | ||||
| 	status = "okay"; | ||||
| }; | ||||
|  | ||||
| &tlmm { | ||||
| 	serial_pins: serial_pinmux { | ||||
| 		mux { | ||||
| 			pins = "gpio60", "gpio61"; | ||||
| 			function = "blsp_uart0"; | ||||
| 			bias-disable; | ||||
| 		}; | ||||
| 	}; | ||||
|  | ||||
| 	spi0_pins: spi0_pinmux { | ||||
| 		mux_spi { | ||||
| 			function = "blsp_spi0"; | ||||
| 			pins = "gpio55", "gpio56", "gpio57"; | ||||
| 			drive-strength = <12>; | ||||
| 			bias-disable; | ||||
| 		}; | ||||
|  | ||||
| 		mux_cs { | ||||
| 			function = "gpio"; | ||||
| 			pins = "gpio54", "gpio5"; | ||||
| 			drive-strength = <2>; | ||||
| 			bias-disable; | ||||
| 			output-high; | ||||
| 		}; | ||||
| 	}; | ||||
| }; | ||||
|  | ||||
| &usb2_hs_phy { | ||||
| 	status = "okay"; | ||||
| }; | ||||
|  | ||||
| &usb3_hs_phy { | ||||
| 	status = "okay"; | ||||
| }; | ||||
|  | ||||
| &usb3_ss_phy { | ||||
| 	status = "okay"; | ||||
| }; | ||||
|  | ||||
| &wifi0 { | ||||
| 	status = "okay"; | ||||
| 	qcom,ath10k-calibration-variant = "GL-AP1300"; | ||||
| }; | ||||
|  | ||||
| &wifi1 { | ||||
| 	status = "okay"; | ||||
| 	qcom,ath10k-calibration-variant = "GL-AP1300"; | ||||
| }; | ||||
| @@ -482,6 +482,21 @@ define Device/ezviz_cs-w3-wd1200g-eup | ||||
| endef | ||||
| TARGET_DEVICES += ezviz_cs-w3-wd1200g-eup | ||||
|  | ||||
| define Device/glinet_gl-ap1300 | ||||
| 	$(call Device/FitImage) | ||||
| 	$(call Device/UbiFit) | ||||
| 	DEVICE_VENDOR := GL.iNet | ||||
| 	DEVICE_MODEL := GL-AP1300 | ||||
| 	SOC := qcom-ipq4018 | ||||
| 	DEVICE_DTS_CONFIG := config@ap.dk01.1-c2 | ||||
| 	BLOCKSIZE := 128k | ||||
| 	PAGESIZE := 2048 | ||||
| 	IMAGE_SIZE := 131072k | ||||
| 	KERNEL_INSTALL := 1 | ||||
| 	DEVICE_PACKAGES := ipq-wifi-glinet_gl-ap1300 | ||||
| endef | ||||
| TARGET_DEVICES += glinet_gl-ap1300 | ||||
|  | ||||
| define Device/glinet_gl-b1300 | ||||
| 	$(call Device/FitImage) | ||||
| 	DEVICE_VENDOR := GL.iNet | ||||
|   | ||||
| @@ -10,7 +10,7 @@ Signed-off-by: John Crispin <john@phrozen.org> | ||||
|  | ||||
| --- a/arch/arm/boot/dts/Makefile | ||||
| +++ b/arch/arm/boot/dts/Makefile | ||||
| @@ -837,11 +837,57 @@ dtb-$(CONFIG_ARCH_QCOM) += \ | ||||
| @@ -837,11 +837,58 @@ dtb-$(CONFIG_ARCH_QCOM) += \ | ||||
|  	qcom-apq8074-dragonboard.dtb \ | ||||
|  	qcom-apq8084-ifc6540.dtb \ | ||||
|  	qcom-apq8084-mtp.dtb \ | ||||
| @@ -28,6 +28,7 @@ Signed-off-by: John Crispin <john@phrozen.org> | ||||
| +	qcom-ipq4018-ex6100v2.dtb \ | ||||
| +	qcom-ipq4018-ex6150v2.dtb \ | ||||
| +	qcom-ipq4018-fritzbox-4040.dtb \ | ||||
| +	qcom-ipq4018-gl-ap1300.dtb \ | ||||
| +	qcom-ipq4018-jalapeno.dtb \ | ||||
| +	qcom-ipq4018-meshpoint-one.dtb \ | ||||
| +	qcom-ipq4018-nbg6617.dtb \ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user