When the Ethernet controller is powered down and someone wants to
access the mdio bus like the witch driver (b53) the system crashed if
PCI_D3hot was set before. This patch deactivates this power sawing mode
when a switch driver is in use.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41527 3c298f89-4303-0410-b956-a3cf2f4a3e73
Now the mac address is increased by two for the first fallback mac
address. It could be that the address increased should be used for the
wan port.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41515 3c298f89-4303-0410-b956-a3cf2f4a3e73
The address prefix 00:90:4C is used by Broadcom in their initial
configuration. When a mac address with the prefix 00:90:4C is used
all devices from the same series are sharing the same mac address.
To prevent mac address collisions we replace them with a mac address
based on the base address.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41513 3c298f89-4303-0410-b956-a3cf2f4a3e73
Without this patch the switch config for the adm switch did not worked,
because hey are not names eth0.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41512 3c298f89-4303-0410-b956-a3cf2f4a3e73
Old OpenWrt releases were using network configs that are not valid
anymore. They were specifying ports tagging in a different way (or were
not tagging CPU at all) and were using VID 0 which is a reserved value.
Modifying network configuration to apply all needed changes would be
pretty tricky. Script /etc/init.d/netconfig that generates new config is
quite complex itself.
So instead let's save the most important settings, regenerate config
from the scratch and restore values. This should work for 99% of users.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41500 3c298f89-4303-0410-b956-a3cf2f4a3e73
CONFIG_LEDS_GPIO_REGISTER is selected by the bcm47xx arch code.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41488 3c298f89-4303-0410-b956-a3cf2f4a3e73
205-fix-headers_install.patch is obseleted by upstream commit 3246a0352e3d58380b9386570f1db1faf7edf8a8
Signed-off-by: John Crispin <blogic@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41351 3c298f89-4303-0410-b956-a3cf2f4a3e73
With this patch the mips74k subtarget will be compiled with optimized
compiler options to generated smaller and faster code. This currently
breaks broadcom-wl, because the binary blob is only compiled with
mipsr1 support.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41050 3c298f89-4303-0410-b956-a3cf2f4a3e73
These were only used by broadcom-diag any more.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41048 3c298f89-4303-0410-b956-a3cf2f4a3e73
This fixes some strange problems with tg3. I assume that the Ethernet
driver was not brought up if the switch was named switch0.
This was reported and tested by ernesto (Faulp3lz).
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41042 3c298f89-4303-0410-b956-a3cf2f4a3e73
All new devices (with MIPS 74K CPU) are based on BCMA SoC and have
Ethernet core supported by bgmac. Create a new subtarget to generate
optimized builds.
This is just a beginning, further tweaks (like kernel configuration)
are still possible. This decreases default root.squashfs by ~128 kB.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41025 3c298f89-4303-0410-b956-a3cf2f4a3e73
ARGC is a 'C-ism', but not known/valid in shell-syntax - insert the correct
var $# (=number of args) here. under normal conditions this had no impact,
but we should at least correct it. the error was observable like this:
root@box:~ [ -e "/etc/functions.sh" ] && . /etc/functions.sh
root@box:~ [ -e "/lib/functions.sh" ] && . /lib/functions.sh
root@box:~ . /lib/upgrade/platform.sh
root@box:~ . /lib/upgrade/common.sh
root@box:~ platform_check_image /tmp/myfirmware.bin
ash: bad number
root@box:~ echo $?
0
Signed-off-by: Bastian Bittorf <bittorf@bluebottle.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40915 3c298f89-4303-0410-b956-a3cf2f4a3e73
We should be more careful and don't generate 128K JFFS2 images for
devices with flashes using 64K blocks (nor the other way).
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40762 3c298f89-4303-0410-b956-a3cf2f4a3e73
Handle it by creating a new patch for simple database changes.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40345 3c298f89-4303-0410-b956-a3cf2f4a3e73
And while at it, fix the nomenclature, BCM947xx/953xx refer to specific boards,
while BCM47xx/BCM53xx refer to chip identification number.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39841 3c298f89-4303-0410-b956-a3cf2f4a3e73
Let the switch start the carrier and set the duplex mode independently
if this nic is up of not.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39733 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39719 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39469 3c298f89-4303-0410-b956-a3cf2f4a3e73
It does the same, it just reorders things
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39468 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39256 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39255 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39254 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39253 3c298f89-4303-0410-b956-a3cf2f4a3e73
This backports some patches from linux upstream.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39249 3c298f89-4303-0410-b956-a3cf2f4a3e73
This was called to early.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39167 3c298f89-4303-0410-b956-a3cf2f4a3e73
This uses a fixed phy instead of a dummy one.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39166 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39060 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38979 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38978 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38975 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38974 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38973 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38794 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38767 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38744 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38699 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38539 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38538 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38502 3c298f89-4303-0410-b956-a3cf2f4a3e73
This just add some bytes to the kernel and is activated on other targets.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38388 3c298f89-4303-0410-b956-a3cf2f4a3e73
This adds some more boards.
This fixes parts of #14316 and #14133.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38383 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38312 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38309 3c298f89-4303-0410-b956-a3cf2f4a3e73
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>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38308 3c298f89-4303-0410-b956-a3cf2f4a3e73
* do not try initialize a unused phy
* some improvements to the phylib patch
* do not turn the phy off when mac is off
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38306 3c298f89-4303-0410-b956-a3cf2f4a3e73
Modify /etc/init.d/netconfig to use UCI defaults for building the
default network config, which includes appropriate defaults for IPV6.
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38294 3c298f89-4303-0410-b956-a3cf2f4a3e73
The bgmac driver will be used on the brcm47xx and the bcm53xx target.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38289 3c298f89-4303-0410-b956-a3cf2f4a3e73
The bgmac driver will be used on the brcm47xx and the bcm53xx target.
These are only the patches already applied in current net-next/master
branch.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38288 3c298f89-4303-0410-b956-a3cf2f4a3e73
The SRAB interface is used on BCM4707 and BCM5301X SoCs.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38198 3c298f89-4303-0410-b956-a3cf2f4a3e73
This adds support for Byte Queue Limits in bgmac and b44, now it is
possible to use more advanced network queue control algorithms.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38038 3c298f89-4303-0410-b956-a3cf2f4a3e73
This updates the patches for BCM5354 to the version send for upstream
Linux inclusion.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38037 3c298f89-4303-0410-b956-a3cf2f4a3e73
This is now the version which was send for mainline Linux kernel
inclusion. The data needed to detection a board is now stored in init
data.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38036 3c298f89-4303-0410-b956-a3cf2f4a3e73
Thank you Rafał for the data.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38035 3c298f89-4303-0410-b956-a3cf2f4a3e73
This patch adds support for Huawei E970 wireless gateway devices.
It has been tested on an E970 labelled as T-Mobile web'n'walk Box IV.
E960/B970 should work too, from what I know it's basically the same hardware.
The device has a Broadcom BCM5354 SoC and a built-in 3G USB modem.
It uses a hardware watchdog which needs GPIO-7 to be toggled at least
every 1-2 seconds. This patch uses gpio_wdt module (see my previous
patch today) to take care of this.
Tested and works: 3G wan, wlan+LED, VLAN config, failsafe using reset
button, image to be used for upgrade from OEM firmware's web interface
Link to the wiki page I've created: <http://wiki.openwrt.org/toh/huawei/e970>
Issue:
* lzma-loader crashes, so gzipped kernel is used. Presumably due to watchdog
reset during kernel decompress.
Signed-off-by: Mathias Adam <m.adam--openwrt@adamis.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38011 3c298f89-4303-0410-b956-a3cf2f4a3e73