aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mediatek/mt7623
Commit message (Collapse)AuthorAgeFilesLines
* mediatek: filogic: add driver for Richtek RT5190A regulatorDaniel Golle2023-05-241-0/+1
| | | | | | | | | The Richtek RT5190A is used on the MT7988 reference board. Backport and enable the driver on the filogic subtarget, so we can support cpufreq on the MT7988 reference board. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit a3cf3e2c489d5b6f534d1b4d6f7b462f81c9c141)
* generic: mt7530: backport support for the MT7988 built-in switchDaniel Golle2023-05-241-0/+2
| | | | | | | | | | | | | | | | | Backport commits adding support for the MT7988 built-in switch to the mt7530 driver. This change results in the Kconfig symbol NET_DSA_MT7530 to be extended by NET_DSA_MT7530_MDIO (everything formally covered by NET_DSA_MT7530) and NET_DSA_MT7530_MMIO (a new driver for the MMIO-connected built-in switch of the MT7988 SoC). Select NET_DSA_MT7530_MDIO for all targets previously selecting NET_DSA_MT7530, with the exception of mediatek/filogic which also selects NET_DSA_MT7530_MMIO. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 958fdf36e35c814eb83faf2c39db4ca379c921b5)
* mediatek: add mt7988 clock drivers supportSam Shih2023-05-241-0/+1
| | | | | | | | This adds clock drivers for the MediaTek MT7988 SoC Signed-off-by: Sam Shih <sam.shih@mediatek.com> Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit b33c1858767e5109913ac2195ec2b2b8ef0e726a)
* generic: enable CONFIG_ARM_CRYPTO for 32bit arm targetsLu jicong2023-05-101-0/+1
| | | | | | | Fix following error when building 32bit arm targets with kmod-crypto-sha512 ERROR: module '/home/user/openwrt/build_dir/target-arm_xscale_musl_eabi/linux-kirkwood_generic/linux-5.15.109/arch/arm/crypto/sha512-arm.ko' is missing. Signed-off-by: Lu jicong <jiconglu58@gmail.com>
* generic: refresh 5.15 kernel configLu jicong2023-05-101-1/+1
| | | | | | prepare for enabling CONFIG_ARM_CRYPTO on these targets Signed-off-by: Lu jicong <jiconglu58@gmail.com>
* kernel: improve handling of CONFIG_IO_URINGTony Ambardar2023-05-031-1/+0
| | | | | | | | | | | | | | | | | | | | | | Kernel setting CONFIG_IO_URING supports high-performance I/O for file access and servers, generally for more performant platforms, and adds ~45 KB to kernel sizes. The need for this on less "beefy" devices is questionable, as is the size cost considering many platforms have kernel size limits which require tricky repartitioning if outgrown. The size cost is also large relative to the ~180 KB bump expected between major OpenWRT kernel releases. No OpenWrt packages have hard dependencies on this; samba4 and mariadb can take advantage if available (+KERNEL_IO_URING:liburing) but otherwise build and work fine. Since CONFIG_IO_URING is already managed via the KERNEL_IO_URING setting in Config-kernel.in (default Y), remove it from those target configs which unconditionally enable it, and update the defaults to enable it conditionally only on more powerful 64-bit x86 and arm devices. It may still be manually enabled as needed for high-performance custom builds. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* mediatek: add support for built-in GE PHYs of newer SoCsDaniel Golle2023-03-271-0/+1
| | | | | | | | | | | MT7981 and the upcoming MT7988 have built-in Gigabit Ethernet PHYs. While they share some design properties with the PHYs present in MT753x, they do need calibration data from the SoC's efuse. Add driver to support them. Upstreaming it is planned, but there are still some ongoing discussions with MediaTek. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: backport clk driver for MT7981 SoCDaniel Golle2023-03-271-0/+1
| | | | | | | Backport driver for common clocks in MT7981 SoC. The driver has also been submitted upstream and became part of Linux 6.3. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* treewide: update NVMEM symbolsRafał Miłecki2023-01-071-1/+1
| | | | | Fixes: 8dfe69cdfc5c ("kernel: update nvmem subsystem to the latest upstream") Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
* mediatek: mt7623: build mt6577_auxadc driver into kernelDaniel Golle2022-12-051-0/+2
| | | | | | | | | Set CONFIG_MT6577_AUXADC=y as otherwise reading temperature of the thermal-zone doesn't work on MT7623 (it does work fine without this driver on MT7622 and MT7986). Fixes: f2ae4e2f8c ("mediatek: clean up platform kernel modules") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: disable swconfigAleksander Jan Bajkowski2022-11-181-1/+0
| | | | | | | | | | | | | | | | The mt7623 subtarget supports 2 devices: * Bananapi BPi-R2 (added in 1f068588efddf0175e954ffc07ec8478bddd52c7, 7762c07c88980cff85ec20c12f18cd172260e9d9), * UniElec U7623-02 (added in 4def81f30f2e89eeecc6ec06e3091f1dd6b3c3d9). Both devices support DSA from the beginning, thus swconfig can be safely disabled. In the past, the subtarget mt7623 also supported the mt7623 reference board. This board originally supported swconfig, and was later converted to DSA (64175ffb7911f5fcd3907df09fdb9bfab53ee641) and then dropped (1ab81bf02d750c9a2a447dbf4fdb323921f291d7). Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* mediatek: mt7623: refresh configAleksander Jan Bajkowski2022-11-181-4/+3
| | | | | | | This was done by executing these command: $ time make kernel_oldconfig CONFIG_TARGET=subtarget Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* mediatek: clean up platform kernel modulesDaniel Golle2022-10-191-2/+0
| | | | | | | | | | | | | | Remove kmod-sdhci-mtk as the mtk-sd driver is built-in anyway for the relevant subtargets in order to support mounting rootfs from eMMC or SD card. Add kmod-iio-mt6577-auxadc to support reading the raw values from the auxadc unit used as in-SoC thermal sensor. This driver was previously built-in, but as thermal itself works well without it there is no use for it in every day use of a device. Build the module to still allow access to the raw values for those who need it. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: Move some IOMMU options to genericHauke Mehrtens2022-09-241-2/+0
| | | | | | | | | | | | This adds some missing IOMMU related options for x86/64 and moves some of them to generic for all targets. On x86 IOMMU_DEFAULT_DMA_LAZY is used by default, on all other platforms IOMMU_DEFAULT_DMA_STRICT is the default. we just follow the default kernel configuration here. Fixes: 8fea4a102ccd ("x86/64: enable IOMMU support") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mediatek: build USB XHCI support as moduleDaniel Golle2022-09-141-3/+0
| | | | | | | | Instead of always including the XHCI driver in the kernel on all MediaTek boards, selectively include the kernel module only on boards which actually make use of USB functionality. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: unset CONFIG_CMDLINE_OVERRIDE for all targets but mt7629Daniel Golle2022-09-121-0/+1
| | | | | | | | | | The newly introduced config symbol CONFIG_CMDLINE_OVERRIDE is only set for mt7629 for now which breaks automated build on all other mediatek subtargets. Make sure the symbol is configured as 'is not set' for all remaining subtargets. Fixes: c27279dc26 ("mediatek: add support for ipTIME A6004MX Add basic support for ipTIME A6004MX.") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: enable inside secure driver for MediaTek platformsDaniel Golle2022-08-281-1/+1
| | | | | | | | Older MT7623 ARMv7 SoC as well as new Filogic platforms come with inside-secure,safexcel-eip97 units. Enable them in DTS and select the driver kernel module by default on those platforms. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: add mt7986 soc support to the targetSam Shih2022-08-281-0/+2
| | | | | | | | | It will be supported by the new filogic subtarget Signed-off-by: Sam Shih <sam.shih@mediatek.com> Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org> Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: Activate CONFIG_GPIOLIB in generic configurationHauke Mehrtens2022-08-101-1/+0
| | | | | | | | All targets expect the malta target already activate the CONFIG_GPIOLIB option. Move it to generic kernel configuration and also activate it for malta. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: Activate CONFIG_INPUT_MISC on all targetsHauke Mehrtens2022-08-101-1/+0
| | | | | | | | | CONFIG_INPUT_MISC does not do any changes to the kernel image, it only shows some extra kernel configuration options. Activate it on all targets. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM]Tomasz Maciej Nowak2022-06-241-0/+2
| | | | | | | | | | | | This is now built-in, enable so it won't propagate on target configs. Link: https://lkml.org/lkml/2022/1/3/168 Fixes: 79e7a2552e89 ("kernel: bump 5.15 to 5.15.44") Fixes: 0ca93670693b ("kernel: bump 5.10 to 5.10.119") Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com> (Link to Kernel's commit taht made it built-in, CRYPTO_LIB_BLAKE2S[_ARM|_X86] as it's selectable, 5.10 backport) Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
* config: limit CONFIG_DEBUG_INFO to top-level generic configsTony Ambardar2022-05-181-1/+0
| | | | | | | | | | Remove redundant target-level entries, noting that these settings will be configured from "Kernel build options" of Kconfig. Signed-off-by: Tony Ambardar <itugrok@yahoo.com> Signed-off-by: Felix Fietkau <nbd@nbd.name> [remove from new configs introduced after patch submission] Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* mediatek: build ubnt-ledbar as a moduleChuanhong Guo2022-04-301-1/+0
| | | | | | | | The config for LEDS_UBNT_LEDBAR doesn't stay in mt7629 kconfig because of its I2C dependency. Build it as a module and let buildroot handle this config option instead. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* mediatek: mt7623: disable various input devicesChuanhong Guo2022-04-301-45/+1
| | | | | | | | Disable support for joysticks, micee and tablets. There's no actual driver selected in kconfig, and including kernel support is just a waste of space. Besides that, I believe nobody wants these on a router. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* mediatek: remove left-overs from Linux 5.10Daniel Golle2022-04-301-633/+0
| | | | | | | | Remove patches and configuration for Linux 5.10 which have been left in the tree despite the target having been switched to Linux 5.15. Fixes: c283defa88 ("mediatek: switch to 5.15") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: disable ecc engine supportChuanhong Guo2022-04-291-1/+1
| | | | | | There's no board using nand on this target atm. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* mediatek: mt7623 enable arch-timer with a patchChuanhong Guo2022-04-291-5/+2
| | | | | | | | | Last attempt on this has a typo and doen't work. It seems that this is a common problem occurring on every kernel bump, so let's enforce arch timer support for mt7623 with a patch instead. Fixes: 9a22943eb2 ("mediatek: 5.15: re-enable arch timer on MT7623 as well") Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
* mediatek: 5.15: re-enable arch timer on MT7623 as wellDaniel Golle2022-04-141-0/+1
| | | | | | Re-enable arch timer also on MT7623, yet another time. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: move some symbols to generic configAleksander Jan Bajkowski2022-04-091-6/+0
| | | | | | | | | | | | | | | | | | | This commit add some enabled symbols to generic config. LTO is only supported by clang compiler and therefore should be disabled in the generic config instead of duplicating this symbol in each target. CONFIG_LTO_NONE do this job. The second group of symbols is enabled by the options available in the generic config and is therefore added here: * CONFIG_AF_UNIX_OOB is selected by CONFIG_NET && CONFIG_UNIX, * CONFIG_BINARY_PRINTF is selected by CONFIG_BPF_SYSCALL, * CONFIG_NET_SOCK_MSG is selected by CONFIG_BPF_SYSCALL && CONFIG_NET. The other symbols are disabled and should be in the generic config. This commit also removes these symbols from subtargets. Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
* mediatek: add 5.15 config for mt7623 and mt7629Daniel Golle2022-03-271-0/+628
| | | | | | | Compile tested both with all kernel modules. Run-time tested mt7623 on BananaPi-R2. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: 5.10: allocate last level PTEs in high memoryRui Salvaterra2022-03-011-1/+1
| | | | | | | | | | Enable support for allocating user space page table entries in high memory [1], for the targets which support this feature. This saves precious low memory (permanently mapped, the only type of memory directly accessible by the kernel). [1] https://www.kernel.org/doc/html/latest/vm/highmem.html Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* mediatek: mt7623: drop RAMFS_COPY_BINDaniel Golle2022-02-221-2/+0
| | | | | | | fwtool is now always part of the sysupgrade stage2 ramdisk, so drop the no longer needed RAMFS_COPY_BIN variable. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: backport MediaTek Ethernet PHY driverDENG Qingfang2022-02-091-0/+1
| | | | | | | | | | | | | | Add support for MediaTek Gigabit Ethernet PHYs found in MT7530 and MT7531. Fix some link up/down issues. The errornous check for the PHY mode which broke things with MT7531 has been removed as suggested by patch net: phy: mediatek: remove PHY mode check on MT7531 As a result, things are working fine now on MT7622+MT7531 as well. Signed-off-by: DENG Qingfang <dqfext@gmail.com> Tested-by: Daniel Golle <daniel@makrotopia.org> Tested-by: Arınç ÜNAL <arinc.unal@arinc9.com> Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
* Revert "kernel: backport MediaTek Ethernet PHY driver"Hauke Mehrtens2022-02-051-1/+0
| | | | | | | | | | | | | | | | | | This reverts commit 8b4cba53a9402f44da2dced4a78ca065b15dca94. This broke the mt7530 on Linksys e8450 (mt7622) for me. [ 1.312943] mt7530 mdio-bus:00 lan1 (uninitialized): failed to connect to PHY: -EINVAL [ 1.320890] mt7530 mdio-bus:00 lan1 (uninitialized): error -22 setting up PHY for tree 0, switch 0, port 0 [ 1.331163] mt7530 mdio-bus:00 lan2 (uninitialized): failed to connect to PHY: -EINVAL [ 1.339085] mt7530 mdio-bus:00 lan2 (uninitialized): error -22 setting up PHY for tree 0, switch 0, port 1 [ 1.349321] mt7530 mdio-bus:00 lan3 (uninitialized): failed to connect to PHY: -EINVAL [ 1.357241] mt7530 mdio-bus:00 lan3 (uninitialized): error -22 setting up PHY for tree 0, switch 0, port 2 [ 1.367452] mt7530 mdio-bus:00 lan4 (uninitialized): failed to connect to PHY: -EINVAL [ 1.375367] mt7530 mdio-bus:00 lan4 (uninitialized): error -22 setting up PHY for tree 0, switch 0, port 3 [ 1.385750] mt7530 mdio-bus:00 wan (uninitialized): failed to connect to PHY: -EINVAL [ 1.393575] mt7530 mdio-bus:00 wan (uninitialized): error -22 setting up PHY for tree 0, switch 0, port 4 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kernel: backport MediaTek Ethernet PHY driverDENG Qingfang2022-02-051-0/+1
| | | | | | | | | Add support for MediaTek Gigabit Ethernet PHYs found in MT7530. Fix some link up/down issues. Signed-off-by: DENG Qingfang <dqfext@gmail.com> Tested-by: Arınç ÜNAL <arinc.unal@arinc9.com> Tested-by: Stijn Tintel <stijn@linux-ipv6.be>
* mediatek: mt7623: rework images for U7623-02 boardDaniel Golle2022-01-234-37/+21
| | | | | | | | | | | | | | | | | | | | | | 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: mt7623: Re-enable ARM arch timerDavid Woodhouse2022-01-101-0/+1
| | | | | | | | | CONFIG_ARM_ARCH_TIMER cannot be enabled in the config directly; it is only selected by CONFIG_HAVE_ARM_ARCH_TIMER. We need to enable the latter in our config. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Fixes: 4f1c5b01c1 ("mediatek: mt7623: backport musb, improve HDMI console")
* kernel: 5.10: consolidate mac80211 crypto optionsSergey Ryazanov2021-12-171-2/+0
| | | | | | | | | | | | | | | | | | | | | | Each of - CRYPTO_AEAD2 - CRYPTO_AEAD - CRYPTO_GF128MUL - CRYPTO_GHASH - CRYPTO_HASH2 - CRYPTO_HASH - CRYPTO_MANAGER2 - CRYPTO_MANAGER - CRYPTO_NULL2 either directly required for mac80211 crypto support, or directly selected by such options. Support for the mac80211 crypto was enabled in the generic config since c7182123b9 ("kernel: make cryptoapi support needed by mac80211 built-in"). So move the above options from the target configs to the generic config to make it clear why do we need them. CC: Felix Fietkau <nbd@nbd.name> Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* kernel: filter out both Clang and LLD versionsSergey Ryazanov2021-12-171-1/+0
| | | | | | | | Both CLANG_VERSION and LLD_VERISON are autogenerated runtime configuration options, so add them to the kernel configuration filter and remove from generic and per-target configs to keep configs clean. Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
* mediatek: mt7623: switch to BPi-R2 to generic eMMC sysugpradeDaniel Golle2021-12-021-16/+3
| | | | | | | Make use of new functions in emmc.sh to implement sysupgrade on the BananaPi BPi-R2. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: mt7623: re-write sysupgrade uImage.FIT on MMCDaniel Golle2021-11-122-16/+13
| | | | | | | | | | | | | | Re-reading the partition table doesn't work reliably, it fails if anything on the device is still in use and it's not trivial to prevent every possible case of a block device still being in use somehow. Therefore, instead of relying on the in-kernel partition parser to know where to write the configuration backup, use OpenWrt's format-agnostic fwtool to strip off all metadata from the image and count its blocks while writing. In that way we can know where to write the config backup without needing the kernel to parse the MBR and FIT structures. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: Set some options in generic configurationHauke Mehrtens2021-11-021-1/+0
| | | | | | | Add CONFIG_USB_ETH and CONFIG_PWM_JZ4740 to generic kernel configuration. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* mediatek: mt7623: make use of find_mmc_partDaniel Golle2021-11-011-5/+5
| | | | | | | Use find_mmc_part instead of previously introduced get_partition_by_name which requires a custom kernel patch. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: make sure MMC is not busy before commencing sysupgradeDaniel Golle2021-10-281-0/+1
| | | | | | | | | In case of the block device still being in use, re-reading the partition table fails. In that case, abort sysupgrade to avoid corrupting the just-written image because of wrong offsets caused by failure to re-read the partition table. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: enable configfs for DT overlay on mt7622 and mt7623Daniel Golle2021-10-091-0/+2
| | | | | | | | | Enable kernel options to allow loading device tree overlay via configfs at runtime. This is useful for devboards like the BPi-R2 and BPi-R64 which got RasbPi-compatible 40-pin GPIO header which allow all sorts of extensions. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mediatek: add FEATURES and order them alphabeticallyDaniel Golle2021-09-301-1/+1
| | | | | | | | Add common features 'gpio', 'nand', 'pci', 'pcie', 'squashfs' and 'usb' for all mediatek targets, add 'display' and 'usbgadget' for MT7623. Sort features alphabetically while at it. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: Set CONFIG_RCU_CPU_STALL_TIMEOUT=21Hauke Mehrtens2021-09-091-1/+0
| | | | | | | | | | | | The default value for CONFIG_RCU_CPU_STALL_TIMEOUT was changed from 60 seconds to 21 seconds in 2012 in the upstream kernel. Some targets already use 21 seconds. This patch changes the default value in the generic configuration to 21 seconds and removes the target specific configuration options. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Acked-by: Rui Salvaterra <rsalvaterra@gmail.com>
* kernel: move two symbols to the generic kconfigsRui Salvaterra2021-08-291-2/+0
| | | | | | | CONFIG_RCU_{NEED_SEGCBLIST,STALL_COMMON} are set basically everywhere. Move them to the generic kconfigs. And resort the generic kconfigs while at it. Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* kernel: disable CONFIG_RCU_EXPERT and friendsRui Salvaterra2021-08-291-1/+0
| | | | | | | | | | | | | | Based on the existing documentation [1][2], I dare anyone to demonstrate that we need to fine-tune these RCU parameters. The (performance) breakage potential for doing so is immense, so let's just please put down this loaded footgun. Disable CONFIG_RCU_EXPERT and its dependent symbols. Additionally, remove the CONFIG_RCU_EXPERT symbol from the target kconfigs which contain it. [1] https://www.kernel.org/doc/Documentation/RCU/Design/Data-Structures/Data-Structures.html [2] https://lwn.net/Articles/777214/ Signed-off-by: Rui Salvaterra <rsalvaterra@gmail.com>
* mediatek: mt7623: replace kconfig symbol for snand driverChuanhong Guo2021-08-271-1/+1
| | | | | | | this change was missing during the spi-nand driver replacement, causing build failure. Signed-off-by: Chuanhong Guo <gch981213@gmail.com>