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>
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>
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>
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]
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>
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>
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>
Sercomm H500-s is an xDSL dual band wireless router based on Broadcom
BCM63167 SoC.
Hardware:
SoC: Broadcom BCM63167
CPU: BMIPS4350 V8.0, 400 MHz, 2 cores
Flash: NAND 128 MiB
RAM: DDR3 128 MiB
Ethernet: 4x 10/100/1000 Mbps
Switch: BCM53134S
Wireless: 802.11b/g/n: BCM435f (integrated)
802.11ac: Quantenna QT3740BC (onboard SoC)
USB: 1x 2.0
LEDs/Buttons: 11x / 2x
Flash instruction, web UI:
1. Reset to defaults using the reset button if the admin password is
unknown
2. Login into the web UI as admin.
Address: http://192.168.0.1
User: admin
Password: VF-ESVodafone-H-500-s or l033i-h500s
3. Go to Settings -> Firmware Update, and select the Openwrt factory
firmware
4. Update the firmware.
5. Wait until it finish, the device will reboot with Openwrt installed
on the alternative image partitions keeping the stock firmware in
the former.
Notes:
- The patch also adds support for the lowi version. Only the factory
firmware is different.
- The integrated Wifi in the Broadcom Soc isn't still supported.
- The Quantenna 802.11ac wifi works ok, but needs to be configured with
the Quantenna client application. It can't be configured with Luci
nor any iw command since it's a separated subsystem linked via
ethernet.
- The BCM53134S external switch is managed via MDIO which isn't
supported in this target. Therefore it will behave as a dumb switch.
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
The BCM63167 is a BCM63268 SoC with a different physical packaging.
Add the CPU ID to allow supporting routers with this SoC (i.e Sercomm
H500-s)
Signed-off-by: Daniel González Cabanelas <dgcbueu@gmail.com>
ADB P.DG A4001N A-000-1A1-AX a.k.a. Telecom Italia ADSL2+ Wi-Fi N (AGPWI)
has the same PCB as the OpenWrt's ADB P.DG A4001N1 with LEDs connected
to different GPIO PINs in active low configuration.
OpenWrt's ADB P.DG A4001N image is made for the ADB P.DG A4001N A-000-1A1-AE.
It has different LEDs configuration and flash size/layout
w.r.t the ADB P.DG A4001N A-000-1A1-AX.
Hardware:
* Board ID: 96328avng
* SoC: Broadcom BCM6328
* RAM DDR2-800: 32 Mbyte - winbond W9725G6KB-25
* Serial flash: 16 Mbyte - MXIC MX25L 12845EMI-10G
* Ethernet: 4x Ethernet 10/100 baseT
* Wifi 2.4GHz: Broadcom Corporation BCM43224/5 Wireless Network Adapter (rev 01)
* LEDs: 2x Power, 2x ADSL, 2x Internet, 2x Wi-Fi, 2x Service
* Buttons: 1x Reset, 1x WPS (named WiFi/LED)
* UART: 1x TTL 115200n8, TX NC RX, on J5 connector (short R192 and R193)
NC GND NC
Installation via CFE:
* Stock CFE has to be overwriten with one for 96328avng boards that can upload
.bin images with no signature check (cfe-A4001N-V0000_96328avng.bin)
* connect a serial port to the board
* Stop the boot process after power on by pressing enter
* set static IP 192.168.1.2 and subnet mask 255.255.255.0
* navigate to http://192.168.1.1/
* upload the OpenWrt image file
Signed-off-by: Daniele Castro <danielecastro@hotmail.it>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
There are older devices which require overriding the RGMII ports, so this
shouldn't be limited and forced to BCM63268.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Until now only HW modded SPI flash version was supported.
BCM6328 with 64M RAM and 128M NAND.
More info: https://openwrt.org/toh/sercomm/ad1018
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
BCM63169 with 128M RAM, 128M NAND and BCM53125 switch.
Switch is connected by HSSPI to CS5.
More info: https://openwrt.org/toh/comtrend/vg8050
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
BCM6362 with 64M RAM, 32M NAND and BCM53125 switch.
Switch is connected by MMAP, which is currently unsupported (no VLANs).
More info: https://openwrt.org/toh/netgear/dgnd3700v2
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
The bcm6345-periph-intc driver only targets a single CPU at a time, even
if the notional affinity is wider. Let's inform the core code about this.
This patch gets rid of the kernel message:
"genirq: irq_chip bcm6345-periph-intc did not update eff. affinity mask
of irq 52"
Signed-off-by: Daniel Gonzalez Cabanelas <dgcbueu@gmail.com>
In file included from ./arch/mips/include/asm/io.h:34,
from ./arch/mips/include/asm/mmiowb.h:5,
from ./include/linux/spinlock.h:60,
from ./include/linux/irq.h:14,
from drivers/irqchip/irq-bcm6345-ext.c:10:
drivers/irqchip/irq-bcm6345-ext.c: In function 'bcm6345_ext_intc_of_init':
./arch/mips/include/asm/mach-bcm63xx/ioremap.h:48:9: warning: 'base' may be used uninitialized in this function [-Wmaybe-uninitialized]
return is_bcm63xx_internal_registers((unsigned long)addr);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/irqchip/irq-bcm6345-ext.c:255:16: note: 'base' was declared here
void __iomem *base;
^~~~
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
drivers/irqchip/irq-bcm6345-periph.c: In function 'bcm6345_periph_irq_handle':
drivers/irqchip/irq-bcm6345-periph.c:55:21: warning: 'block' may be used uninitialized in this function [-Wmaybe-uninitialized]
struct intc_block *block;
^~~~~
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
In kernel patch 92ce7e83b4e5 ("driver_find_device: Unify the match
function with class_find_device()") the arguments of functions used
with driver_find_device are adjusted. Do the same for our local
user.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
The helper syscon_regmap_lookup_by_pdevname has been removed in kernel patch
29d14b668d2f ("mfd: Remove unused helper syscon_regmap_lookup_by_pdevname")
due to lack of users.
However, we use this function in our local pinctrl drivers for BCM6358 and
BCM6368. Thus, we have to add it locally.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
In kernel 5.4 -Werror=implicit-fallthrough is treated as error:
arch/mips/bcm63xx/cpu.c: In function 'detect_cpu_clock':
arch/mips/bcm63xx/cpu.c:158:2: error: this statement may fall through [-Werror=implicit-fallthrough=]
{
^
arch/mips/bcm63xx/cpu.c:179:2: note: here
case BCM6328_CPU_ID:
^~~~
cc1: all warnings being treated as errors
This can be fixed by adding "Fall through" as a comment where intended,
and has to be fixed by returning a proper default otherwise.
In case of the default clock frequency for BCM6318 we fixed this by
returning the default value taken from BCM6328 and BCM6362.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Refresh patches to make them apply to kernel 5.4.
The removed patches have been merged upstream.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Copy config and patches to kernel 5.4.
make kernel_oldconfig has been run on 4.19 beforehand.
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>