aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm63xx
Commit message (Collapse)AuthorAgeFilesLines
* bcm63xx: kernel: reenable the TRNGDaniel González Cabanelas2021-02-071-53/+2
| | | | | | | | | | | The hardware random number generator driver for bcm63xx was merged with the one used by the Raspberry Pi. Now this driver is lost. Reenable the HW_RANDOM kernel config with the new driver. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com> [refresh kernel config] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: sprom: override the PCI device IDDaniel González Cabanelas2021-02-022-1/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PCI device ID detected by the wifi drivers on devices using a fallback SPROM is wrong. Currently the chipnum is used for this parameter. Most SSB based Broadcom wifi chips are 2.4 and 5GHz capable. But on devices without a physical SPROM, the only one way to detect if the device suports both bands or only the 5GHz band, is by reading the device ID from the fallback SPROM. In some devices, this may lead to a non working wifi on a 5GHz-only card, or in the best case a working 2.4GHz-only in a dual band wifi card. The offset for the deviceid in SSB SPROMs is 0x0008, whereas in BCMA is 0x0060. This is true for any SPROM version. Override the PCI device ID with the one defined at the fallback SPROM, to detect the correct wifi card model and allow using the 5GHz band if supported. The patch has been tested with the following wifi radios: BCM43222: b43: both 2.4/5GHz working brcm-wl: both 2.4/5GHz working BCM43225: b43: 2.4GHz, working brcmsmac: working brcm-wl: it lacks support BCM43217: b43: 2.4GHz, working brcmsmac: it lacks support brcm-wl: it lacks support Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com> [amend commit description, rework patch to avoid using a new global variable and keep ssb sprom extraction code as close to ssb/pci.c as possible] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: backport upstream SSB SPROM extractionÁlvaro Fernández Rojas2021-02-026-38/+102
| | | | | | | New upstream changes extract more SPROM values and fix the antenna gain. These changes can be found in linux drivers/ssb/pci.c. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: bump 5.4 to 5.4.93John Audia2021-01-291-1/+1
| | | | | | | | | | | | | | | | | All modification made by update_kernel.sh in a fresh clone without existing toolchains. Build system: x86_64 Build-tested: ipq806x/R7800, bcm27xx/bcm2711 Run-tested: ipq806x/R7800 Compile-tested [*]: ath79/{tiny,generic}, ipq40xx, octeon, ramips/mt7621, realtek, x86/64 Run-tested [*]: ath79/generic, ipq40xx, octeon, ramips/mt7621 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> Tested-by: Stijn Segers <foss@volatilesystems.org> [*]
* bcm63xx: fix bcm63xx ethernet kernel panicsÁlvaro Fernández Rojas2021-01-287-17/+52
| | | | | | | | | | | | Calling netdev_reset_queue() from _stop() functions is causing sporadic kernel panics on bcm63xx, which happen mainly on BCM6318 and BCM6328. This reverts to the previous behaviour, which called netdev_reset_queue() from _open() functions. Tested on Comtrend AR-5315u (BCM6318). Fixes: 1d6f422e346b ("bcm63xx: sync ethernet driver with net-next") Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* treewide: provide global default for SUPPORTED_DEVICESAdrian Schmutzler2021-01-231-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The majority of our targets provide a default value for the variable SUPPORTED_DEVICES, which is used in images to check against the compatible on a running device: SUPPORTED_DEVICES := $(subst _,$(comma),$(1)) At the moment, this is implemented in the Device/Default block of the individual targets or even subtargets. However, since we standardized device names and compatible in the recent past, almost all targets are following the same scheme now: device/image name: vendor_model compatible: vendor,model The equal redundant definitions are a symptom of this process. Consequently, this patch moves the definition to image.mk making it a global default. For the few targets not using the scheme above, SUPPORTED_DEVICES will be defined to a different value in Device/Default anyway, overwriting the default. In other words: This change is supposed to be cosmetic. This can be used as a global measure to get the current compatible with: $(firstword $(SUPPORTED_DEVICES)) (Though this is not precisely an achievement of this commit.) Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: sync ethernet driver with net-nextSieng Piaw Liew2021-01-2215-191/+703
| | | | | | | | | | | | | | Sync ethernet driver code with upstream Linux kernel: -Reduce xmit_more code changes. -Combine rx cleanup code into a function. -Convert to build_skb. -Improve rx loop by optimizing loop tracking. https://lore.kernel.org/netdev/20210106144208.1935-1-liew.s.piaw@gmail.com/ Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com> [Amend commit description, move patches to the top since they are going to be upstreamed] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: nand: fix OOB R/W for non Hamming ECCÁlvaro Fernández Rojas2021-01-222-11/+34
| | | | | | | | Hamming ECC devices do not cover OOB data, as opposed to BCH ECC devices. Therefore, disabling ECC for all devices is preventing BCH devices from correctly reading and writing the OOB data. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: move some disabled symbols to genericAleksander Jan Bajkowski2020-12-222-3/+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>
* bcm63xx: DGND3700v1: use the real board nameDaniel González Cabanelas2020-12-111-1/+1
| | | | | | | | | | The Netgear DGND3700v1/DGND3800B shows kernel redundant info at the board message, already provided by the machine info message. Use the real board name which is silkscreened on the PCB and used in the stock firmware header. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
* bcm63xx: add support for Innacomm W3400V6Sieng Piaw Liew2020-12-0912-26/+199
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Innacomm W3400V6 is an xDSL B/G wireless router based on Broadcom BCM6328 SoC. Hardware: SoC: Broadcom BCM6328 CPU: BMIPS4350 V8.0, 320 MHz, 1 core Flash: SPI-NOR 8MB, MX25L6406E RAM: 64 MB Ethernet: 4x 10/100 Mbps Switch: Integrated Wireless: 802.11b/g, BCM4312 LEDs/Buttons: 9x / 2x Flash instruction, web UI: 1) Set a static IP on your computer compatible with 192.168.1.1, i.e 192.168.1.100 2) Connect the ethernet cable from your computer to the router. 3) Make sure the router is powered off. 4) Press the reset button, don't release it yet! 5) While pressing reset, power on the router. 6) Wait 10 seconds or more. Note: The power LED is red at first then turns to solid green when ready. 8) Release the reset button. 9) Browse to 192.168.1.1 10) Select .bin file. 10) Upgrade the image. 11) Wait for it to reboot. Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com> [Ammend commit description, merge patches, DT improvements] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: fix ADB P.DG A4001N A-000-1A1-AX LEDsÁlvaro Fernández Rojas2020-12-061-8/+2
| | | | | | | There's no eth0.2 since all ethernet ports as configured as LAN. LAN LED is unneeded since all ethernet ports have their own LED. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: add support for Technicolor TG582nDaniele Castro2020-12-0614-26/+255
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Technicolor TG582n has a similar PCB as the OpenWrt's ADB P.DG A4001N1 with LEDs connected to different GPIO PINs in active low configuration. Hardware: * Board ID: DANT-1 * SoC: Broadcom BCM6328 (rev b0) @ 320MHz, CPU BMIPS4350 * RAM DDR2: 64 Mbyte - Winbond W9751G6KB-25 * Serial flash: 16 Mbyte - MXIC MX25L6445EMI * Ethernet: 4x Ethernet 10/100 baseT * Wifi 2.4GHz: Broadcom Corporation BCM43227 Wireless Network Adapter (rev 30) * LEDs: 2x Power, 1x Ethernet, 1x Broadband, 2x Wi-Fi, 2x WPS, 4x ethernet * Buttons: 1x Reset, 1x WPS, 1x WiFi * UART: 1x TTL 115200n8, VCC GND TX RX, on J3 connector (short R62 and R63) Installation via CFE: * Stock CFE has to be overwritten with a generic 6328 one that can upload .bin images with no signature check (cfe6328_configured.bin) * Connect a serial port to the board * Stop the CFE boot process after power on by pressing enter * Set static IP 192.168.2.10 and subnet mask 255.255.255.0 * Navigate to http://192.168.2.50/ * Upload the OpenWrt image file PCB: |GPIO: |TG582n: LED2R |488(08) |red Power LED2G |484(04) |green Power LED10R |486(06) | LED13G |485(05) |green Ethernet LED11R |494(14) | LED14G |491(11) |green Broadband LED5R |487(07) |red Internet LED5G |481(01) |green Internet LED12R |498(18) | LED12G |499(19) | LED6R |482(02) |red Wi-Fi LED6G |483(03) |green Wi-Fi LED7R |490(10) |red WPS LED7G |489(09) |green WPS LED4 |508(28) |ethernet port 4 LED3 |507(27) |ethernet port 3 LED9 |506(26) |ethernet port 2 LED8 |505(25) |ethernet port 1 SW3 |503(23) |key Reset SW5 |504(24) |key WPS SW4 |495(15) |key Wi-Fi SW6 |493(13) | SW1 |492(12) | Signed-off-by: Daniele Castro <danielecastro@hotmail.it> [Fix base-files, refresh patch] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: add support for Technicolor TG582n Telecom Italia brandedDaniele Castro2020-12-0614-26/+245
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Technicolor TG582n Telecom Italia branded a.k.a. Telecom Italia ADSL2+ Wi-Fi N (AGTWI) has the same PCB as the unbranded Technicolor TG582n with LEDs connected to different GPIO PINs in active low configuration and different LED names. It has a PCB similar to the OpenWrt's ADB P.DG A4001N1 one. Hardware: * Board ID: DANT-V * SoC: Broadcom BCM6328 (rev b0) @ 320MHz, CPU BMIPS4350 * RAM DDR2: 64 Mbyte - EtronTech EM68B16CWQD-25H * Serial flash: 16 Mbyte - Spansion FL 128SAIF00 * Ethernet: 4x Ethernet 10/100 baseT * Wifi 2.4GHz: Broadcom Corporation BCM43227 Wireless Network Adapter (rev 30) * LEDs: 2x Power, 1x ADSL, 2x Internet, 2x Wi-Fi, 2x Service, 4x ethernet * Buttons: 1x Reset, 1x WPS (named WiFi/LED) * UART: 1x TTL 115200n8, VCC GND TX RX, on J3 connector (short R62 and R63) Installation via CFE: * Stock CFE has to be overwritten with a generic 6328 one that can upload .bin images with no signature check (cfe6328_configured.bin) * Connect a serial port to the board * Stop the CFE boot process after power on by pressing enter * Set static IP 192.168.2.10 and subnet mask 255.255.255.0 * Navigate to http://192.168.2.50/ * Upload the OpenWrt image file PCB: |GPIO: |TG582n: |AGTWI: LED2R |488(08) |red Power |red Power LED2G |484(04) |green Power |green Power LED10R |486(06) | |missing R85 end LED LED13G |485(05) |green Ethernet |green ADSL LED11R |494(14) | |red Internet LED14G |491(11) |green Broadband |green Internet LED5R |487(07) |red Internet |red Wi-Fi LED5G |481(01) |green Internet |green Wi-Fi LED12R |498(18) | |red Service LED12G |499(19) | |green Service LED6R |482(02) |red Wi-Fi |missing R108 end LED LED6G |483(03) |green Wi-Fi |missing R107 end LED LED7R |490(10) |red WPS |missing R91 end LED LED7G |489(09) |green WPS |missing R92 end LED LED4 |508(28) |ethernet port 4 |ethernet port 4 LED3 |507(27) |ethernet port 3 |ethernet port 3 LED9 |506(26) |ethernet port 2 |ethernet port 2 LED8 |505(25) |ethernet port 1 |ethernet port 1 SW3 |503(23) |key Reset |key Reset SW5 |504(24) |key WPS |key Wi-Fi/LED SW4 |495(15) |key Wi-Fi |missing R127 end key SW6 |493(13) | |missing R171 end key SW1 |492(12) | |missing R1 end key Signed-off-by: Daniele Castro <danielecastro@hotmail.it> [DT fixes, base-files fixes and device variant] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: add support for ADB P.DG A4101N A-000-1A1-AEDaniele Castro2020-12-0614-26/+227
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ADB P.DG A4101N A-000-1A1-AE has a similar PCB as the OpenWrt's ADB P.DG A4001N1 with LEDs connected to different GPIO PINs in active low configuration. Hardware: * Board ID: 96328avngv * SoC: Broadcom BCM6328 (rev b0) @ 320MHz, CPU BMIPS4350 * RAM DDR2: 64 Mbyte - Winbond W9751G6KB-25 * Serial flash: 16 Mbyte - Winbond 25Q128BVFG * Ethernet: 4x Ethernet 10/100 baseT * Wifi 2.4GHz: Broadcom Corporation BCM43225 Wireless Network Adapter (rev 23) * LEDs: 1x Power, 1x DSL, 1x Internet, 4x ETH, 1x USB, 1x WLAN, 1x WPS, 1x TEL * Buttons: 1x Reset, 1x WPS, 1x unnamed * UART: 1x TTL 115200n8, VCC RX TX GND, on J502 connector Installation via CFE: * Stock CFE has to be overwritten with a generic 6328 one that can upload .bin images with no signature check (cfe6328_configured.bin) * Connect a serial port to the board * Stop the cfe boot process after power on by pressing enter * Set static IP 192.168.2.10 and subnet mask 255.255.255.0 * Navigate to http://192.168.2.50/ * Upload the OpenWrt image file A4101N GPIO LAYOUT: Power always on DSL GPIO483(03) Internet GPIO491(11) ETH1 GPIO505(25) ETH2 GPIO506(26) ETH3 GPIO507(27) ETH4 GPIO508(28) USB GPIO490(10) WLAN controlled by BCM43225 WPS GPIO489(09) TEL GPIO511(31) Key RESET GPIO503(23) Key WPS GPIO504(24) Key unnamed GPIO492(12) Signed-off-by: Daniele Castro <danielecastro@hotmail.it> [Amend commit description, DTS improvements, refresh patches] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: Add support for D-Link DSL-2750u rev C1Ahmed Naseef2020-12-0513-9/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds support for the D-Link DSL-2750u rev C1. (https://deviwiki.com/wiki/D-Link_DSL-2750U_rev_C1) It uses the same hardware as ADB P.DG A4001N. CPU: Broadcom BCM63281 (320 MHz) RAM: 32M (Winbond W9725G6JB) Flash: 8M (MXIC MX25L6445E) Ethernet: 4x 100 Mbps Wireless: 802.11b/g/n: BCM43225 USB: 1x 2.0 Flash instructions: 1. Assign static IP 192.168.1.100 to PC 2. Unplug the power source 3. Press the RESET button at the router, don't release it yet! 4. Plug the power source.Wait some seconds 5. Release the RESET button 6. Browse to http://192.168.1.1 7. Send the openwrt-bcm63xx-generic-DSL2750U-C1-squashfs-cfe.bin and wait some minutes until the firmware upgrade finish. Signed-off-by: Ahmed Naseef <naseefkm@gmail.com> [DTS improvements, proper board patch, refresh patches] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: A4001N A-000-1A1-AX: remove PSI (nvram) partitionDaniele Castro2020-12-051-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ADB P.DG A4001N A-000-1A1-AX a.k.a. Telecom Italia ADSL2+ Wi-Fi N (AGPWI) is a Telecom Italia braded router and it seems that there are no public available unbranded versions of this router. The stock Telecom Italia braded firmware has many partitions and the partition layout changes with every firmware relase. The PSI nvram partition is present in the stock firmware under the "UNKNOWN" name but it's empty, full of FFs. Since removing partitions does not cause problems with the stock firmware reflashing procedure, I removed from the dts the PSI nvram partition from OpenWrt, expanded the rootfs one and added the NVRAM partition contained in the cfe bootloader. Furthermore this router's flash needs to be entirely reprogrammed and a new generic bcm6328 cfe must be flashed to boot OpenWrt. The same process takes place when reflashing the stock firmware. Here follows the original flash layout for AGPWI_1.1.0_013, the last stock Telecom Italia braded firmware for which we have root credentials (admin/riattizzati). Flash layout: Section 00 Type BOOT Range 0x00000000-0x00020000 MaxSize 0x00020000 No more information. Section 01 Type IMAGE Range 0x00020000-0x007C0000 MaxSize 0x0079FF6C Uninitialized. Section 02 Type IMAGE Range 0x00800000-0x00FA0000 MaxSize 0x0079FF6C Uninitialized. Section 03 Type CONF Range 0x00FA0000-0x00FC0000 MaxSize 0x0001FF6C Size 0x0000841E Name 'rg_conf' Checksum 0x0041E03B Counter 0x0000051F Start Offset 0x00000000 Section 04 Type CONF Range 0x00FC0000-0x00FE0000 MaxSize 0x0001FF6C Size 0x0000838E Name 'rg_conf' Checksum 0x00419A5A Counter 0x00000522 Start Offset 0x00000000 Section 05 Type FACTORY Range 0x00FE0000-0x00FF0000 MaxSize 0x0000FF6C Size 0x00000554 Name 'rg_factory' Checksum 0x0001255E Counter 0x000004D3 Start Offset 0x00000000 Section 06 Type UNKNOWN Range 0x00FF0000-0x01000000 MaxSize 0x00010000 No more information. Total 7 sections found. The last AGPWI firmware relase should be AGPWI_4.0.6 and it has much more partitions than AGPWI_1.1.0_013. The cfe partition in the stock firmware is 0x00020000 bytes long unlike the OpenWrt dts in wich it's 0x00010000 bytes long because from 0x00010000 to 0x00020000 in the stock cfe there are only 00s and also because the cfe must anyway be reflashed with a generic bcm6328 cfe 0x00010000 bytes long to run OpenWrt. Signed-off-by: Daniele Castro <danielecastro@hotmail.it> [Amend commit, remove unneeded cfe_nvram partition] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: support xmit_more in BQLSieng Piaw Liew2020-12-051-0/+54
| | | | | | | | Support bulking hardware TX queue by using xmit_more. Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com> [Amend commit description, fix kernel xmit_more exceptions] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: add BQL supportSieng Piaw Liew2020-12-051-0/+67
| | | | | | | | Add Byte Queue Limits support to reduce/remove bufferbloat in bcm63xx target. Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com> [Amend commit description] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* brcm63xx: add USB status LED in 01_leds for ADP P.DG A4001NDaniele Castro2020-12-041-1/+2
| | | | | | Add a status LED in 01_leds for USB 2-1 connected devices. Signed-off-by: Daniele Castro <danielecastro@hotmail.it>
* bcm63xx: enetsw: switch to netdev_alloc_skb_ip_alignSieng Piaw Liew2020-12-021-0/+37
| | | | | | | | | | | | | | | | | | | Increases packet processing performance by 30%. Tested on BCM6328 320 MHz and iperf3 -M 512 for packet/sec performance. Before: [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-30.00 sec 120 MBytes 33.7 Mbits/sec 277 sender [ 4] 0.00-30.00 sec 120 MBytes 33.5 Mbits/sec receiver After: [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-30.00 sec 155 MBytes 43.3 Mbits/sec 354 sender [ 4] 0.00-30.00 sec 154 MBytes 43.1 Mbits/sec receiver Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com> [Merge patches, amend commit and add patch description] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: batch process RX pathSieng Piaw Liew2020-12-021-0/+53
| | | | | | | | | | | | | | | | | | | Use netif_receive_skb_list to batch process skb in RX. Tested on BCM6328 320 MHz using iperf3 -M 512, increasing performance by 12.5%. Before: [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-30.00 sec 120 MBytes 33.7 Mbits/sec 277 sender [ 4] 0.00-30.00 sec 120 MBytes 33.5 Mbits/sec receiver After: [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-30.00 sec 136 MBytes 37.9 Mbits/sec 203 sender [ 4] 0.00-30.00 sec 135 MBytes 37.7 Mbits/sec receiver Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com> [Amend commit description] Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: reorganize board patches into fewer filesAdrian Schmutzler2020-10-2675-4067/+2730
| | | | | | | | | | | | | | | At the moment, bcm63xx creates one patch for each board to add to board_bcm963xx.c. While this is not really helpful to get an overview in the first place, it is particularly painful if you want to change something for an early file and have to refresh all the later patches accordingly. Since it does not look like these board patches are upstreamed either, this commit consolidates all board additions into one patch per "board". By this, both adding and editing boards should become much simpler, and we drop about 1300 lines of "code" from patches as well. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: move dts-v1 statement to top-level DTSI filesAdrian Schmutzler2020-10-10107-194/+20
| | | | | | | | | | | The "/dts-v1/;" identifier is supposed to be present once at the top of a device tree file after the includes have been processed. Like done for other targets recently, put the dts-v1 statement into the top-level SoC-based DTSI files, and remove all other occurences. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: add a few DTSI files to share definitionsAdrian Schmutzler2020-10-1011-846/+389
| | | | | | | | After the LED labels have been made more general by removing the model names, we can move several definitions to DTSI files to reduce the amount of duplicate code. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: remove model name from LED labelsAdrian Schmutzler2020-10-1090-631/+639
| | | | | | | | | | | | | | | | Like in the previous patches for various targets, this will remove the "devicename" from LED labels in bcm63xx, as it's useless and only creates complexity. The devicename is removed in DTS files and 01_leds, merging several cases on the way. A migration script is added for existing configurations. Note that a few labels were using "model::function" scheme without color specified, those were converting to just "function" and the necessary migrations were added to the migration script. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: bump 5.4 to 5.4.67John Audia2020-09-241-1/+1
| | | | | | | | | | | | | | All modifications made by update_kernel.sh Build system: x86_64 Build-tested: ipq806x, lantiq/xrx200 and ath79/generic Run-tested: ipq806x (R7800), lantiq (Easybox 904 xDSL) No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> [add test on lantiq] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* target: update SPDX license namesAdrian Schmutzler2020-09-223-3/+3
| | | | | | | SPDX moved from GPL-2.0 to GPL-2.0-only and from GPL-2.0+ to GPL-2.0-or-later. Reflect that in the SPDX license headers. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: set WATCHDOG_CORE dependency in kmod-hwmon-sch5627Adrian Schmutzler2020-08-241-1/+0
| | | | | | | | | | | | | | | | | | For many target we have added CONFIG_WATCHDOG_CORE=y to the target config due to the following error: Package kmod-hwmon-sch5627 is missing dependencies for the following libraries: watchdog.ko However, actually the proper way appears to be setting the dependency for the kmod-hwmon-sch5627 package, as the error message demands. Do this in this patch and remove the target config entries added due to this issue. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* treewide: use wpad-basic-wolfssl as defaultPetr Štetiar2020-08-202-6/+6
| | | | | | | | | | | | | | | In order to support SAE/WPA3-Personal in default images. Replace almost all occurencies of wpad-basic and wpad-mini with wpad-basic-wolfssl for consistency. Keep out ar71xx from the list as it won't be in the next release and would only make backports harder. Build-tested (build-bot settings): ath79: generic, ramips: mt7620/mt76x8/rt305x, lantiq: xrx200/xway, sunxi: a53 Signed-off-by: Petr Štetiar <ynezz@true.cz> [rebase, extend commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* kernel: bump 5.4 to 5.4.58John Audia2020-08-183-98/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR is a blend of several kernel bumps authored by ldir taken from his staging tree w/ some further adjustments made by me and update_kernel.sh Summary: Deleted upstreamed patches: generic: 742-v5.5-net-sfp-add-support-for-module-quirks.patch 743-v5.5-net-sfp-add-some-quirks-for-GPON-modules.patch bcm63xx: 022-v5.8-mtd-rawnand-brcmnand-correctly-verify-erased-pages.patch 024-v5.8-mtd-rawnand-brcmnand-fix-CS0-layout.patch mediatek: 0402-net-ethernet-mtk_eth_soc-Always-call-mtk_gmac0_rgmii.patch Deleted patches applied differently upstream: generic: 641-sch_cake-fix-IP-protocol-handling-in-the-presence-of.patch Manually merged patches: generic: 395-v5.8-net-sch_cake-Take-advantage-of-skb-hash-where-appropriate.patch bcm27xx: 950-0132-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch layerscape: 701-net-0231-enetc-Use-DT-protocol-information-to-set-up-the-port.patch Build system: x86_64 Build-tested: ath79/generic, bcm27xx/bcm2708, bcm27xx/bcm2711, imx6, mvebu/cortexa9, sunxi/a53 Run-tested: Netgear R7800 (ipq806x) No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us> Tested-By: Lucian Cristian <Lucian.cristian@gmail.com> [mvebu] Tested-By: Curtis Deptuck <curtdept@me.com> [x86/64] [do not remove 395-v5.8-net-sch_cake-Take-advantage-... patch, adjust and refresh patches, adjust commit message] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> Tested-By: John Audia <graysky@archlinux.us> [ipq806x]
* bcm63xx: reorganize board patchesAdrian Schmutzler2020-08-1669-245/+245
| | | | | | | | | | This renames board patches to make finding devices easier and reorders them based on their board. The devices are grouped based on the board/cpu_id. New device patches should be numbered based on their group. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: switch to upstream CFE detection patchÁlvaro Fernández Rojas2020-08-113-71/+78
| | | | | | This patch has been merged in linux 5.9. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: add missing endif board comnentsÁlvaro Fernández Rojas2020-08-0761-118/+118
| | | | | | This provides better context for board patches. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: merge RTA770BW and RTA770W board patchesÁlvaro Fernández Rojas2020-08-0738-143/+101
| | | | | | The only difference between both boards is the DSL annex. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: add missing fallback SPROMsÁlvaro Fernández Rojas2020-08-0717-50/+56
| | | | | | A couple of SPROM IDs are missing. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: add missing OHCI nodesÁlvaro Fernández Rojas2020-08-0733-99/+102
| | | | | | All boards with EHCI enabled should also have OHCI enabled. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: remove invalid EHCI nodesÁlvaro Fernández Rojas2020-08-0760-160/+158
| | | | | | There's no EHCI controller on BCM6348. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: refactor board patchesÁlvaro Fernández Rojas2020-08-0769-1483/+1401
| | | | | | | Current board patches format is crazy. Let's try to put some order. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: switch to upstream CFE version detection patchÁlvaro Fernández Rojas2020-08-067-32/+61
| | | | | | The patch improving CFE version detection has been merged (linux 5.9). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: switch to upstream endif comments patchÁlvaro Fernández Rojas2020-08-0686-354/+451
| | | | | | | This allows better context for board patches and we no longer need a downstream patch for that. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* bcm63xx: switch to upstream LED patchÁlvaro Fernández Rojas2020-08-061-44/+95
| | | | | | | The patch adding support for the second LED HW blinking interval has been merged (linux 5.9). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
* kernel: unify CONFIG_GPIO_SYSFS in kernel configsFelix Fietkau2020-08-061-1/+0
| | | | | | Enable it for all platforms Signed-off-by: Felix Fietkau <nbd@nbd.name>
* bcm63xx: R5010UNv2: fix flash partitions for 16MB flashDaniel González Cabanelas2020-07-111-5/+5
| | | | | | | | | | | The router Nucom R5010UN v2 has the partitions defined for a 8MB flash, but the flash chip is 16MB size. We are wasting half of the flash. Fix it and use generic names for partitions. Fixes: 474cde61234c ("brcm63xx: probe SPI flash through DT") Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
* kernel: Update kernel 5.4 to version 5.4.50Hauke Mehrtens2020-07-041-1/+1
| | | | | | | Run tested: ath79, ipq40xx Build tested: ath79, ipq40xx Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* bcm63xx: AV4202N: add missing PCI pinmuxDaniel González Cabanelas2020-06-221-0/+5
| | | | | | | | | The ADB P.DG AV4202N device has a wifi chipset connected via PCI. But the PCI pinmux is missing and without it the wifi won't work properly. Add the pinctrl_pci to enable the missing PCI pins for this device. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
* kernel: bump 5.4 to 5.4.48Petr Štetiar2020-06-221-40/+0
| | | | | | | | | | | | | | | | Resolved merge conflict in the following patches: layerscape: 701-net-0213-dpaa2-eth-Add-CEETM-qdisc-support.patch ramips: 0013-owrt-hack-fix-mt7688-cache-issue.patch Refreshed patches, removed upstreamed patch: bcm63xx: 020-v5.8-mtd-rawnand-brcmnand-fix-hamming-oob-layout.patch Run tested: qemu-x86-64 Build tested: x86/64 Signed-off-by: Petr Štetiar <ynezz@true.cz>
* bcm63xx: DGND3700v1: fix port orderDaniel González Cabanelas2020-06-191-4/+4
| | | | | | | | | Fix the switch LAN labels for the DGND3700v1/DGND3800B router, the order is reversed. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com> [cut out of bigger patch, adjust commit title/message accordingly] Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
* bcm63xx: HG622: enable LAN LEDsDaniel González Cabanelas2020-06-191-1/+3
| | | | | | | | | The Huawei Echolife HG622 has hardware controlled LAN LEDs. Add the ephy led pinctrl to let the router show LAN activity on these LEDs. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
* bcm63xx: use the generic nand upgrade on Sercomm devicesDaniel González Cabanelas2020-06-161-2/+5
| | | | | | | | | | | | | | | The Sercomm devices don't need the jffs2 cleanmarkers for the kernel partition. With the stock firmware they are only added when the bootloader partition is upgraded. Furthermore, on the Sercomm H500-s, the specific cfe_jffs2_upgrade_tar function causes OOB corruption. As a result of this, combined with the nature of the mtdsplit driver, the upgrade procedure ends in a bricked device. Use the generic nand_do_upgrade provided by the OpenWrt common functions. Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>