aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mediatek/image/mt7623.mk
Commit message (Collapse)AuthorAgeFilesLines
* mediatek: fix, clean and unify SD card image generationDaniel Golle2023-05-291-4/+6
| | | | | | | | Make sure sub-images on the SD card are size-checked, allow generating SD card without squashfs and/or initramfs. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 43d27b02522c100b0c625d4b22f4bb6ad83c166f)
* mediatek: mt7623: build SD card without all filesystemsDaniel Golle2023-05-241-0/+8
| | | | | | | | | Allow building SD card images without having both initramfs and squashfs present on the card, just like it has already been done for the mt7622 and filogic subtargets. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit d6fef27f2dd4a852ed7846e4aa5f06dcd8df91b6)
* mediatek: introduce KERNEL_LOADADDR to Device/Default templateDaniel Golle2023-04-051-1/+0
| | | | | | | | | | | | | | | | | | We need to reset KERNEL_LOADADDR if we use it on a per-device base. Otherwise the previous value will be kept in case a device doesn't define KERNEL_LOADADDR and relies on the default. Move initializing KERNEL_LOADADDR to target/linux/mediatek/image/Makefile, similar to how it's done also on the ramips target. This fixes image size related breakage on devices which rely on the default value of KERNEL_LOADADDR. While at it use 0x48000000 which is more common than the previous default 0x44000000 for the filogic subtarget. Fixed: e7c399bee6 ("filogic: add support for ASUS TUF-AX4200") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: simplify partition generationDaniel Golle2022-01-311-6/+1
| | | | | | | | | The two options 'emmc' and 'sdmmc' now became identical lines after introducing CONFIG_TARGET_ROOTFS_PARTSIZE. Remove the now useless if-clauses. Fixes: a40b4d335a ("mediatek: use CONFIG_TARGET_ROOTFS_PARTSIZE") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: include regular AHCI PCI driverDaniel Golle2022-01-251-1/+1
| | | | | | | | | The legacy image for the UniElec U7623-02 until now included kmod-ata-ahci-mtk. The MT7623 chip doesn't have that IP and that board uses a PCIe-connected AHCI controller for the SATA port and mSATA-pins of the mPCIe socket. Hence include kmod-ata-ahci instead. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-envtools: add configuration for UniElec U7623 boardDaniel Golle2022-01-231-5/+5
| | | | | | | Add U-Boot env settings to allow accessing the environment using fw_printenv and fw_setenv tools on the UniElec U7623 board. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: rework images for U7623-02 boardDaniel Golle2022-01-231-58/+52
| | | | | | | | | | | | | | | | | | | | | | Users of older OpenWrt versions need sysupgrade using the *emmc.img.gz file once which will upgrade U-Boot and switch to the new image layout. Users of the vendor firmware need to first flash the legacy image to then sunsequently carry out a full-flash upgrade. Alternatively the board can also be flashed using MediaTek's proprietary SP Flash Tool. Configuration as well as persistent MAC address will be lost once at this point and you will have to redo (or restore) all configuration manually. To restore the previous persistent MAC address users may set it manually using fw_setenv ethaddr 00:11:22:33:44:55 For future upgrades once running OpenWrt past this commit, the usual *sysupgrade.itb file can be used. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: use CONFIG_TARGET_ROOTFS_PARTSIZEDaniel Golle2022-01-231-2/+2
| | | | | | | Enable 'rootfs-part' feature to make the size of the partition of the production image configurable instead of hard-coding it. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: yet another legacy image variable restoredDaniel Golle2021-07-211-0/+6
| | | | | | | Restore BOOTFS_BLOCKS variable until U7623 gets brushed, so things hopefully build now. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: allow build without ext4 rootfsDaniel Golle2021-07-211-1/+1
| | | | | | | | | | The image generation code for the U7623 board expects ext4 filesystem to be selected in menuconfig and CONFIG_TARGET_ROOTFS_PARTSIZE to be defined. Now that ext4 isn't enabled any more, the variable was missing and broke the build. Set the default (104) instead of using the config variable to fix that. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: add back needed build steps for U7623 boardDaniel Golle2021-07-211-0/+21
| | | | | | | | When reworking the BPi-R2 the mtk-mmc-img build step was removed despite it was still needed to build the image for the UniElec U7623 board. Add it back for now until U7623 gets its facelift. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: drop kmod-mmcDaniel Golle2021-07-201-1/+1
| | | | | | | Support for MMC is built-into the kernel anyway, no need to select the (empty/stub) kmod package. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: rework Bananapi BPi-R2Daniel Golle2021-07-201-40/+104
| | | | | | | | | | | | | * introduce recovery (=initramfs) vs. production dual boot scheme * make use of uImage.FIT (instead of FAT partition) * generate images using build steps (instead of external scripts) * simplify sysupgrade and config restore (thanks to uImage.FIT) * make sure mmc devices are ordered persistently (set DT aliases) This commit breaks sysupgrade from existing installations, you will have to re-install using the sdcard.img.gz image. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: move mt7623a-unielec-u7623*.dts* out of patchDaniel Golle2021-02-191-0/+2
| | | | | | | Instead of adding those device tree sources using a patch, simply move them to the newly created dts folder. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: add full system image for UniElec U7623David Woodhouse2020-07-261-3/+27
| | | | | | | | | | | | | This adds a full eMMC image including U-Boot, which means that the kernel can inherit the true RAM size detected by the preloader. As implemented in previous commits, sysupgrade to this image from the legacy layout (and via that, from the vendor-installed image) is supported. Rename the legacy image for the 512MiB board, for clarity. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: mt7623: rename gen_banana_pi_img.sh → gen_mtk_mmc_img.shDavid Woodhouse2020-07-261-7/+7
| | | | | | | As I buy more hardware and continue to work on consolidation, This will apply to a lot of MediaTek platforms; rename it accordingly. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: mt7623: make gen_banana_pi_img.sh more genericDavid Woodhouse2020-07-261-7/+11
| | | | | | | | | | | This actually covers fairly much all the MediaTek platforms; they only have different images because they don't include the preloader and U-Boot, and rely on preinstalled stuff from the vendor. So this script can slowly take over the world as we complete the support for various other platforms, starting with UniElec U7623… Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: mt7623: add scatter file for unbricking with SP Flash ToolDavid Woodhouse2020-07-261-0/+13
| | | | | | | | | | | | | | | | | | | | Many MediaTek SoCs can be unbricked by using the SP Flash Tool from http://spflashtool.com/ along with a "scatter list" file, which is just a text file listing which image gets loaded where. We use a trivial partition layout for the tool, with the whole eMMC image as a single "partition", which means users just need to unzip the sysupgrade image. Doing the real partition layout would be overly complex and would require the individual partitions to be shipped as artifacts — or users to extract them out of the sysupgrade image just for the tool to put them adjacent to each other on the eMMC anyway. The tool does require a copy of the preloader in order to operate, even when it isn't flashing the preloader to the eMMC boot region. So drop that into the bin directory as an artifact too. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: mt7623: build lzma fit for bpi-r2Chuanhong Guo2020-07-261-3/+0
| | | | | | | | | bpi-r2 images are shipped with mainline u-boot which can extract lzma with no problem. remove custom kernel recipe to build lzma fit image instead of uncompressed fit with zboot. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* mediatek: remove condition in Device/DefaultAdrian Schmutzler2020-07-251-5/+9
| | | | | | | | | | | | | | | | The current condition with part of the variables set dependent on the subtarget in Device/Default isn't really nice to read and also defeats the purpose of having a default node. This removes the special settings for mt7623 and moves them to the individual devices, which is not much of a problem as there are actually just two of them and they partly use different settings anyway. While at it, slightly adjust the order of variables and wrap some long lines. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: add SD card image creation for Banana Pi R2David Woodhouse2020-07-081-0/+30
| | | | | | Based on work by Alexey Loukianov <lx2@lexa2.ru> and others. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: enable SATA for mt7623David Woodhouse2020-07-081-2/+2
| | | | | | | The MT7623 SoC has the same SATA block as the MT7622, so enable it in MT7623 builds too and add it to the DEVICE_PACKAGES for those boards. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek/mt7623: unify features and packages, add ext4 and usbDavid Woodhouse2020-07-081-2/+4
| | | | | | | | The supported MT7623 boards are mostly identical (what with being a System-on-Chip and all), so unify the DEVICE_PACKAGES for them, and add ext4 and usb support for them. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: tidy up image subtarget MakefilesSungbo Eo2020-06-071-9/+10
| | | | | | | | | | - sort device recipes alphabetically - adjust board name of ELECOM WRC-2533GENT - harmonize line wrapping Signed-off-by: Sungbo Eo <mans0n@gorani.run> [rebased] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: fix image buildingJohn Crispin2020-05-041-0/+2
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: add latest fixes provided by MTKJohn Crispin2020-02-251-3/+3
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: use consistent naming scheme for device nodesAdrian Schmutzler2020-01-261-8/+6
| | | | | | | | | | | | | | | | | | | | | This harmonizes the device node names (and thus the image names, too) between subtargets of the mediatek target. So far, each subtarget has somewhat used its own naming scheme. Now, we use the vendor_device syntax there, too. Since DTS names have different patterns and the target only contains a few devices, this does not replace DEVICE_DTS by a calculated default value (like for other targets). SUPPORTED_DEVICES is adjusted based on the node rename where necessary, though it looks like for several older devices it was not set up correctly so far. While at it, this also changes the DTS name for u7623-02-emmc-512m to all-lower-case. Cc: John Crispin <john@phrozen.org> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: split up DEVICE_TITLEMoritz Warning2019-10-191-2/+5
| | | | | | DEVICE_TITLE is split up into DEVICE_VENDOR, DEVICE_MODEL and DEVICE_VARIANT Signed-off-by: Moritz Warning <moritzwarning@web.de>
* mediatek: Add support for the UniElec U7623-02Kristian Evensen2018-06-221-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for the MT7623A-based UniElec U7623-02 router, with eMMC storage and 512MB RAM. The router can be delivered with NAND Flash and more memory, but I only have access to the one configuration. The DTS is structured in such a way that adding support for more/different storage/memory should be straight forward. The device has the following specifications: * MT7623A (quad-core, 1.3 GHz) * 512MB RAM (DDR3) * 8GB storage (eMMC 4.5) * 2x normal miniPCIe slots * 1x miniPCIe slot that is connected via an internal USB OTG port * 5x 1Gbps Ethernet (MT7530 switch) * 1x UART header * 1x USB 3.0 port * 1x SATA 3.0 * 1x 40P*0.5mm FPC for MIPI LCD * 1x SIM slot * 12x LEDs (2 GPIO controlled) * 1x reset button * 1x DC jack for main power (12V) The following has been tested and is working: * Ethernet switch * miniPCIe slots (tested with Wi-Fi cards) * USB 3.0 port * sysupgrade * reset button Not working: * The miniPCIe connected via USB OTG. For the port to work, some MUSB glue must be added. I am currently in the process of porting the glue from the vendor SDK. Not tested: * SATA 3.0 * MIPI LCD Installation: The board ships with u-boot, and the first installation needs to be done via the bootloader using tftp. Step number one is to update the MBR of the eMMC, as the one that ships with the device is broken. Since the device can ship with different storage sizes, I will not provide the exact steps for creating a valid MBR. However, I have made some assumptions about the disk layout - there must be one 8MB recovery partition (FAT32) and a partition for the rootfs (Linux). The board loads the kernel from block 0xA00 (2560) and I have reserved 32MB for the kernel (65536 blocks). I have aligned the partitions on the erase block size (4096 byte), so the recovery partition must start on block 69632 and end on 86016 (16385 sectors). The rootfs is assumed to start on sector 90112. In order to install the mbr, you run the following commands from the u-boot command line: * tftpboot ${loadaddr} <name of mbr file> * mmc device 0 * mmc write ${loadaddr} 0x00 1 Run the following commands to install + boot OpenWRT: * tftpboot ${loadaddr} openwrt-mediatek-mt7623-7623a-unielec-u7623-02-emmc-512m-squashfs-sysupgrade-emmc.bin.gz * run boot_wr_img * run boot_rd_img * bootm Recovery: In order to recover the router, you need to follow the installation steps above (no need to replace MBR). Notes: * F2FS is used as the overlay filesystem. * The device does not ship with any valid MAC address, so a random address has to be generated. As a work-around, I write the initial random MAC to a file on the recovery partition. The MAC of the WAN interface is set to the MAC-address contained in this file on each boot, and the address of the LAN-interfaces are WAN + 1. The MAC file is kept across sysupgrade/firstboot. My approach is slightly different than what the stock image does. The first fives bytes of the MAC addresses in the stock image are static, and then the last byte is random. I believe it is better to create fully random MAC addresses. * In order to support the miniPCIe-slots, I needed to add missing pcie-nodes to mt7623.dtsi. The nodes are just c&p from the upstream dtsi. * One of the USB3.0 phys (u3phy2) on the board can be used as either USB or PCI, and one of the wifi-cards is connected to this phy. In order to support switching the phy from USB to PCI, I needed to patch the phy-driver. The patch is based on a rejected (at least last time I checked) PCI-driver submitted to the linux-mediatek mailing list. * The eMMC is configured to boot from the user area, and according to the data sheet of the eMMC this value can't be changed. * I tried to structure the MBR more nicely and use for example a FAT32-parition for the kernel, so that we don't need to write/read from some offset. The bootloader does not support reading from FAT32-paritions. While the command (fatload) is there, it just throws an error when I try to use it. * I will submit and hope to get the DTS for the device accepted upstream. If and when that happens, I will update the patches accordingly. Signed-off-by: Kristian Evensen <kristian.evensen@gmail.com>
* mediatek: backport upstream mediatek patchesJohn Crispin2018-05-241-0/+6
Signed-off-by: John Crispin <john@phrozen.org>