Commit Graph

624 Commits (a485bd350b3c0278b28f121a797843e4d29911e4)

Author SHA1 Message Date
Hauke Mehrtens f587bacc26 brcm47xx: b44: start the phy
We did not start the PHY when an external phy was in use. Without this
patch the driver uses half duplex mode and the switch uses full duplex
mode, which causes problems.
Thank you fback for spotting this problem.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39719
2014-02-23 16:58:12 +00:00
Hauke Mehrtens 15a7efa119 brcm47xx: fix detection of some Linksys WRT54G* devices
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39718
2014-02-23 15:57:37 +00:00
Gabor Juhos f677b1bc7e kernel: update 3.10 to 3.10.32
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 39707
2014-02-23 10:59:40 +00:00
Hauke Mehrtens 2ad7e55a89 brcm47xx: new patch adding arch workarounds.c
It was recently sent to linux-mips for comments. It adds workaround for
WNR3500L to enable USB port.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 39469
2014-02-04 23:32:01 +00:00
Hauke Mehrtens 14113eb88f brcm47xx: use upstream patch removing WGT634U code
It does the same, it just reorders things

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 39468
2014-02-04 23:30:38 +00:00
Hauke Mehrtens db73f1433b brcm47xx: move OpenWrt arch patches a bit further
This allows picking more upstreamed stuff

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 39467
2014-02-04 23:25:17 +00:00
Hauke Mehrtens 7ae5ff92ae kernel: ssb: update ssb to a version from kernel 3.14-rc1
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39464
2014-02-04 22:54:29 +00:00
Hauke Mehrtens e0d4a548fb kernel: bcma: update bcma to a version from kernel 3.14-rc1
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39463
2014-02-04 22:53:52 +00:00
Gabor Juhos a2543d72d8 kernel: update 3.10 to 3.10.28
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 39399
2014-01-26 11:30:34 +00:00
Hauke Mehrtens 6df49552fc brcm47xx: add brcmsmac + bgmac profile
Signed-off-by: Cody P Schafer <devel@codyps.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39258
2014-01-12 19:04:54 +00:00
Hauke Mehrtens f912b47931 brcm47xx: parse model from cpuinfo
Instead of looking into the proc entry provided by broadcom-diag use
the board info from /proc/cpuinfo to get the board we are on.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39256
2014-01-12 18:56:57 +00:00
Hauke Mehrtens bcdea80b0b brcm47xx: fix led indication
Use the new led api also on brcm47xx.
The led for failsafe indication is searched for.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39255
2014-01-12 18:56:36 +00:00
Hauke Mehrtens edab966e45 brcm47xx: fix network failsafe indication
Remove the code used on the old switch driver.
The Ethernet drive is loaded as a module and needs some time to get up
therefor we added some wait function.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39254
2014-01-12 18:56:15 +00:00
Hauke Mehrtens f4f31511fd brcm47xx: do not use broadcom-diag
This makes brcm47xx target use the default gpio led and button driver
and not broadcom-diag any more.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39253
2014-01-12 18:55:52 +00:00
Hauke Mehrtens c2992ee273 brcm47xx: add new led and button support
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39252
2014-01-12 18:55:25 +00:00
Hauke Mehrtens 30cf6f5815 brcm47xx: update some patches to versions in linux mainline
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39251
2014-01-12 18:54:38 +00:00
Hauke Mehrtens 7d654de038 brcm74xx: fix patch for BCM4706 CPUs
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39250
2014-01-12 18:51:45 +00:00
Hauke Mehrtens e585841044 brcm47xx: update mtd drivers
This backports some patches from linux upstream.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39249
2014-01-12 18:50:45 +00:00
Gabor Juhos 0e2586a774 kernel: update 3.10 to 3.10.26
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 39220
2014-01-11 16:06:37 +00:00
Hauke Mehrtens 8c085f647b brcm47xx: fix cpu wait for BCM4706
This was called to early.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39167
2013-12-26 23:30:10 +00:00
Hauke Mehrtens 961d5b4453 brcm47xx: b44: This updates the phylib patches to the version send upstream
This uses a fixed phy instead of a dummy one.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39166
2013-12-26 23:27:52 +00:00
Hauke Mehrtens 36197755dc brcm47xx: deactivate early printk support
This breaks some devices where the serial console is not at port 0 but
somewhere else.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39060
2013-12-15 19:19:16 +00:00
Hauke Mehrtens 952db22551 kernel: update kernel 3.10 to 3.10.24
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 39059
2013-12-15 19:16:30 +00:00
Hauke Mehrtens 94f7ae90f8 brcm47xx: misc cleanups
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38980
2013-12-01 18:12:57 +00:00
Hauke Mehrtens c48f285147 brcm47xx: deactivate mips wait instruction only for BCM4706
The wait instruction is only broken on the BCM4706 and not on the other
similar SoCs.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38979
2013-12-01 18:05:08 +00:00
Hauke Mehrtens cbbfc5f1e6 brcm47xx: config: set CONFIG_HZ=100 and CONFIG_IP_ROUTE_VERBOSE
This sets both values to the OpenWrt default values. There is no reason
to use some brcm47xx specific values here.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38978
2013-12-01 17:34:27 +00:00
Hauke Mehrtens 3fb7e8b851 brcm47xx: add vectored interrupts
This adds support for vectored interrupts in this SoC.
This is supported by the 74K cpus.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38975
2013-12-01 16:37:58 +00:00
Hauke Mehrtens 25ca004f24 brcm47xx: add cpu overwrites
bcm47xx misses cpu overwrites for the features of the CPUs used in
these SoCs.
Instead of manually checking, it is now known at compile time for some
options and the compiler is able to remove the checks and optimize the
code.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38974
2013-12-01 16:36:38 +00:00
Hauke Mehrtens d7ebbd0ac7 brcm47xx: use "firmware" partition name
Some time ago, after switching to the mainline bcm47xxpart driver
following patch has been applied:

