[PATCH] rtl838x: clean up build instructions
Adrian Schmutzler
mail at adrianschmutzler.de
Tue Sep 29 13:44:54 EDT 2020
Hi,
> -----Original Message-----
> From: openwrt-devel [mailto:openwrt-devel-bounces at lists.openwrt.org]
> On Behalf Of Sander Vanheule
> Sent: Dienstag, 29. September 2020 18:20
> To: openwrt-devel at lists.openwrt.org
> Cc: Sander Vanheule <sander at svanheule.net>
> Subject: [PATCH] rtl838x: clean up build instructions
>
> The Device/Default recipe was defined, but never used. Move definitions
> that are not device-specific to Device/Default, and use it for allnet_all-
> sg8208m. This should make it more straightforward to add new devices.
>
> The modified uImage recipe can also be simplified, similar to how
> ath79/common-netgear.mk does it.
>
> Signed-off-by: Sander Vanheule <sander at svanheule.net>
> ---
> target/linux/rtl838x/image/Makefile | 24 ++++++++++--------------
> 1 file changed, 10 insertions(+), 14 deletions(-)
>
> diff --git a/target/linux/rtl838x/image/Makefile
> b/target/linux/rtl838x/image/Makefile
> index eef1fe0a33..0174e47449 100644
> --- a/target/linux/rtl838x/image/Makefile
> +++ b/target/linux/rtl838x/image/Makefile
> @@ -7,36 +7,32 @@ include $(INCLUDE_DIR)/image.mk KERNEL_LOADADDR
> = 0x80000000 KERNEL_ENTRY = 0x80000400
>
> -define Build/custom-uimage
> - mkimage -A $(LINUX_KARCH) \
> - -O linux -T kernel \
> - -C gzip -a $(KERNEL_LOADADDR) $(if $(UIMAGE_MAGIC),-M
> $(UIMAGE_MAGIC),) \
> - -e $(if
> $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
> - -n '$(1)' -d $@ $@.new
> - mv $@.new $@
> -endef
> +DEVICE_VARS += UIMAGE_MAGIC
>
> +define Build/realtek-uImage
> + $(call Build/uImage,$(1) $(if $(UIMAGE_MAGIC),-M
> $(UIMAGE_MAGIC),))
> +endef
I like the idea, but don't like this hack with the argument.
Either we can move the if here into image-commands.mk (which won't work if we need UIMAGE_MAGIC only for certain recipes ...), or I'd keep the old one.
>
> define Device/Default
> PROFILES = Default
> - KERNEL := kernel-bin | append-dtb | gzip | uImage gzip
> - KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | uImage gzip
> + KERNEL := kernel-bin | append-dtb | gzip | realtek-uImage gzip
So, can we assume that we always need the magic for this target?
> + KERNEL_INITRAMFS := $$(KERNEL)
> DEVICE_DTS_DIR := ../dts
> DEVICE_DTS = $$(SOC)_$(1)
> SUPPORTED_DEVICES := $(subst _,$(comma),$(1))
> IMAGES := sysupgrade.bin
> - IMAGE/sysupgrade.bin := append-kernel | pad-to 64k | append-rootfs |
> pad-rootfs | \
> - append-metadata | check-size
> + IMAGE/sysupgrade.bin := append-kernel | append-rootfs | \
> + append-metadata | check-size
I'm not sure whether this is correct, but it should be a separate change anyway.
> endef
>
> define Device/allnet_all-sg8208m
> + $(Device/Default)
Device/Default is added to all devices by default (if it's defined) automatically!
https://github.com/openwrt/openwrt/blob/master/include/image.mk#L696
So, this would actually add it a second time.
Best
Adrian
> SOC := rtl8382
> IMAGE_SIZE := 7168k
> DEVICE_VENDOR := ALLNET
> DEVICE_MODEL := ALL-SG8208M
> UIMAGE_MAGIC := 0x00000006
> - KERNEL := kernel-bin | append-dtb | gzip | custom-uimage 2.2.2.0
> - KERNEL_INITRAMFS := kernel-bin | append-dtb | gzip | custom-uimage
> 2.2.2.0
> + UIMAGE_NAME := 2.2.2.0
> DEVICE_PACKAGES := ip-full ip-bridge kmod-gpio-button-hotplug tc endef
> TARGET_DEVICES += allnet_all-sg8208m
> --
> 2.26.2
>
>
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: openpgp-digital-signature.asc
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://lists.openwrt.org/pipermail/openwrt-devel/attachments/20200929/2e822078/attachment.sig>
More information about the openwrt-devel
mailing list