aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mediatek/base-files
Commit message (Collapse)AuthorAgeFilesLines
* mediatek: store random MAC address in U-Boot env on first bootDaniel Golle2022-01-231-0/+14
| | | | | | | For devboards without a MAC address assigned from factory, store the random MAC in U-Boot env on first boot to make it persistent. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: add support for Ubiquiti UniFi 6 LRDavid Bauer2021-02-181-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hardware -------- MediaTek MT7622 512MB DDR3 RAM 64M SPI-NOR Flash (Winbond W25Q512JV) MediaTek MT7622 802.11bgn 4T4R WMAC MediaTek MT7915 802.11ax 4T4R Marvell AQR1112 100/1000/2500 NBase-T PHY Holtek HT32F52241 LED controller Reset Switch UART ---- CPU UART0 at the pinout next to the Holtek MCU. Pinout (first pin next to SoC / MCU) 0 3V3 1 RX 2 TX 3 GND Settings are 115200 8N1. Opening the case ---------------- Opening the case is not a nice task, as itis glued together. Insert a flat knife between the front and back casing below the ethernet port. Open up a gap this way and insert a flat scredriver, remove the knife. Work your way around the casing by applying force to seperate the front and back casing. This losens the glue and opens the plastic clips. Be gentle, as these clips are very cheap and break quickly. Installation ------------ 1. Connect to the booted device at 192.168.1.20 using username/password "ubnt". 2. Transfer the OpenWrt sysupgrade image to the device using SCP. 3. Check the mtd partition number for bs / kernel0 / kernel1 $ cat /proc/mtd 4. Set the bootselect flag to boot from kernel0 $ dd if=/dev/zero bs=1 count=1 of=/dev/mtdblock6 5. Write the OpenWrt sysupgrade image to both kernel0 as well as kernel1 $ dd if=openwrt.bin of=/dev/mtdblock8 $ dd if=openwrt.bin of=/dev/mtdblock9 6. Reboot the device. It should boot into OpenWrt. Signed-off-by: David Bauer <mail@david-bauer.net>
* mediatek: disable packet steering by defaultFelix Fietkau2020-09-041-5/+0
| | | | | | | mt76 now spreads the load over multiple CPUs more smoothly, processing ethernet packets should be faster running on one core Signed-off-by: Felix Fietkau <nbd@nbd.name>
* target: replace remaining occurrences of ifconfig with ipAdrian Schmutzler2020-08-031-1/+1
| | | | | | | | | | | ifconfig is effectively deprecated for quite some time now. Let's replace the remaining occurrences for our target setup by the corresponding ip commands now. Note that this does not touch ar71xx, as it will be dropped anyway, and changing it would only make backports harder. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* mediatek: do not create device nodes in uci-defaults scriptSungbo Eo2020-07-091-16/+5
| | | | | | | | | Since commit 298814e6be76 ("base-files: config_generate: split macaddr with multiple ifaces") uci MAC address setup will create a device node for each member iface. But this script might override the device nodes and interfere with the MAC address setup. Signed-off-by: Sungbo Eo <mans0n@gorani.run>
* mediatek: fix IPv4-only corner case and commit in 99-net-psAdrian Schmutzler2020-06-161-1/+4
| | | | | | | | | | | | | | | | The uci config section network.globals set up in /bin/config_generate will only be created if /proc/sys/net/ipv6 exists. Correspondingly, lacking IPv6 support, the command uci set network.globals.packet_steering=1 will fail with "uci: Invalid argument" as the network.globals config has not been set up. Fix that by adding the setup there as well. While at it, limit the uci commit to the network config file. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* treewide: drop shebang from non-executable target filesAdrian Schmutzler2020-06-162-4/+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: update uci-defaults for renamed smp packet steering optionAlan Swanson2020-03-031-4/+1
| | | | | | | | Leave as enabled by default for mediatek. Also remove obsolete settings from when packet steering was moved from netifd to a simplified hotplug script. Signed-off-by: Alan Swanson <reiver@improbability.net>
* mediatek: split base-files into subtargetsAdrian Schmutzler2020-01-144-177/+0
| | | | | | | | | | | | | | | 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>
* treewide: use new procd sysupgrade $UPGRADE_BACKUP variableRafał Miłecki2019-09-051-1/+1
| | | | | | | | | | It's a variable set by procd that should replace hardcoded /tmp/sysupgrade.tgz. This change requires the most recent procd with the commit 0f3c136 ("sysupgrade: set UPGRADE_BACKUP env variable"). Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* treewide: when copying a backup file always specify dest nameRafał Miłecki2019-09-051-1/+1
| | | | | | | $CONF_TAR shouldn't be assumed to always point to the sysupgrade.tgz. This change makes code more generic and allows refactoring $CONF_TAR. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* treewide: don't hardcode "sysupgrade.tgz" file nameRafał Miłecki2019-09-051-1/+3
| | | | | | | | 1) Add BACKUP_FILE and use it when copying an archive to be restored after sysupgrade (on the next preinit). 2) Use CONF_TAR for copying backup prepared by the /sbin/sysupgrade Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mediatek: add v4.19 supportJohn Crispin2019-08-021-0/+14
| | | | | | | | Bump the target to v4.19. Add a patch with additional eth driver fixes/features that MTK provided aswell as the driver for the new mt7530 switch. Signed-off-by: John Crispin <john@phrozen.org>
* treewide: sysupgrade: don't use $ARGV in platform_do_upgrade()Rafał Miłecki2019-07-171-1/+1
| | | | | | | stage2 passes image path to platform_do_upgrade() as an argument so it can be simply accessed using $1 Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mediatek: Add support for the UniElec U7623-02Kristian Evensen2018-06-224-7/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-242-43/+23
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* treewide: move nand_do_upgrade call to platform_do_upgradeMathias Kresin2018-02-161-5/+13
| | | | | | | | | | Calling nand_do_upgrade() from platform_pre_upgrade() was deprecated with 30f61a34b4cf ("base-files: always use staged sysupgrade"). Update the platform upgrade code to use platform_do_upgrade() for NAND images as well. Signed-off-by: Mathias Kresin <dev@kresin.me>
* mediatek: bump to v4.14John Crispin2018-02-146-165/+3
| | | | | | | This drops support for all the !emmc EVB and adds banannaPi-R2 Also drop mtkhnat until the nftables offoad driver is ready Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: update to latest kernel patchset from v4.13-rcJohn Crispin2017-08-188-0/+172
| | | | | | Signed-off-by: Muciri Gatimu <muciri@openmesh.com> Signed-off-by: Shashidhar Lakkavalli <shashidhar.lakkavalli@openmesh.com> Signed-off-by: John Crispin <john@phrozen.org>
* treewide: use only board_name function to get nameMathias Kresin2017-07-151-4/+3
| | | | | | | | | | | | Do not parse /tmp/sysinfo/board_name, /proc/cpuinfo or the device tree compatible string directly. Always use the board_name function to get the board name. The admswconfig package still reads /proc/cpuinfo directly. The code looks somehow broken and the whole adm5120 which uses this package looks unmaintained. Leave it as it is for now. Signed-off-by: Mathias Kresin <dev@kresin.me>
* mediatek: fix sysupgrade board detectionJohn Crispin2017-04-241-3/+5
| | | | | | | boardnames were changed with the recent target update. the sysupgrade board detection was not updated properly. Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: add support for the NAND-ePHY boardJohn Crispin2017-04-241-1/+5
| | | | | | This is the same as the NAND board but gmac1 is wired to an external phy. Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: various fixes for v4.9John Crispin2017-04-075-63/+14
| | | | | | | | | | | | | | | * adds MT7530 DSA support * backport latest ethernet driver * add PMIC leds * add auxadc support * add efuse support * add thermal sensor support * add irq affinity support for ethernet still todo * DSA multi cpu support Signed-off-by: John Crispin <john@phrozen.org>
* ar71xx/ipq806x/mediatek/mvebu: fix network defaultsJo-Philipp Wich2017-02-071-1/+1
| | | | | | | | | | | After "73d923e base-files: emit tagged switch configuration by default" some default network configurations are broken because the lan and wan ifnames are forcibly set to untagged netdevs. Adjust the offending set_interfaces_lan_wan() calls to use the proper tagged device names. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* medaitek: convert the NAND target to UBIJohn Crispin2016-06-171-1/+13
| | | | Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: update patchesJohn Crispin2016-05-231-0/+2
| | | | | | | * fixes NAND * adds latest ethernet patches Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: sync patches and add more ethernet stability fixesblogic2016-05-101-0/+3
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 49265
* mediatek: sync and patches add support for several boardsJohn Crispin2016-04-282-2/+46
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 49263
* image / basefiles: make console password configurableJohn Crispin2016-04-181-1/+1
| | | | | Signed-off-by: Daniel Dickinson <openwrt@daniel.thecshore.com> Signed-off-by: John Crispin <john@phrozen.org>
* mediatek: update patchesJohn Crispin2016-04-261-0/+4
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 49243
* mediatek: update patchesJohn Crispin2016-03-221-2/+2
| | | | | | | | fixes trgmii on old eco and adds nand support Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 49066
* mediatek: bump to v4.4John Crispin2016-03-212-2/+28
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 49064
* mediatek: add support for the new MT7623 Arm SoCJohn Crispin2015-11-023-0/+48
the support is still WIP. next steps are to make the pmic and ethernet work. this is the first commit to make sure nothing gets lost. Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 47354