commit 03cef8725d2062335ffc3de50fc037b294fd458c
Author: hauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date:   Sat Apr 6 22:22:26 2013 +0000

    brcm47xx: use old partition names again for kernel 3.8

    This fixes sysupgrade. The partition names are used all over the Internet in various howtos.

    Thank you russell for spotting this problem.

I propose to revert this change and make sysupgrade use "firmware"
instead. This makes brcm47xx compatible with widely used ar71xx and
after all "firmware" sounds like a much better name for... the firmware.

This change doesn't affect "sysupgrade" usage, because it never takes a
partition name as a parameter. This change only affects users using mtd
tool directly. Hopefully there are not many howtos using "mtd" command.

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>

SVN-Revision: 38973
2013-12-01 16:32:32 +00:00
Gabor Juhos f1ef0b92be kernel: update 3.10 to 3.10.21
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 38972
2013-12-01 09:59:53 +00:00
Hauke Mehrtens 4abd860ab2 brcm47xx: swap also early boot console if necessary.
Some devices are using tty1 as the default console, also swap the early
boot console in such case. This is needed for the WGT634U.

Thank you Russell for reporting this.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38794
2013-11-13 18:38:18 +00:00
Hauke Mehrtens 32cbc948a1 brcm47xx: fix netconfig for inverted vlan?ports in nvram
This was observed on the Belkin Share F7D7302.

SVN-Revision: 38769
2013-11-11 23:04:47 +00:00
Hauke Mehrtens e8d0b52496 linux/brcm47xx : Belkin F7Dx30x board detection
boardnum is unstable, so allow using NULL to make it unchecked.

A method for differentiating F7D3301 from F7D3302 using nvram is
unknown at this point. Reading the first 32bits of magic from the
"linux" mtd partition would do the trick, but these 2 are similar
enough that we don't need separate led/button definitions. Not knowing
which one you have is only a usability issue for upgrading the device:
they expect different magic numbers for their trx images.

Signed-off-by: Cody P Schafer <devel@codyps.com>

