aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mediatek/mt7623
Commit message (Collapse)AuthorAgeFilesLines
* mediatek: rework Bananapi BPi-R2Daniel Golle2021-07-203-28/+26
| | | | | | | | | | | | | * 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: mt7623: build with Linux 5.10Daniel Golle2021-07-202-90/+76
| | | | | | | | Update Kernel config and set Linux 5.10 for mediatek/mt7623. (patches have already been updated to 5.10 when mt7622 was bumped) Tested on Bananapi BPi-R2. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: Add missing config optionsHauke Mehrtens2021-05-011-0/+1
| | | | | | | | It is possible to select CONFIG_MTD_PARSER_TRX on the mediatek now. Add this option to the kernel configuration file. Fixes: 58c5e2566482 ("mediatek: support non standard trx magic values") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* treewide: switch the timer frequency to 100 HzRui Salvaterra2021-04-211-2/+0
| | | | | | | | Some targets select HZ=100, others HZ=250. There's no reason to select a higher timer frequency (and 100 Hz are available in every architecture), so change all targets to 100 Hz. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* treewide: remove redundant ubifs kconfig symbolsRui Salvaterra2021-04-211-4/+0
| | | | | | | For the targets which enable ubifs, these symbols are already part of the generic kconfigs. Drop them from the target kconfigs. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* kernel: move some disabled symbols to genericAleksander Jan Bajkowski2021-03-191-1/+0
| | | | | | Move some disabled symbols found in armvirt target to generic. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* treewide: remove execute bit and shebang from board.d filesAdrian Schmutzler2021-03-061-1/+0
| | | | | | | | | | | | | | | | So far, board.d files were having execute bit set and contained a shebang. However, they are just sourced in board_detect, with an apparantly unnecessary check for execute permission beforehand. Replace this check by one for existance and make the board.d files "normal" files, as would be expected in /etc anyway. Note: This removes an apparantly unused '#!/bin/sh /etc/rc.common' in target/linux/bcm47xx/base-files/etc/board.d/01_network Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: implement bad-block management table supportFelix Fietkau2021-02-281-0/+1
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mediatek: add Ubiquiti LED driverDavid Bauer2021-02-181-0/+1
| | | | | | | | | | | Add a driver for controlling the RGB LED via Ubiquitis own "LEDBAR" LED controller based on the Holtek HT32F52241 MCU. This driver is initially used by the Ubiquiti UniFi 6 LR, however judging from FCC pictures the MCU is also found on the U6-Mesh as well as the U6-Extender. Signed-off-by: David Bauer <mail@david-bauer.net>
* mediatek: remove generic profilesAdrian Schmutzler2021-01-271-15/+0
| | | | | | | | | | We have support for reference boards available on this target, so support for an additional generic profile does not make much sense. Remove it to have one thing less to maintain. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: Paul Spooren <mail@aparcar.org>
* kernel: move some disabled symbols to genericAleksander Jan Bajkowski2020-12-221-2/+0
| | | | | | Move some disabled config options found in lantiq target to generic. Signed-off-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl>
* kernel: remove support for kernel 4.19Adrian Schmutzler2020-10-301-509/+0
| | | | | | | We use 5.4 on all targets by default, and 4.19 has never been released in a stable version. There is no reason to keep it. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: move CONFIG_F2FS_CHECK_FS to generic kernel configHauke Mehrtens2020-10-111-1/+0
| | | | Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Move CONFIG_F2FS_FS_SECURITY to generic kernel configHauke Mehrtens2020-10-111-1/+0
| | | | | | | Move the CONFIG_F2FS_FS_SECURITY kernel configuration option to the generic kernel configuration. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Remove 2FS_FS_XATTR and F2FS_STAT_FS symbols from target configsHauke Mehrtens2020-10-112-3/+0
| | | | | | | This config option was moved to the generic kernel configuration. Fixes: ab1bd576562b ("kernel: move F2FS_FS_XATTR and F2FS_STAT_FS symbols to generic") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: clean up XATTR config symbolsPaul Spooren2020-10-091-1/+0
| | | | | | | | | | | | | Extended attributes are required for overlayfs and have hence been long ago enabled for jffs2, but should be enabled unconditionally for all other filesystems which may potentially serve as overlayfs' upper directory. Previously it was inconsistently added in multiple targets. Add symbols to generic kernel config and remove all *_XATTR symbols from target configs. Signed-off-by: Paul Spooren <mail@aparcar.org> [keep things as they are for squashfs, improve commit message] Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: unify CONFIG_GPIO_SYSFS in kernel configsFelix Fietkau2020-08-062-2/+0
| | | | | | Enable it for all platforms Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mediatek: mt7623: prepare for full sysupgrade support on UniElec U7623David Woodhouse2020-07-262-88/+117
| | | | | | | | | | | | | | | | | An upcoming commit will add a full system image for U7623 which will contain the MBR partition table and U-Boot too. That contrasts with the current image which only owns the eMMC from sector 0xa00 onwards, and must start with a legacy uImage. Prepare for sysupgrade to the new images, and cope with the fact that the recovery partition will be /dev/mmcblk0p2 instead of /dev/mmcblk0p1 after the upgrade. This commit could potentially be backported to 19.07 to allow for direct sysupgrade to the new image layout. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: mt7623: increase flexibility of finding recovery partitionDavid Woodhouse2020-07-261-8/+14
| | | | | | | I'm about to change the layout of the images for UniElec U7623 so make it find the recovery partition based on which the root partition is too. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: mt7623: fix sysupgrade from vendor OpenWrt on UniElec U7623David Woodhouse2020-07-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This board ships with an ancient 14.07-based OpenWrt using block2mtd, and the MBR partition table contains nonsense. It is possible to sysupgrade to an upstream OpenWrt image, but the legacy layout of the OpenWrt images start at 0xA00 in the eMMC, with a raw uImage. The legacy OpenWrt image doesn't "own" the beginning of the device, including the MBR and U-Boot. This means that when a user upgrades to upstream OpenWrt, it doesn't boot because it can't find the right partitions. So hard-code them on the kernel's command line using CONFIG_CMDLINE_PARTITION (for block). Additionally, the vendor firmware doesn't cope with images larger than about 36MiB, because it only overwrites the contents of its "firmware" MTD partition. The current layout of the legacy image wastes a lot of space, allowing over 32MiB for the kernel and another 10MiB for the FAT recovery file system which is only created as 3MiB. So pull those in to allow 4¾ MiB for the kernel, 3MiB for recovery, and then we have over 20MiB for the root file system. This doesn't affect the new images which ship with a full eMMC image including a different MBR layout and a partition for U-Boot, because our modern U-Boot can actually pass the command line to the kernel, and the built-in one doesn't get used anyway. Tested by upgrading from vendor OpenWrt to the current legacy image, from legacy to itself, to the previous legacy layout, and then to finally the full-system image. This commit probably wants backporting to 19.07, which also doesn't install over the vendor OpenWrt and doesn't even have a full-system installation option. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* treewide: kernel: drop redundant USB_EHCI_HCD=n config symbolPetr Štetiar2020-07-091-1/+0
| | | | | | | | | Commit e53ec043bae1 ("kirkwood: move usb support to modules") has moved this config symbol into generic configs, so it could be removed from other configs. Suggested-by: Aleksander Jan Bajkowski <A.Bajkowski@stud.elka.pw.edu.pl> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* mediatek: Implement sysupgrade support for Banana Pi R2David Woodhouse2020-07-082-11/+127
| | | | | | Based on work by Alexey Loukianov <lx2@lexa2.ru> and others. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: store MAC address in boot partition on Banana Pi R2David Woodhouse2020-07-081-23/+36
| | | | | | | | | | | Like many boards, the Banana Pi R2 doesn't have permanant storage of its MAC address, and we store the first random one that the kernel generates in order to use it later and at least be consistent. Store it in the FAT boot partition, just as the U7623 board (and others) do. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek/mt7623: unify features and packages, add ext4 and usbDavid Woodhouse2020-07-081-1/+1
| | | | | | | | 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: mt7623: refresh 5.4 kernel configDavid Woodhouse2020-07-081-0/+3
| | | | | | | Some options were not explicitly specified, causing the kernel build to drop to interactive mode. Set the missing options. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* mediatek: mt7623: refresh kernel 5.4 configSungbo Eo2020-06-161-44/+7
| | | | | | By running make kernel_oldconfig and selecting relevant options. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* treewide: drop shebang from non-executable target filesAdrian Schmutzler2020-06-162-2/+0
| | | | | | | | | | | | | | This drops the shebang from all target files for /lib and /etc/uci-defaults folders, as these are sourced and the shebang is useless. While at it, fix the executable flag on a few of these files. This does not touch ar71xx, as this target is just used for backporting now and applying cosmetic changes would just complicate things. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: drop v4.14 supportJohn Crispin2020-04-061-502/+0
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* kernel: 5.4: move some kconfig options to genericYousong Zhou2020-03-101-6/+0
| | | | | | | | | | | CONFIG_64BIT_TIME=y CONFIG_KASAN_STACK=1 CONFIG_UBSAN_ALIGNMENT=y CONFIG_UNIX_SCM=y CONFIG_DMA_DECLARE_COHERENT=y CONFIG_OF_RESERVED_MEM=y Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
* treewide: move commonly disabled symbols to generic configDavid Bauer2020-03-011-4/+0
| | | | | | | Move new commonly disabled kernel 5.4 symbols to the generic kernel configuration. Signed-off-by: David Bauer <mail@david-bauer.net>
* mediatek: add v5.4 supportMark-MC Lee (李明昌)2020-02-281-0/+571
| | | | Signed-off-by: Mark-MC Lee (李明昌) <Mark-MC.Lee@mediatek.com>
* mediatek: remove unnecessary execute permission bitSungbo Eo2020-02-041-0/+0
| | | | | | | | kernel config and patch files do not need to be executable. 644 is enough. Fixes: 01c8f2e97cc6 ("mediatek: bump to v4.19") Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* mediatek: bump to v4.19John Crispin2020-02-041-0/+515
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: mt7623: remove left-over fragments of mt7623a-rfb-emmcAdrian Schmutzler2020-01-301-4/+0
| | | | | | | | | | | | | | The image creation for the mt7623a-rfb-emmc has been removed during a patch refresh without specific comment. The corresponding base-files entries and DTS patches for 4.14 are still there. Since mt7623 is pretty dead and nobody has missed this device, let's just remove the rest. Fixes: 050da2107a7e ("mediatek: backport upstream mediatek patches") Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: John Crispin <john@phrozen.org>
* mediatek: split base-files into subtargetsAdrian Schmutzler2020-01-144-0/+176
| | | | | | | | | | | | | | | This splits some base-files across subtargets, as done previously on ath79 and ramips and also introduced for mt7629 subtarget here already. Most of the existing base-files content is specific to mt7623. While at it, apply the following fixes: - Remove lots of trailing whitespaces - Remove wildcard on unielec,u7623-02-emmc-512m - Remove inconsistent quotation marks in cases Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Acked-by: John Crispin <john@phrozen.org>
* kernel: bump 4.14 to 4.14.77Koen Vandeputte2018-10-191-0/+1
| | | | | | | | | | | | | | | Refreshed all patches. Altered patches: - 666-Add-support-for-MAP-E-FMRs-mesh-mode.patch New symbol for arm targets: - HARDEN_BRANCH_PREDICTOR Compile-tested on: ar71xx, cns3xxx, imx6 Runtime-tested on: ar71xx, cns3xxx, imx6 Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
* kernel: enable memory compactionFelix Fietkau2018-10-091-1/+0
| | | | | | | | | | | Compaction is the only memory management component to form high order (larger physically contiguous) memory blocks reliably. The page allocator relies on compaction heavily and the lack of the feature can lead to unexpected OOM killer invocations for high order memory requests. You shouldn't disable this option unless there really is a strong reason for it. Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Michal Hrusecky <michal.hrusecky@nic.cz>
* mediatek: Add support for the UniElec U7623-02Kristian Evensen2018-06-221-1/+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: add missing symbolsJohn Crispin2018-05-271-0/+1
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: backport upstream mediatek patchesJohn Crispin2018-05-243-0/+522
Signed-off-by: John Crispin <john@phrozen.org>