This adds detection for Linksys E1200 V2
Thank you Lightsword and Rafał.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38006 3c298f89-4303-0410-b956-a3cf2f4a3e73
A new type of partition with magic FCTY was found on Huawei E970:
46 43 54 59 4b 51 37 4e 41 42 31 38 41 32 39 30 |FCTYKQ7NAB18A290|
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38005 3c298f89-4303-0410-b956-a3cf2f4a3e73
This is important patch for new devices that support unaligned
addressing. That devices suffer from the backward-compatibility bug in
DMA engine. In theory we should be able to use old mechanism, but in
practice DMA address seems to be randomly copied into status register
when hardware reaches end of a ring. This breaks reading slot number
from status register and we can't use DMA anymore.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38004 3c298f89-4303-0410-b956-a3cf2f4a3e73
This is based on a patch by Mathias Adam.
Signed-off-by: Mathias Adam <m.adam--openwrt@adamis.de>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38001 3c298f89-4303-0410-b956-a3cf2f4a3e73
Without this patch it is impossible to read et_swtype, because the 1
byte space is needed for the terminating null byte. Now it should be
possible to read decimal and hex vars of max 8 bit.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37999 3c298f89-4303-0410-b956-a3cf2f4a3e73
Most of the bcm47xx devices use TRX format for storing kernel and some
partition like Squashfs or JFFS2. This is pretty flexible solution, CFE
(the bootloader) just writes (and later boots) TRX at some hardcoded
place and paritions can vary in the size.
However some devices don't use TRX format. Very recently we have
discovered ZTE H218N that has kernel and rootfs partitions at some
"random" places.
This patch allows Linux find a rootfs partition after installing custom
image with a CFE bootloader.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37998 3c298f89-4303-0410-b956-a3cf2f4a3e73
* Use different structs depending on the number of nvram variables to check.
* Add detection of ZTE H218N, this closes#14151.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37996 3c298f89-4303-0410-b956-a3cf2f4a3e73
Some devices (BCM4749, BCM5357, BCM53572) have internal switch that
requires initialization. We already have code for this, but because
of the typo in code it was never working. This resulted in network not
working for some routers and possibility of soft-bricking them.
Use correct bit for switch initialization and fix typo in the define.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37993 3c298f89-4303-0410-b956-a3cf2f4a3e73
This patch adds board detection for the Linksys E1000 V2.1 router, as well
as GPIO support for same.
This fixes bug #14135. Currently, wired networking isn't working on the
router, and I haven't tried the wireless, but with this patch, OpenWRT
successfully boots, and all the LEDs and buttons work properly.
Signed-off-by: Zachary Catlin <zcatlin@indiana.edu>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37977 3c298f89-4303-0410-b956-a3cf2f4a3e73
This uses a new switch driver.
The old ADMTEK Adm6996 switch is not supported any more.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37650 3c298f89-4303-0410-b956-a3cf2f4a3e73
This is untested, but probably needed to make it work with the phy lib switch driver.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37649 3c298f89-4303-0410-b956-a3cf2f4a3e73
bcm47xx_nvram_gpio_pin() returns a gpio pin number for a given name based
on configuration data in nvram.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37644 3c298f89-4303-0410-b956-a3cf2f4a3e73
With this patch it is possible to boot a device with kernel 3.10 a second time.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37625 3c298f89-4303-0410-b956-a3cf2f4a3e73
This should fix some build problems in b43 with kernel 3.3.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37432 3c298f89-4303-0410-b956-a3cf2f4a3e73
This makes it possible to use swconfig to controll the switch.
This was tested with devices using b43 and bgmac.
This was not tested on devices using tg3.
This does not support the adm switch used in some very old devices.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37304 3c298f89-4303-0410-b956-a3cf2f4a3e73
This fixes some problems with the switch handling
* It now send the messages again to indicate a button for failsafe mode should be pressed
* it does not leak packages between wan and lan any more
* the switch works again in normal mode
The Ethernet connection has to be up when the switch driver switch-robo
is insmoded therefor we just do it again.
Explicitly set enable_vlan to prevent leaking packages.
This should close#13869, #13868 and #13716
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37286 3c298f89-4303-0410-b956-a3cf2f4a3e73
add the boot flag to make the kernel modules needed for Ethernet and
diag load on startup.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37284 3c298f89-4303-0410-b956-a3cf2f4a3e73
In order to support both normal images and initramfs, ensure that each
target sets KERNELNAME properly so that the generic kernel building code
can copy the corresponding files over $(KDIR) with the appropriate
extension. Update the various paths to the kernel and wrapper images
from $(LINUX_DIR)/arch/$(ARCH)/boot/$(foo) to $(KDIR)/$(foo).
Signed-off-by: Florian Fainelli <florian@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37049 3c298f89-4303-0410-b956-a3cf2f4a3e73
I recently picked up a WNDR3700 to put OpenWRT on, and only after tearing into the box did I find it
was one of the v3 boards, with poor OpenWRT support. This patch should add the board detection and
LED/button control to the broadcom-diag module, and should generate a netgear .chk image that the
bootloader and stock firmware will accept.
The changes to the broadcom-diag module are more than a few lines because the WNDR3700v3 is driving
its LEDs through an HC164 8-bit shift register.
Signed-off-by: Owen Kirby <osk@exegin.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36482 3c298f89-4303-0410-b956-a3cf2f4a3e73
The biggest change with this kernel is a new partition parser.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36480 3c298f89-4303-0410-b956-a3cf2f4a3e73
This fixes sysupgrade. The partition names are used all over the Internet in various howtos.
Thank you russell for spotting this problem.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36235 3c298f89-4303-0410-b956-a3cf2f4a3e73
Also refresh the related generic/platform patches.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36039 3c298f89-4303-0410-b956-a3cf2f4a3e73
Parse the cpu port from swconfig and explicitly mark the cpu port as tagged.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35911 3c298f89-4303-0410-b956-a3cf2f4a3e73
WNDR3400v2 is based on BCM53xx . Image that is created breaks the router somehow therefore "#".
CFE and NVRAM contain different vars - example:
CFE line original: Device eth0: hwaddr 74-44-01-37-C6-69, ipaddr 192.168.1.1, mask 255.255.255.0
CFE after openwrt: Device eth0: hwaddr 00-FF-FF-FF-FF-FF, ipaddr 192.168.1.1, mask 255.255.255.0
Logs were posted earlier on this mailing list: https://lists.openwrt.org/pipermail/openwrt-devel/2012-July/016174.html
Different logs with factory firmware are in the wiki: http://wiki.openwrt.org/toh/netgear/wndr3400#wndr3400v2
(and on wikidevi for example)
Signed off by: Dirk Neukirchen <dirkneukirchen@web.de>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35790 3c298f89-4303-0410-b956-a3cf2f4a3e73
The Broadcom switch driver says that vlan0 should not be used with any switch other than bcm5325.
This makes OpenWrt always use vlan1 and vlan2 instead.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35704 3c298f89-4303-0410-b956-a3cf2f4a3e73
This contains the following new bigger changes:
* new partition parser which still could lake some features or have bugs
* new nand flash driver
* using physmap-flash flash driver for parallel flash
* some changes to the serial flash driver
With these changes OpenWrt starts using more of the mainline flash drivers.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35632 3c298f89-4303-0410-b956-a3cf2f4a3e73
Adjust the "AutoLoad" number for the BGMAC module to be prior
to the switch modules. This probably isn't real important as
the modules are loaded in the correct order by preinit anyway.
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35625 3c298f89-4303-0410-b956-a3cf2f4a3e73
Do not try to load bcm57xx.ko any more this is not needed for kernel 2.6 and 3.X
Ask the switch driver where the CPU port is.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35624 3c298f89-4303-0410-b956-a3cf2f4a3e73
The included patch will generate a correct network configuration on the simpletech simpleshare.
Thank you for the patch Will Holmes (RealOpty)
This closes#12361.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35623 3c298f89-4303-0410-b956-a3cf2f4a3e73
The mac address should be aligned to u16 to prevent an unaligned access
in drivers/ssb/pci.c where it is casted to __be16.
This closes#9824.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35618 3c298f89-4303-0410-b956-a3cf2f4a3e73
This also removes kmod-ocf, because kmod-crypto-ocf is automatically selected by kmod-ocf-ubsec-ssb.
Thank you Manuel Munz <freifunk@somakoma.de> for the patch.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35509 3c298f89-4303-0410-b956-a3cf2f4a3e73
Adds specification of the correct cpu_port for Linksys E3000V1 and WRT610NV2
in /lib/preinit/05_init_interfaces_brcm. The list of devices will need to
be expanded. Is there a way to determine the correct cpu_port to use in a
generic sense; for instance, if "/proc/switch/eth0/port/8" exists, or if
"/sys/class/net/eth0/device/driver/module/drivers/bcma:bgmac" exists? Could
a similar method be used in "/etc/init.d/netconfig"?
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35491 3c298f89-4303-0410-b956-a3cf2f4a3e73
The default profile now contains Ethernet drivers for all the types
found on supported boards. There are other profiles for each Ethernet
driver.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35314 3c298f89-4303-0410-b956-a3cf2f4a3e73
Update the default IRQ assignment for unrecognized devices per
the upstream change.
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35121 3c298f89-4303-0410-b956-a3cf2f4a3e73
1) Fix what appears to be a logic error in bgmac_phy_advertise.
2) Fix bgmac_ioctl to use passed phy_id; needed for switch-robo
interface w/ the driver to work correctly. I still have the issue
with the interface always being HD when the speed/duplex is set
manually (e.g., echo "100FD" > /proc/switch/eth0/port/N/media).
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35052 3c298f89-4303-0410-b956-a3cf2f4a3e73
This is based on a patch send by Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34997 3c298f89-4303-0410-b956-a3cf2f4a3e73
This Ethernet driver is in early development stage and still has some problems.
This was working on my bcm4716 based device.
Thanks to Rafał Miłecki <zajec5@gmail.com> for writing this driver.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34995 3c298f89-4303-0410-b956-a3cf2f4a3e73
In addition check_module is not needed, nobody checks the return value.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34993 3c298f89-4303-0410-b956-a3cf2f4a3e73
Adjust the IRQ Flag value from 8 to 7 for I2S Core for BCM4716 and
BCM4748 (per the Broadcom SDK). IRQ Flag values greater than 7 are
ignored when setting the interrupt masks.
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34990 3c298f89-4303-0410-b956-a3cf2f4a3e73
This was party inspirited by patches send by Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34989 3c298f89-4303-0410-b956-a3cf2f4a3e73
This is the version like it was send for mainline inclusion.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34988 3c298f89-4303-0410-b956-a3cf2f4a3e73
The behaviour of calling 'mount' differed depending on whether it called
the busybox-mount, the mount of util-linux, the mount defined in
/lib/functions.sh and /lib/functions/boot.sh
/etc/preinit even included /lib/functions.sh and /lib/functions/boot.sh,
both re-defining 'mount'.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34792 3c298f89-4303-0410-b956-a3cf2f4a3e73
I noticed these changes when reviewing the 2011 Broadcom SDK. I haven't
noticed any obvious changes in behavior with them applied; but thought I
should at least pass them on.
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34670 3c298f89-4303-0410-b956-a3cf2f4a3e73
The irq signal numbers that are send by the cpu are increased by 2 from
the number programmed into the mips core by bcma.
Return the irq number on which the irqs are send in bcma_core_irq() now.
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34669 3c298f89-4303-0410-b956-a3cf2f4a3e73
These patches are not specific to bcm47xx and will be used on other
platforms as well.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34501 3c298f89-4303-0410-b956-a3cf2f4a3e73
The removed symbols are present in the generic configuration.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34404 3c298f89-4303-0410-b956-a3cf2f4a3e73
The removed symbols are present in the generic configuration.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34403 3c298f89-4303-0410-b956-a3cf2f4a3e73
The ASUS WL-520gU and some other similar Asus devices have a BCM5354
running at 200MHZ and not at 240 which is the default for this SoC.
This fixes#4083.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34325 3c298f89-4303-0410-b956-a3cf2f4a3e73
In the old configuration the SoC issued a reboot if the watchdog was
killed also if it was kill with TERM and not KILL.
This will fix#11724.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34324 3c298f89-4303-0410-b956-a3cf2f4a3e73
This watchdog driver should work with SoC having a PMU.
This fixes#11720.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34323 3c298f89-4303-0410-b956-a3cf2f4a3e73
For sysupgrade the generic image should be used and the special image for the wgt634u is just needed for initial flashing over CFE.
russell reported that with this patch sysupgrdae did not worked for him any more and he could not reproduce the error described in #11420.
With the patch the linux partition also contained the loader which is in the first 128KB.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34201 3c298f89-4303-0410-b956-a3cf2f4a3e73
CONFIG_SSB_DRIVER_GIGE is set in the target config of the brcm47xx target, so it will always be activated and the kmod-ssb-gige is not needed any more.
The kmod-ssb-gige package is not generated in an build as it does not contain any files and the makes the image builder fail when generating a image integrating this package.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34150 3c298f89-4303-0410-b956-a3cf2f4a3e73
The image format for the wgt634u is different from the normal format.
Without this patch the partition parser detects a 128kb bigger
partition after every update.
This closes#11420
Thank you b.sander for the patch.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33935 3c298f89-4303-0410-b956-a3cf2f4a3e73
* update the flash driver for bcm47xx to use the stubs already in bcma
* do some misc enhancements to the flash drivers for bcm47xx
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33920 3c298f89-4303-0410-b956-a3cf2f4a3e73
Before it was tried to initialize the deactivated PCIe core in client
mode, but this causes the SoC to hang. Just do not initialize it at all
and ignore the core it is not working and nothing is connected to it
when the specific bit is set in the boardflags.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33620 3c298f89-4303-0410-b956-a3cf2f4a3e73
Sometimes the PCIe card indicates that it has a sprom somewhere and we
are able to read the memory region, but it is empty and not valid. In
these cases we should try to use the fallback sprom as a last chance.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33601 3c298f89-4303-0410-b956-a3cf2f4a3e73
The chip common and the PCIe code are accessing the sprom struct which
is not filled when these cores are initialized. Fix this by adding an
early initialize and fill the sprom struct before accessing it in other
code.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33600 3c298f89-4303-0410-b956-a3cf2f4a3e73
The bcma based SoCs with a ieee80211 core on the SoC and an other
connected via PCIe or USB store the sprom for the SoC with a sb/1/
prefix. The SoC with just one wifi core do not use prefixes. The
BCM4706 do not use a prefix for the SoC part at all, because the prefix
is the path to the ieee80211 core and there is non on the BCM4706.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33597 3c298f89-4303-0410-b956-a3cf2f4a3e73
Sometimes the port 0 was the WAN port or there could be some device
where the port 0 is not wired to an actual Ethernet port. Now telnet in
failsafe will listen on all ports of the switch so user do not have to
search for the correct port any more. This change will make the switch
leak traffic between the WAN and the LAN port, but you should not use
failsafe while connected to a untrusted network.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33544 3c298f89-4303-0410-b956-a3cf2f4a3e73
When not removing support for the wait instruction, when ruining on the
BCM4706 SoC the system stops after msleep() without an exception. I
haven't seen this problem on the other Broadcom SoCs with a 74K CPU,
but in the Broadcom SDK it is deactivated for all CPUs of this type.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33496 3c298f89-4303-0410-b956-a3cf2f4a3e73
There are some ifdefs missing so when only ssb or only bcma was
selected in the kernel config it did not build.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33209 3c298f89-4303-0410-b956-a3cf2f4a3e73
I did not add the last patch, because it add some stubs for the flash drivers and our patches have to be changed for that, if the flash support in bcma is able to do something I will integrate it.
This also contains 3 additional patches fixing some bugs in bcma.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32880 3c298f89-4303-0410-b956-a3cf2f4a3e73
The dcache bug that it works around is a generic issue, not a brcm47xx cache quirk
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32395 3c298f89-4303-0410-b956-a3cf2f4a3e73
Now tg3 works with the Ethernet core of the Linksys WRT610N v1 (again).
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31694 3c298f89-4303-0410-b956-a3cf2f4a3e73
The existing code (prior to the patch) does an "ioremap_nocache" on a
subset of a memory region that I think has already been mapped, and then
un-maps that smaller region when it is finished.
Thanks Nathan Hintz for the patch
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31481 3c298f89-4303-0410-b956-a3cf2f4a3e73
Noticed these while reviewing the code.
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31471 3c298f89-4303-0410-b956-a3cf2f4a3e73
Because of api change of nvram_getenv, the workaround failed to detect the hardware.
Based on patch by b.sander
Fixes#11268.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31470 3c298f89-4303-0410-b956-a3cf2f4a3e73