SVN-Revision: 38767
2013-11-11 23:04:00 +00:00
Hauke Mehrtens 091e3fde4c brcm47xx: b44: fix logic in BUG_ON()
It is a problem when phydev is not set at this position and not the other way around.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38744
2013-11-11 21:23:29 +00:00
Hauke Mehrtens 874650d235 brcm47xx: add detection for Linksys WRT54GS V1
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38700
2013-11-09 20:08:09 +00:00
Hauke Mehrtens 68081fc1c8 brcm47xx: register ADM6996L switch
This patch makes it possible to use adm6996.c on first generation
BCM47XX devices with ADM switches.

This was tested on a WRT54GS version 1.0, thank you Dirk Neukirchen for
the device.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38699
2013-11-09 19:29:46 +00:00
Hauke Mehrtens 73ed236907 brcm47xx: fix detection of Asus RT-N12B1 and Netgear WNR3500L
This closes #14367 and #14328.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38656
2013-11-05 17:09:19 +00:00
Gabor Juhos 35656042f1 kernel: update 3.10 to 3.10.18
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 38652
2013-11-05 08:25:45 +00:00
Hauke Mehrtens 40790e6b84 brcm47xx: b44: fix error handling for dummy phy creation
When the mdio bus is unregistered the newly created phy will also be
unregistered and freed.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38539
2013-10-25 21:12:48 +00:00
Hauke Mehrtens c185d48b7c brcm47xx: b44: add dummy phy device if we do not find any
On some devices with e.g. a BCM2535F switch the second MAC is used, but
we can not find a phy under all addresses between 0 and 31, 0xffffffff
is returned as phy id. If we can not find a phy at the expected address
create a dummy one.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38538
2013-10-25 21:02:13 +00:00
Gabor Juhos b6b06000eb kernel: update 3.10 to 3.10.17
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>

SVN-Revision: 38506
2013-10-23 12:51:05 +00:00
Hauke Mehrtens 6d2136c3f2 brcm47xx: b44: detect external phy by bit set in DevControl register
Without this patch we treated only phy addr 30 as an external phy, but
there is a register to check that. Now we do not have to try to reset
the switch to check for an external switch.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38502
2013-10-22 21:01:35 +00:00
Hauke Mehrtens f023c09699 brcm47xx: activate ARP daemon support
This just add some bytes to the kernel and is activated on other targets.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38388
2013-10-13 22:46:18 +00:00
Hauke Mehrtens 81e2f00367 kernel: update kernel to 3.10.15
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38384
2013-10-13 19:28:29 +00:00
Hauke Mehrtens 551a250e58 brcm47xx: fix detection of some boards
This adds some more boards.

This fixes parts of #14316 and #14133.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38383
2013-10-13 19:27:24 +00:00
Hauke Mehrtens 64c2bc256c brcm47xx: Cocci spatch "noderef"
sizeof when applied to a pointer typed expression gives the size of the
pointer.
Found by coccinelle spatch "misc/noderef.cocci"

Signed-off-by: Thomas Meyer <thomas@m3y3r.de>

SVN-Revision: 38312
2013-10-07 00:01:01 +00:00
Hauke Mehrtens 2402f8a9ee brcm47xx: move clock detection patches
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38311
2013-10-07 00:00:10 +00:00
Hauke Mehrtens 4c193a30ce brcm47xx: move and rename nvram gpio patch
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38310
2013-10-06 23:57:11 +00:00
Hauke Mehrtens b201818044 brcm47xx: update early printk patches
Early printk was disabled because it caused hangs on some devices, the
old patches were using the CFE console now we use the normal serial
console, it is at a constant address.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38309
2013-10-06 23:55:35 +00:00
Hauke Mehrtens ebf0778721 brcm47xx: update board detection patches
Add patches like they are currently in the mainline mips tree and add
some more pending patches for board detection.

* Now the board name is shown under machine in /proc/cpuinfo.

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>

SVN-Revision: 38308
2013-10-06 23:51:24 +00:00