[PATCH] ipq40xx: add support for GL.iNet GL-B2200

Szabolcs Hubai szab.hu at gmail.com
Sun Oct 10 16:04:50 PDT 2021


Enrico Mioso <mrkiko.rs at gmail.com> ezt írta (időpont: 2021. okt. 10., V, 19:37):
>
> Hello Li,
> Hello Adrian,
> Hello Szabolcs,
> and all!!
>
> First of all, what's the state of this patch? Is it mergeable as-is, or are further changes required?
>
> Secondly, does this device require the use of zImage or will the u-boot happily load larger kernels?
> See commit 81d694e30b4926fea057bd3e46d996a8f098b95a authored by Szabolcs.
>
> Thanks a lot!
>
> Enrico
>
>
> On Mon, 13 Sep 2021, Li Zhang wrote:
>
> > Date: Mon, 13 Sep 2021 10:02:00
> > From: Li Zhang <li.zhang at gl-inet.com>
> > To: openwrt-devel at lists.openwrt.org
> > Cc: Li Zhang <li.zhang at gl-inet.com>
> > Subject: [PATCH] ipq40xx: add support for GL.iNet GL-B2200
> >
> > This patch adds supports for GL-B2200.
> >
> > Specifications:
> >       - SOC: Qualcomm IPQ4019 ARM Quad-Core
> >       - RAM: 512 MiB
> >       - Flash: 16 MiB NOR - SPI0
> >       - EMMC: 8GB EMMC
> >       - ETH: Qualcomm QCA8075
> >       - WLAN1: Qualcomm Atheros QCA4019 2.4GHz 802.11b/g/n 2x2
> >       - WLAN2: Qualcomm Atheros QCA4019 5GHz 802.11n/ac W2 2x2
> >       - WLAN3: Qualcomm Atheros QCA9886 5GHz 802.11n/ac W2 2x2
> >       - INPUT: Reset, WPS
> >       - LED: Power, Internet
> >       - UART1: On board pin header near to LED (3.3V, TX, RX, GND), 3.3V without pin - 115200 8N1
> >       - UART2: On board with BLE module
> >       - SPI1: On board socket for Zigbee module
> >
> > Update firmware instructions
> > ============================
> > Pleae update firmware on uboot web(default 192.168.1.1).
> >
> > Signed-off-by: Li Zhang <li.zhang at gl-inet.com>
> > ---
> > package/firmware/ipq-wifi/Makefile                 |   2 +
> > .../ipq-wifi/board-glinet_gl-b2200.qca4019         | Bin 0 -> 24308 bytes
> > .../ipq-wifi/board-glinet_gl-b2200.qca9888         | Bin 0 -> 12200 bytes
> > target/linux/ipq40xx/Makefile                      |   2 +-
> > .../ipq40xx/base-files/etc/board.d/02_network      |   5 +
> > .../etc/hotplug.d/firmware/11-ath10k-caldata       |   3 +
> > .../arch/arm/boot/dts/qcom-ipq4019-gl-b2200.dts    | 364 +++++++++++++++++++++
> > target/linux/ipq40xx/image/generic.mk              |  27 ++
> > .../patches-5.4/901-arm-boot-add-dts-files.patch   |   3 +-
> > 9 files changed, 404 insertions(+), 2 deletions(-)
> > create mode 100644 package/firmware/ipq-wifi/board-glinet_gl-b2200.qca4019
> > create mode 100644 package/firmware/ipq-wifi/board-glinet_gl-b2200.qca9888
> > create mode 100644 target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-gl-b2200.dts
> >
> > <SNIP>
> > diff --git a/target/linux/ipq40xx/image/generic.mk b/target/linux/ipq40xx/image/generic.mk
> > index 18f5d23..b0d6cf5 100644
> > --- a/target/linux/ipq40xx/image/generic.mk
> > +++ b/target/linux/ipq40xx/image/generic.mk
> > @@ -81,6 +81,17 @@ define Build/qsdk-ipq-factory-nand-askey
> >       @mv $@.new $@
> > endef
> >
> > +define Build/qsdk-ipq-app-gpt
> > +     cp $@ $@.tmp 2>/dev/null || true
> > +     ptgen -g -o $@.tmp -a 1 -l 1024 \
> > +                     -t 0x2e -N 0:HLOS -r -p 32M \
> > +                     -t 0x83 -N rootfs -r -p 128M \
> > +                             -N rootfs_data -p 512M \
> > +                             -N user_data -p 6766M
> > +     cat $@.tmp >> $@
> > +     rm $@.tmp
> > +endef
> > +
> > define Build/SenaoFW
> >       -$(STAGING_DIR_HOST)/bin/mksenaofw \
> >               -n $(BOARD_NAME) -r $(VENDOR_ID) -p $(1) \
> > @@ -506,6 +517,22 @@ define Device/glinet_gl-b1300
> > endef
> > TARGET_DEVICES += glinet_gl-b1300
> >
> > +define Device/glinet_gl-b2200
> > +     $(call Device/FitImage)
> > +     DEVICE_VENDOR := GL.iNet
> > +     DEVICE_MODEL := GL-B2200
> > +     SOC := qcom-ipq4019
> > +     DEVICE_DTS_CONFIG := config at ap.dk04.1-c3
> > +     KERNEL_INITRAMFS_SUFFIX := -recovery.itb
> > +     IMAGES := sdcard.img.gz
> > +     IMAGE/sdcard.img.gz := qsdk-ipq-app-gpt |\
> > +                             pad-to 1024k | append-kernel |\
> > +                             pad-to 33792k | append-rootfs |\
> > +                             append-metadata | gzip
> > +     DEVICE_PACKAGES := ipq-wifi-glinet_gl-b2200 kmod-fs-ext4 kmod-mmc kmod-spi-dev mkf2fs e2fsprogs kmod-fs-f2fs
> > +endef
> > +TARGET_DEVICES += glinet_gl-b2200
> > +
> > define Device/glinet_gl-s1300
> >       $(call Device/FitImage)
> >       DEVICE_VENDOR := GL.iNet
> > <SNIP>
> > --
> > 2.7.4
> >
> >
> >
> >

Hi Enrico,

In the device recipe "Device/glinet_gl-b2200" there is no
"KERNEL_SIZE", like in the other GL.Inet device recipe
"Device/glinet_gl-ap1300" which is already in tree.
While they use the same U-Boot binary [0], I hope these two devices
are able to load 4MB kernels already.

In the meantime Dongming answered my question on GL.Inet forums [1]:
> Thanks for that solution. It’s possible to load >4MB kernel after patching uboot [0]. I’ll do some test.



[0]: https://github.com/gl-inet/uboot-ipq40xx
[1]: https://forum.gl-inet.com/t/ipq40xx-kernel-size-and-u-boot-v5-10-is-too-big-for-4-mb/17619/4


Szabolcs



More information about the openwrt-devel mailing list