X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=target%2Flinux%2Fbrcm2708%2Fimage%2FMakefile;h=a9afa4e915d1d20994e30616966a5fb6b3648606;hb=a8098607af11422c9a0a80d1749458784c0cf1f4;hp=f96dccb09f578035c18dbf32c2593eeb93e74389;hpb=c7bcdac82ecd32cf1c552b486a92a58c312a7b1f;p=openwrt%2Fstaging%2Flynxis.git diff --git a/target/linux/brcm2708/image/Makefile b/target/linux/brcm2708/image/Makefile index f96dccb09f..a9afa4e915 100644 --- a/target/linux/brcm2708/image/Makefile +++ b/target/linux/brcm2708/image/Makefile @@ -1,15 +1,19 @@ # -# Copyright (C) 2012-2015 OpenWrt.org +# Copyright (C) 2012-2019 OpenWrt.org +# Copyright (C) 2016-2017 LEDE project # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/image.mk -include $(INCLUDE_DIR)/host.mk FAT32_BLOCK_SIZE=1024 -FAT32_BLOCKS=$(shell echo $$(($(CONFIG_BRCM2708_SD_BOOT_PARTSIZE)*1024*1024/$(FAT32_BLOCK_SIZE)))) +FAT32_BLOCKS=$(shell echo $$(($(CONFIG_TARGET_KERNEL_PARTSIZE)*1024*1024/$(FAT32_BLOCK_SIZE)))) + +define Build/Compile + $(CP) $(LINUX_DIR)/COPYING $(KDIR)/COPYING.linux +endef ### Image scripts ### define Build/kernel-img @@ -17,64 +21,130 @@ define Build/kernel-img mv $@.tmp $@ endef -define Build/boot-img +define Build/boot-common rm -f $@.boot mkfs.fat -C $@.boot $(FAT32_BLOCKS) - mcopy -i $@.boot $(KDIR)/bootcode.bin :: mcopy -i $@.boot $(KDIR)/COPYING.linux :: + mcopy -i $@.boot $(KDIR)/bootcode.bin :: mcopy -i $@.boot $(KDIR)/LICENCE.broadcom :: - mcopy -i $@.boot $(KDIR)/start.elf :: - mcopy -i $@.boot $(KDIR)/start_cd.elf :: - mcopy -i $@.boot $(KDIR)/fixup.dat :: - mcopy -i $@.boot $(KDIR)/fixup_cd.dat :: mcopy -i $@.boot cmdline.txt :: - mcopy -i $@.boot config.txt :: - mcopy -i $@.boot $(word 1,$^) ::kernel.img + mcopy -i $@.boot $(BOOT_CONFIG) ::config.txt + mcopy -i $@.boot $(IMAGE_KERNEL) ::$(KERNEL_IMG) $(foreach dts,$(shell echo $(DEVICE_DTS)),mcopy -i $@.boot $(DTS_DIR)/$(dts).dtb ::;) mmd -i $@.boot ::/overlays - mcopy -i $@.boot $(DTS_DIR)/overlays/*.dtb ::/overlays/ + mcopy -i $@.boot $(DTS_DIR)/overlays/*.dtbo ::/overlays/ mcopy -i $@.boot $(DTS_DIR)/overlays/README ::/overlays/ endef +define Build/boot-2708 + mcopy -i $@.boot $(KDIR)/start.elf :: + mcopy -i $@.boot $(KDIR)/start_cd.elf :: + mcopy -i $@.boot $(KDIR)/start_x.elf :: + mcopy -i $@.boot $(KDIR)/fixup.dat :: + mcopy -i $@.boot $(KDIR)/fixup_cd.dat :: + mcopy -i $@.boot $(KDIR)/fixup_x.dat :: +endef + +define Build/boot-2711 + mcopy -i $@.boot $(KDIR)/start4.elf :: + mcopy -i $@.boot $(KDIR)/start4cd.elf :: + mcopy -i $@.boot $(KDIR)/start4x.elf :: + mcopy -i $@.boot $(KDIR)/fixup4.dat :: + mcopy -i $@.boot $(KDIR)/fixup4cd.dat :: + mcopy -i $@.boot $(KDIR)/fixup4x.dat :: +endef + define Build/sdcard-img - ./gen_rpi_sdcard_img.sh $@ $@.boot $(word 2,$^) \ - $(CONFIG_BRCM2708_SD_BOOT_PARTSIZE) $(CONFIG_TARGET_ROOTFS_PARTSIZE) - $(if $(CONFIG_TARGET_IMAGES_GZIP),gzip -9n -c $@ > $(BIN_DIR)/$(notdir $@).gz) + ./gen_rpi_sdcard_img.sh $@ $@.boot $(IMAGE_ROOTFS) \ + $(CONFIG_TARGET_KERNEL_PARTSIZE) $(CONFIG_TARGET_ROOTFS_PARTSIZE) endef -### Device macros ### +### Devices ### define Device/Default - FILESYSTEMS := ext4 - PROFILES = Default $$(DEVICE_PROFILE) + DEVICE_VENDOR := Raspberry Pi KERNEL := kernel-bin | kernel-img - IMAGES := sdcard.img - IMAGE/sdcard.img := boot-img | sdcard-img - DEVICE_PROFILE := - DEVICE_DTS := + KERNEL_IMG := kernel.img + IMAGES := factory.img.gz sysupgrade.img.gz + IMAGE/sysupgrade.img.gz := boot-common | boot-2708 | sdcard-img | gzip | append-metadata + IMAGE/factory.img.gz := boot-common | boot-2708 | sdcard-img | gzip + BOOT_CONFIG := config.txt endef -DEVICE_VARS += DEVICE_PROFILE DEVICE_DTS -# $(1) = profile -# $(2) = image name -# $(3) = dts -define bcm270x - define Device/$(2) - DEVICE_PROFILE := $(1) - DEVICE_DTS := $(3) - endef - TARGET_DEVICES += $(2) +define Device/rpi + DEVICE_MODEL := B/B+/CM/Zero/ZeroW + DEVICE_DTS := bcm2708-rpi-b bcm2708-rpi-b-plus bcm2708-rpi-cm bcm2708-rpi-zero bcm2708-rpi-zero-w + SUPPORTED_DEVICES := \ + rpi-b rpi-b-plus rpi-cm rpi-zero rpi-zero-w \ + raspberrypi,model-b raspberrypi,model-b-plus raspberrypi,model-b-rev2 \ + raspberrypi,compute-module raspberrypi,compute-module-1 \ + raspberrypi,model-zero raspberrypi,model-zero-w + DEVICE_PACKAGES := \ + brcmfmac-firmware-43430-sdio \ + brcmfmac-firmware-43430-sdio-rpi-zero-w \ + kmod-brcmfmac wpad-basic endef - -### BCM2708/BCM2835 ### ifeq ($(SUBTARGET),bcm2708) - # Raspberry Pi Models B/B+/CM - $(eval $(call bcm270x,RaspberryPi,rpi,bcm2708-rpi-b bcm2708-rpi-b-plus bcm2708-rpi-cm)) + TARGET_DEVICES += rpi endif -### BCM2709/BCM2836 ### +define Device/rpi-2 + DEVICE_MODEL := 2B/3B/3B+/3CM/4B + DEVICE_DTS := bcm2709-rpi-2-b bcm2710-rpi-3-b bcm2710-rpi-3-b-plus bcm2711-rpi-4-b bcm2710-rpi-cm3 + SUPPORTED_DEVICES := \ + rpi-2-b rpi-3-b rpi-3-b-plus rpi-cm \ + raspberrypi,2-model-b \ + raspberrypi,3-model-b raspberrypi,3-model-b-plus \ + raspberrypi,3-compute-module raspberrypi,compute-module-3 \ + raspberrypi,4-model-b + DEVICE_PACKAGES := \ + brcmfmac-firmware-43430-sdio \ + brcmfmac-firmware-43430-sdio-rpi-3b \ + brcmfmac-firmware-43455-sdio brcmfmac-firmware-43455-clm_blob \ + brcmfmac-firmware-43455-sdio-rpi-3b-plus brcmfmac-firmware-43455-sdio-rpi-4b \ + kmod-brcmfmac wpad-basic + IMAGE/sysupgrade.img.gz := boot-common | boot-2708 | boot-2711 | sdcard-img | gzip | append-metadata + IMAGE/factory.img.gz := boot-common | boot-2708 | boot-2711 | sdcard-img | gzip +endef ifeq ($(SUBTARGET),bcm2709) - # Raspberry Pi 2 Model B - $(eval $(call bcm270x,RaspberryPi_2,rpi-2,bcm2709-rpi-2-b)) + TARGET_DEVICES += rpi-2 +endif + +define Device/rpi-3 + DEVICE_MODEL := 3B/3B+/3CM + KERNEL_IMG := kernel8.img + DEVICE_DTS := broadcom/bcm2710-rpi-3-b broadcom/bcm2710-rpi-3-b-plus broadcom/bcm2710-rpi-cm3 + SUPPORTED_DEVICES := \ + rpi-3-b rpi-3-b-plus \ + raspberrypi,3-model-b raspberrypi,3-model-b-plus \ + raspberrypi,3-compute-module raspberrypi,compute-module-3 + DEVICE_PACKAGES := \ + brcmfmac-firmware-43430-sdio \ + brcmfmac-firmware-43430-sdio-rpi-3b \ + brcmfmac-firmware-43455-sdio brcmfmac-firmware-43455-clm_blob \ + brcmfmac-firmware-43455-sdio-rpi-3b-plus \ + kmod-brcmfmac wpad-basic +endef +ifeq ($(SUBTARGET),bcm2710) + TARGET_DEVICES += rpi-3 +endif + +define Device/rpi-4 + DEVICE_MODEL := 4B + KERNEL_IMG := kernel8.img + DEVICE_TITLE := Raspberry Pi 4B + DEVICE_DTS := broadcom/bcm2711-rpi-4-b + SUPPORTED_DEVICES := \ + raspberrypi,4-model-b + DEVICE_PACKAGES := \ + brcmfmac-firmware-43455-sdio brcmfmac-firmware-43455-clm_blob \ + brcmfmac-firmware-43455-sdio-rpi-4b \ + kmod-brcmfmac wpad-basic + IMAGE/sysupgrade.img.gz := boot-common | boot-2711 | sdcard-img | gzip | append-metadata + IMAGE/factory.img.gz := boot-common | boot-2711 | sdcard-img | gzip + BOOT_CONFIG := config-bcm2711-arm64.txt +endef +ifeq ($(SUBTARGET),bcm2711) + TARGET_DEVICES += rpi-4 endif $(eval $(call BuildImage))