aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bmips
Commit message (Collapse)AuthorAgeFilesLines
* bmips: improve kernel patchesÁlvaro Fernández Rojas2023-05-1714-185/+181
| | | | | | | Add missing patch headers and regenerate the ones that contain an obsolete patch header. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: 5.15: comment unused macronix_nand_block_protection_supportChristian Marangi2023-05-121-0/+154
| | | | | | | | | | | | Comment unused function macronix_nand_block_protection_support since it does cause boot problem Fix compilation error: drivers/mtd/nand/raw/nand_macronix.c:220:13: error: 'macronix_nand_block_protection_support' defined but not used [-Werror=unused-function] 220 | static void macronix_nand_block_protection_support(struct nand_chip *chip) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
* bmips: fix external interrupt controllerÁlvaro Fernández Rojas2023-04-271-21/+2
| | | | | | | | | - irq_domain_add_simple() can't be used on bmips since interrupts aren't hardcoded with specific offsets for internal and external as opposed to bcm63xx. This is needed to avoid collisions with other interrupts. - remove unused bcm63xx-specific code. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: document GPIO external interruptsÁlvaro Fernández Rojas2023-04-2712-11/+51
| | | | | | | BCM63xx SoCs have an external interrupt controller which can be used for specific GPIO keys. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: increment polled keys interval to 100Álvaro Fernández Rojas2023-04-279-9/+9
| | | | | | | There's no need to poll the gpio keys every 20 ms and the linux kernel documentation suggests 100 ms. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: shg2500: add BCM4360 fallback SPROMÁlvaro Fernández Rojas2023-04-232-2/+16
| | | | | | | | Apart from the embedded BCM63268 wireless, this device has an external BCM4360 connected by PCIe which needs a fallback SPROM. b43 isn't enabled for this device because BCM4360 isn't supported (AC PHY). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: dgnd3700v2: add b43 wireless driverÁlvaro Fernández Rojas2023-04-231-0/+1
| | | | | | | | Apart from the embedded BCM6362 wireless, Netgear DGND3700v2 has external BCM43228 wireless connected by PCIe. Fallback SPROM isn't needed for this one because it has a physical SPROM. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: leds-sercomm-msp430: improve driverÁlvaro Fernández Rojas2023-04-231-3/+7
| | | | | | | - Add missing module functions. - Fix infinite pattern trigger by converting negative values to 0. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: enet: add missing module functionsÁlvaro Fernández Rojas2023-04-232-3/+14
| | | | | | | | | - Add missing MODULE_DEVICE_TABLE(). - Switch bcm6348-iudma to module_platform_driver(). - Add missing MODULE_AUTHOR, MODULE_DESCRIPTION, MODULE_LICENSE and MODULE_ALIAS. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: pci: use standard module functionsÁlvaro Fernández Rojas2023-04-233-24/+21
| | | | | | | late_initcall_sync() is no longer needed so standard module functions can be used on all bmips PCI/PCIe drivers. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: drop custom b43-sprom fixupsÁlvaro Fernández Rojas2023-04-232-1199/+0
| | | | | | b43-sprom fixups and no longer used and can be removed from bmips targets. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: switch to generic bcma/ssb fallback SPROMÁlvaro Fernández Rojas2023-04-2312-64/+12
| | | | | | | | Stop using bmips b43-sprom fixups and switch to generic bcma/ssb fallback SPROMs. This way we don't need to include the b43-sprom fixups on devices without Broadcom wireless. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: pci-bcm6348: load IO resource from DT rangesÁlvaro Fernández Rojas2023-04-183-28/+14
| | | | | | Correctly load IO resource from DT ranges and remove the specific IO resource. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: drop unneeded ath9k fixupÁlvaro Fernández Rojas2023-04-182-243/+1
| | | | | | | We no longer need the custom ath9k fixup now that we're using the standard kmod-owl-loader. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: hg556a: switch to kmod-owl-loaderÁlvaro Fernández Rojas2023-04-183-14/+66
| | | | | | Stop using custom ath9k fixup and switch to standard kmod-owl-loader Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: dts: add missing phy modesÁlvaro Fernández Rojas2023-04-105-0/+17
| | | | | | PHY modes should be defined in the device tree for the bcm63xx internal switch. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: remove source-only flagÁlvaro Fernández Rojas2023-04-101-1/+1
| | | | | | | | bmips target is now more stable and it's time to start generating buildbot images in order to receive a wider testing, which will be essential to replace bcm63xx target in the future. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: add subtargets for each SoCÁlvaro Fernández Rojas2023-04-1049-382/+2037
| | | | | | | | BMIPS is a generic arch that can be used for multiple Broadcom SoCs, each one with its own specific drivers, so instead of having a huge kernel supporting all of them, let's switch to a subtarget per SoC like other OpenWrt targets. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: b43-sprom: fix build when SSB/BCMA disabledÁlvaro Fernández Rojas2023-04-101-16/+16
| | | | | | Fix build of B43 SPROM fallback when SSB or BCMA are disabled. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: allow disabling mdio-mux-bcm6368Álvaro Fernández Rojas2023-04-101-0/+10
| | | | | | This controller is only present on SoCs with B53 MMAP switch. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: switch to LED kernel modulesÁlvaro Fernández Rojas2023-04-093-13/+19
| | | | | | | Disable LED controllers from kernel config and switch to per device kernel modules. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: add LED kernel modulesÁlvaro Fernández Rojas2023-04-091-0/+30
| | | | | | | Add BCM6328 and BCM6358 LED kernel modules. This allows selecting the LED controllers only for those devices using them. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: add support for Sercomm SHG2500Álvaro Fernández Rojas2023-04-096-1/+776
| | | | | | | | Sercomm SHG2500 is a BCM63168 with 128M of RAM, 256M of NAND, an external BCM53124S switch for the LAN ports and internal/external Broadcom wifi. LEDs are connected to an external MSP430G2513 MCU controlled via SPI. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: use sercomm-pid scriptÁlvaro Fernández Rojas2023-04-092-21/+14
| | | | | | | Make use of sercomm-pid script for generating the Sercomm PID, which avoids having to add an array of hex bytes for every new Sercomm device. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: image: rename SERCOMM_VERSION to SERCOMM_FSVERÁlvaro Fernández Rojas2023-04-092-7/+7
| | | | | | | SERCOMM_VERSION is ambiguous and it should be more clear that it refers to the version used for the filesystem. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6362/bcm63268: enable HW RNGÁlvaro Fernández Rojas2023-03-312-0/+24
| | | | | | | This enables the HW Random Number Generator on the BCM6362 and BCM63268 SoCs, which is the same one used on BCM6368 SoC. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6348-enet: register emac driver from iudmaÁlvaro Fernández Rojas2023-03-291-2/+15
| | | | | | | | Register the ethernet driver from iudma, which avoids the attempt to probe the emac driver before iudma and its consequent deferral. The ethernet driver can't work without iudma anyway. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6348-enet: add PHY supportÁlvaro Fernández Rojas2023-03-292-0/+119
| | | | | | | We should ensure that the PHY is properly configured. This is specially needed in devices using the internal PHY for ethernet0. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: add basic BCM6358 ethernet supportÁlvaro Fernández Rojas2023-03-286-0/+1732
| | | | | | | | The MDIO bus is supported but there are errors when trying to probe and configure the external BCM5325E switch through B53 DSA. Therefore, let's add basic ethernet (but working) support for now. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6368-enetsw: refactor probeÁlvaro Fernández Rojas2023-03-281-23/+29
| | | | | | | | | - Switch to devm functions where possible. - Fix probing when no resets provided. - Properly check pointers (IS_ERR_OR_NULL/PTR_ERR). - Add probe info. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6368-enetsw: remove unneeded variablesÁlvaro Fernández Rojas2023-03-281-35/+16
| | | | | | Change the code to use defines instead of variables. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: bcm6368-enetsw: harmonize dev variablesÁlvaro Fernández Rojas2023-03-281-76/+83
| | | | | | | | The current implementation of bcm6368-enetsw is a mess of dev, ndev and kdev variables, which have refer to different things depending on the function. This commit harmonizes it and resolves the issue. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: sercomm,h500-s: add Quantenna gpio switchÁlvaro Fernández Rojas2023-03-281-0/+16
| | | | | | | Sercomm H500-s has a Quantenna SoC for external wifi which can be activated or deactivated through GPIO #20. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: sercomm,h500-s: fix upgradeÁlvaro Fernández Rojas2023-03-251-3/+1
| | | | | | | | Sercomm H500-s devices don't need the JFFS2 cleanmarkers as opposed to the other bmips NAND devices. Fixes: 6df12200d903 ("bmips: add support for Sercomm H-500s") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: sercomm,h500-s: add Quantenna network configÁlvaro Fernández Rojas2023-03-241-1/+4
| | | | | | Sercomm H500-s has an external Quantenna QT3740BC SoC connected by RGMII. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: add more dsa b53 pending patchesÁlvaro Fernández Rojas2023-03-243-145/+1
| | | | | | | | | | | | | | | | | These patches have now received a positive review upstream, so let's add them to pending patches. 776-net-dsa-b53-mmap-add-phy-ops.patch: This is mostly bmips/bcm63xx-specific to get external switches working without hanging the device when accessing certain registers. 777-net-dsa-b53-mdio-add-support-for-BCM53134: This adds support for BCM53134 switch on DSA B53, so any target using DSA B53 can benefit from it. Also fix sercomm-h500-s external switch IMP port phy-mode. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: add support for Sercomm H-500sÁlvaro Fernández Rojas2023-03-228-1/+502
| | | | | | | | | | | | | Sercomm H-500s is a BCM63268 with 128M, internal and external (Quantenna) wifi and external BCM53134S switch. This device is already supported in bcm63xx target, so more information can be found in https://openwrt.org/toh/sercomm/h500-s. It's a perfect example of a device with internal and external switch coexistance since most devices only have ports on one of the switches but not both of them. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: drop unneded cpu labels from external switchesÁlvaro Fernández Rojas2023-03-222-2/+0
| | | | | | | | | These labels aren't needed and were accidentally added when adding external switches support for bmips. Fixes: 80a3ecc89489 ("bmips: add Huawei HG253s v2 support") Fixes: 61f3c3b1eebd ("bmips: dgnd3700v2: enable external BCM53125 switch") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: add pending patches for bcm63268-timer-clocksÁlvaro Fernández Rojas2023-03-224-401/+0
| | | | | | | | | bcm63268-timer-clocks have been sent upstream with a positive review, so let's add them to pending v5.15. Also add devm_clk_hw_register_gate() patch from v5.17 to backports since it's needed for upstream bcm63268-timer-clocks patches. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: dts: nand: add missing address/size cellsÁlvaro Fernández Rojas2023-03-212-0/+6
| | | | | | | | | | | Fixes the following warnings for Netgear DGND3700v2 and Comtrend VR-3032u: [ 1.059540] 7 fixed-partitions partitions found on MTD device brcmnand.0 [ 1.066570] OF: Bad cell count for /ubus/nand@10000200/nandcs@0/partitions [ 1.073766] OF: Bad cell count for /ubus/nand@10000200/nandcs@0/partitions [ 1.081927] OF: Bad cell count for /ubus/nand@10000200/nandcs@0/partitions [ 1.089128] OF: Bad cell count for /ubus/nand@10000200/nandcs@0/partitions Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: add Huawei HG253s v2 supportÁlvaro Fernández Rojas2023-03-214-0/+264
| | | | | | | | | | | | | Huawei HG253s v2 is a BCM6362 with 128M RAM, internal wifi and external BCM53124S switch. This device is already supported in bcm63xx target, so more information can be found in https://openwrt.org/toh/huawei/hg253s_v2. It's a perfect example of a device with internal and external switch coexistance since most devices only have ports on one of the switches but not both of them. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: dgnd3700v2: enable external BCM53125 switchÁlvaro Fernández Rojas2023-03-212-2/+56
| | | | | | | The Netgear DGND3700v2 has an external BCM53125 switch which can now be enabled as a DSA disjoint switch tree setup. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: disable B53 MMAP phy read/write opsÁlvaro Fernández Rojas2023-03-212-1/+47
| | | | | | | | | | Without this change, internal and external B53 switches couldn't coexist as reported in https://github.com/openwrt/openwrt/issues/10313. In order to fix this we need to force the B53 MMAP DSA switch driver to use bcm6368-mdio-mux for accessing the PHY registers instead of its own phy_read() and phy_write() functions. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: dts: fix switch compatible stringsÁlvaro Fernández Rojas2023-03-204-4/+4
| | | | | | Use the proper string for each SoC. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: add pending bmips patchesÁlvaro Fernández Rojas2023-03-207-246/+10
| | | | | | Add patches sent upstream for bmips and b53 and remove downstream ones. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: tweak Kconfig optionsÁlvaro Fernández Rojas2023-03-163-16/+49
| | | | | | Add patch to reduce and improve selected bmips kernel config options. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: irq-bcm6345-l1: register memory regionÁlvaro Fernández Rojas2023-03-161-0/+38
| | | | | | | Add new patch sent upstream for requesting the memory region in the bcm6345-l1 interrupt controller. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: update patches sent upstreamÁlvaro Fernández Rojas2023-03-162-20/+42
| | | | | | Update bmips patches with the latest version sent upstream Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bmips: dts: fix warningsÁlvaro Fernández Rojas2023-03-097-2/+22
| | | | | | | | - Add missing interrupt-parent to ext_intc. - Add missing #address-cells and #size-cells to gpio_cntl. - Use proper gpio handle for gpios (ar-5315u). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* Revert "bmips: add missing switch cpu label"Álvaro Fernández Rojas2023-03-055-5/+0
| | | | | | | | This reverts commit dc0de05e10a9c6e1ef66ca2934e8a0ff0d488943. As pointed out by @BKPepe and @arinc9 this was removed by 9df035b since it isn't needed. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>