Jonas Gorski
343ec8d645
brcm63xx: use consistent gpio chip labeling for OF/non-OF
...
Ensure gpio chips are always labeled the same; this allows simplifying
any arch setup gpio lookups.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44846
2015-03-16 13:37:38 +00:00
Jonas Gorski
ca7f6d28c8
brcm63xx: Add DGND3700 v1 / DGND3800B support
...
This adds support for the Netgear DGND3700 v1 and DGND3800B.
DGND3700 v1 and DGND3800B are exactly the same router, only one difference,
the factory firmware. This patch produces two factory firmwares for each router.
The router includes an onboard NAND flash for extra storage. NAND is currently
not supported in bcm63xx, so no code added for this part. The NOR flash (32MB)
is enough for storing an openwrt firmware.
Signed-off-by: Daniel Gonzalez <dgcbueu@gmail.com>
[jogo: Add back commit message from v1]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44831
2015-03-16 11:52:10 +00:00
Jonas Gorski
eed031d460
brcm63xx: brcm63xxpart: fix buffer overrun in of parser
...
We never account for the added partitions from the tag parser, so
allocated two partioness less than needed. This can cause issues when
the memory gets reused before the mtd code can actually add the
partitions.
Fixes oopses like:
[ 0.920000] mtd: device 2 (rootfs) set to be root filesystem
[ 0.924000] 1 squashfs-split partitions found on MTD device rootfs
[ 0.932000] 0x0000002e0000-0x0000003f0000 : "rootfs_data"
[ 0.940000] 0x000000010000-0x0000003f0000 : "linux"
[ 0.948000] CPU 0 Unable to handle kernel paging request at virtual address 00010203, epc == 8028ddf8, ra == 801ad5d4
[ 0.956000] Oops[#1 ]:
[ 0.956000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.18.8 #22
[ 0.956000] task: 8181da78 ti: 8181e000 task.ti: 8181e000
[ 0.956000] $ 0 : 00000000 10008f00 00010203 81049e40
[ 0.956000] $ 4 : 00010203 000000d0 00000000 000000fd
[ 0.956000] $ 8 : 00000000 80015490 00000000 80370000
[ 0.956000] $12 : 00000000 00000001 00000000 2f736269
[ 0.956000] $16 : 00010203 000000d0 8007bde0 81482000
[ 0.956000] $20 : 00000000 00000004 81481f80 803c4b78
[ 0.956000] $24 : 00000000 00000000
[ 0.956000] $28 : 8181e000 8181fbe8 80b20000 801ad5d4
[ 0.956000] Hi : 00000000
[ 0.956000] Lo : 00000000
[ 0.956000] epc : 8028ddf8 strlen+0x4/0x20
[ 0.956000] Not tainted
[ 0.956000] ra : 801ad5d4 kstrdup+0x30/0x84
[ 0.956000] Status: 10008f03 KERNEL EXL IE
[ 0.956000] Cause : 00800008
[ 0.956000] BadVA : 00010203
[ 0.956000] PrId : 0002a010 (Broadcom BMIPS4350)
[ 0.956000] Modules linked in:
[ 0.956000] Process swapper/0 (pid: 1, threadinfo=8181e000, task=8181da78, tls=00000000)
[ 0.956000] Stack : 8148aa00 803c4bcc 00000000 801cd9d0 00000000 8148a400 818a1400 003f0000
81482000 8007bde0 8148aa00 800ac78c 8148aa00 00000004 8037ae30 8181fc4c
8148aa00 803bc074 803c0000 80074b84 00000000 00010000 00000004 ffffffff
8037ae30 00000004 8148aa00 00000004 803c4b80 818a1400 803c0000 00000005
81481f80 80074ce0 8181fc84 00000005 81879800 8008ece4 00000000 003f0000
...
[ 0.956000] Call Trace:
[ 0.956000] [<8028ddf8>] strlen+0x4/0x20
[ 0.956000] [<801ad5d4>] kstrdup+0x30/0x84
[ 0.956000] [<8007bde0>] allocate_partition+0x58/0x93c
[ 0.956000] [<80074ce0>] add_mtd_partitions+0x90/0x144
[ 0.956000] [<801cc228>] mtd_device_parse_register+0x78/0xcc
[ 0.956000] [<801e7870>] of_flash_probe+0x658/0x728
[ 0.956000] [<80216ee0>] platform_drv_probe+0x24/0x60
[ 0.956000] [<801221f4>] driver_probe_device+0xcc/0x214
[ 0.956000] [<800466f8>] __driver_attach+0x7c/0xb4
[ 0.956000] [<800c38bc>] bus_for_each_dev+0x94/0xa4
[ 0.956000] [<800c35e4>] bus_add_driver+0x104/0x1ec
[ 0.956000] [<80122400>] driver_register+0xac/0x100
[ 0.956000] [<80113a5c>] do_one_initcall+0x148/0x204
[ 0.956000] [<803cbd1c>] kernel_init_freeable+0x168/0x220
[ 0.956000] [<800157bc>] kernel_init+0x10/0x114
[ 0.956000] [<800108a8>] ret_from_kernel_thread+0x14/0x1c
[ 0.956000]
[ 0.956000]
Code: 03e00008 27bd0028 00801021 <80430000> 10600003 00000000 080a377e 24420001 03e00008
[ 1.192000] ---[ end trace 9d89ccbcae27fe40 ]---
[ 1.200000] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
[ 1.200000]
[ 1.200000] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44787
2015-03-15 14:19:22 +00:00
Jonas Gorski
40e6eae61f
brcm63xx: fix ethernet breakage in 3.18
...
Linux commit d75b1ade567ffab ("net: less interrupt masking in NAPI")
chose the samantics of the napi poll return value, which caused napi to
not resume interrups/polling anymore.
Fix the return value to restore expected behaviour.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44576
2015-02-28 19:59:46 +00:00
Jonas Gorski
6df9324642
brcm63xx: fix BCM63268 interrupt register locations for legacy probe
...
Legacy probe passed the IRQSTAT registers instead of the IRQMASK
registers causing all register accesses to be offset by 16 bytes.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44575
2015-02-28 19:59:34 +00:00
Jonas Gorski
c2a89871c2
brcm63xx: fix gpio register usage
...
The driver expected data then dir, but both dts and legacy code passed
dir then data. Fix this by making the driver expect the registers in
ascending order, i.e. dir then data.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44574
2015-02-28 19:59:26 +00:00
Jonas Gorski
b694c45d33
brcm63xx: backport and enable DT spi-gpio no CS support
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 44570
2015-02-27 23:48:48 +00:00
Jonas Gorski
8ff23c60e2
brcm63xx: remove gpio base workaround
...
Now that all gpio users without named gpios use DT, we do not need
to fix the gpio controller bases anymore.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44567
2015-02-27 17:40:09 +00:00
Jonas Gorski
b82cb155fc
brcm63xx: move buttons and leds to dts files
...
Register buttons and leds through DT for all available dts,
and remove them from the board files.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo: remove leds/buttons from board files
fix wrong led polarities for dsl-274xb-c2, cpva642, p870hw
comment out spi-gpio and associated leds]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44566
2015-02-27 17:40:04 +00:00
Jonas Gorski
eea227c60d
brcm63xx: probe gpio controllers through DT
...
Add a generic mmio gpio controller based driver and probe it
through device tree.
Use aliases for base calculation until we converted all users to
device tree or named gpios.
Convert bcm63xx_enet's ephy-reset gpio to use a named gpio.
While at it, remove the duplicate reset gpio defintion for livebox.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44565
2015-02-27 17:39:49 +00:00
Jonas Gorski
1efb7398e1
brcm63xx: convert BTV2500V to dts
...
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44564
2015-02-27 17:39:29 +00:00
Jonas Gorski
90c15beee6
brcm63xx: convert RTA1320 to dts
...
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44563
2015-02-27 17:39:21 +00:00
Jonas Gorski
f3c071b376
brcm63xx: add dts and profile for Livebox
...
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44559
2015-02-27 17:38:46 +00:00
Jonas Gorski
92eb27f56d
package: mtd: move bcm963xx_tag definition into source code
...
Remove the need for the header file to be exported - we don't need most
of it anyway; all we care about are the offset of the rootfs length and
header crc fields.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 44557
2015-02-27 17:38:25 +00:00
Jonas Gorski
bdb1ee51f8
brcm63xx: fix a few issues in irq chip drivers
...
Fix locking and lock usage, making it compile for SMP.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43578
2014-12-08 16:11:52 +00:00
Jonas Gorski
bc4dd8e119
brcm63xx: refresh patches
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43576
2014-12-08 16:11:26 +00:00
Jonas Gorski
3fa17f6d58
brcm63xx: add DT support for USR9108
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43575
2014-12-08 16:11:08 +00:00
Jonas Gorski
218582e8ea
brcm63xx: add DT support for F5D7633
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43574
2014-12-08 16:11:03 +00:00
Jonas Gorski
d5f1dd9079
brcm63xx: add DT support for DG834GT/PN
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43573
2014-12-08 16:10:54 +00:00
Jonas Gorski
b0ae41f849
brcm63xx: add DT support for TD-W8900GB
...
According to the vendor tarball, the TD-w8900GB's flash has 64k erase
block size, but CFE spans two blocks. So fixup the image offset
accordingly but keep block size at its default (64k).
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo: add commit message, add image offset, change nvram offset]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43572
2014-12-08 16:10:46 +00:00
Jonas Gorski
84200cf189
brcm63xx: add DT support for DSL-2640B
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43571
2014-12-08 16:10:41 +00:00
Jonas Gorski
929ade0648
brcm63xx: add DT support for CPVA642
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43570
2014-12-08 16:10:17 +00:00
Jonas Gorski
e8068f0b1b
brcm63xx: register interrupt-controllers through DT when possible
...
Add the required nodes for the interrupt controllers and register
them through DT when a DTB is present.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43457
2014-12-01 00:52:07 +00:00
Jonas Gorski
ef4f69adc0
brcm63xx: convert to irq domain
...
Add irq-domain aware irqchip drivers for the irq controllers of bcm63xx
and switch to use them.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43454
2014-12-01 00:51:51 +00:00
Jonas Gorski
bb312899f6
brcm63xx: refresh patches
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43453
2014-12-01 00:51:24 +00:00
Jonas Gorski
2b46097364
brcm63xx: add DT support for DSL-2650U
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43452
2014-12-01 00:51:17 +00:00
Jonas Gorski
61637aea1b
brcm63xx: add DT support for DSL-2740B/DSL-2741B rev F1
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43451
2014-12-01 00:51:12 +00:00
Jonas Gorski
53214ca548
brcm63xx: Add DT support for F@ST2504n
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43450
2014-12-01 00:51:08 +00:00
Jonas Gorski
40350a5daf
brcm63xx: add DT support for F@ST2704V2
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43449
2014-12-01 00:51:04 +00:00
Jonas Gorski
3872151ce0
brcm63xx: add DT support for F@ST2604
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43448
2014-12-01 00:50:59 +00:00
Jonas Gorski
fb2a44df50
brcm63xx: refresh patches
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43363
2014-11-24 14:44:40 +00:00
Jonas Gorski
c6fc6b42e1
brcm63xx: Add DT support for SPW303V
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43362
2014-11-24 14:44:33 +00:00
Jonas Gorski
5540ca300e
brcm63xx: Add DT support for DV-201AMR
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43361
2014-11-24 14:44:28 +00:00
Jonas Gorski
89000dea4c
brcm63xx: Add DT support for RG100A
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43360
2014-11-24 14:44:23 +00:00
Jonas Gorski
13d6fa0081
brcm63xx: Add DT support for A226G/M
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
SVN-Revision: 43359
2014-11-24 14:44:19 +00:00
Jonas Gorski
2bab3e2796
brcm63xx: move board compatible strings into a table
...
Move compatible strings from board structs into separate table. This
allows for several board compatibles to match to the same board in case
e.g. only the flash size / partitions differ.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 43341
2014-11-22 12:25:52 +00:00
Jonas Gorski
14ebb012a4
brcm63xx: fix wrong fixups pointer
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42756
2014-10-03 11:03:58 +00:00
Jonas Gorski
2fa8a656a6
brcm63xx: update spw500v sprom to values from gpl tarball
...
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42740
2014-10-02 12:26:36 +00:00
Jonas Gorski
60cb45427e
brcm63xx: reorder some patches according to their upstream state
...
The irq rewrite was accepted upstream.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42739
2014-10-02 12:26:19 +00:00
Jonas Gorski
57214b00ae
brcm63xx: Add DT support for 96368MVWG
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42738
2014-10-02 12:26:07 +00:00
Jonas Gorski
477826ef31
brcm63xx: Add DT support for 96368MVNgr
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42737
2014-10-02 12:25:57 +00:00
Jonas Gorski
e7ade47fba
brcm63xx: Add DT support for 96338W
...
Renamed of_board_id to convention.
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42734
2014-10-02 12:25:27 +00:00
Jonas Gorski
a950e2fce8
brcm63xx: Add DT support for 963281TAN
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42727
2014-10-02 12:24:29 +00:00
Jonas Gorski
ddcc29290c
brcm63xx: fix brcm63xx fallback typo
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42726
2014-10-02 12:24:14 +00:00
Jonas Gorski
51e1f1476f
brcm63xx: Add DT support for P870HW-51a
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo: fix nvram partition offset]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42248
2014-08-21 11:28:59 +00:00
Jonas Gorski
b339304425
brcm63xx: Add DT support for HG553
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo: fix linux partition length]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42247
2014-08-21 11:28:54 +00:00
Jonas Gorski
2f09960e46
brcm63xx: Add DT support for HG520v
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo: fix nvram partition offset]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42246
2014-08-21 11:28:46 +00:00
Jonas Gorski
7bc83fdd13
brcm63xx: Add DT support for A4001N
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42245
2014-08-21 11:28:43 +00:00
Jonas Gorski
a180c80f23
brcm63xx: Add DT support for A4001N1
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42244
2014-08-21 11:28:40 +00:00
Jonas Gorski
83651bad85
brcm63xx: Add DT support for WAP-5813n
...
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
[jogo: make linux partition writable]
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 42243
2014-08-21 11:28:37 +00:00