qualcommax: ipq50xx: add support for GL.iNET GL-B3000

Add support for GL.iNET (AX3000) B3000.

Speficiations:
* SoC: Qualcomm IPQ5018 (64-bit dual-core ARM Cortex-A53 @ 1.0Ghz)
* Memory: Winbond W634GU6NQB-11 (512 MiB DDR3-933)
* Serial Port: 3v3 TTL 115200n8
* Wi-Fi: IPQ5018 (2x2 2.4 Ghz 802.11b/g/n/ax)
* Wi-Fi: QCN6102 (2x2:2 5 Ghz 802.11an/ac/ax)
* Ethernet: IPQ5018 integrated virtual switch connected to an external
            QCA8337 switch (3 Ports 10/100/1000 GBASE-T)
* Flash: Winbond W25N01GWZEIG (128 MiB)
* LEDs: 1x single-color blue LED (GPIO 24 Active High)
        1x single-color white LED (GPIO 23 Active High)
* Buttons: 1x Reset (GPIO 27 Active Low)

Flash Instructions:

*** The .img files are now universal ! ***

Openwrt		--> openwrt-qualcommax-ipq50xx-glinet_gl-b3000-squashfs-factory.img

GL.iNet OEM	--> openwrt-b3000-4.5.18-0731-1722397535.img

Either file can be flashed, in any of the available upgrade options, in both Firmwares.

Pick a file .. pick a method .. and SEND IT !!

Signed-off-by: Scott Mercer <TheRootEd24@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17903
Signed-off-by: Robert Marko <robimarko@gmail.com>
This commit is contained in:
Scott Mercer
2025-03-22 12:46:18 -04:00
committed by Robert Marko
parent 963d320086
commit 3307fe8ee4
11 changed files with 636 additions and 9 deletions

View File

@@ -15,16 +15,19 @@
#
usage() {
echo "Usage: `basename $0` output img0_name img0_file [[img1_name img1_file] ...]"
echo "Usage: `basename $0` output [[device].bootscript] img0_name img0_file [[img1_name img1_file] ...]"
exit 1
}
# We need at least 3 arguments
[ "$#" -lt 3 ] && usage
[ "$#" -lt 3 ] && usage || node_type="firmware"
# Target output file
OUTPUT="$1"; shift
# check for bootscript
[ "${1##*.}" = "bootscript" ] && has_script=true && node_type="script"
# Create a default, fully populated DTS file
echo "\
/dts-v1/;
@@ -35,17 +38,30 @@ echo "\
images {" > ${OUTPUT}
while [ -n "$1" -a -n "$2" ]; do
[ -f "$2" ] || usage
while [ -n "$1" -a -n "$2" ] || [ $has_script ]; do
[ -f "$2" ] || [ $has_script ] && has_script= || usage
name="$1"; shift
file="$1"; shift
case "$node_type" in
script)
name="$node_type"
file="$1"; shift
desc="${file%.*} uboot ${file##*.}"
type="$node_type"
node_type="firmware"
;;
firmware)
name="$1"; shift
file="$1"; shift
desc="$name"
type="$node_type"
;;
esac
echo \
" ${name} {
description = \"${name}\";
description = \"${desc}\";
data = /incbin/(\"${file}\");
type = \"Firmware\";
type = \"${type}\";
arch = \"ARM\";
compression = \"none\";
hash@1 {