In particular, phy_connect before register_netdev. This is because
register_netdev runs the netdev notifiers, which can race with the rest of
the initialization in ag71xx_probe. In my case this manifested in two ways:
1) If ag71xx is compiled as a module and inserted after netifd has started,
netifd is notified by register_netdev before the call to
ag71xx_phy_connect. netifd tries to bring the interface up, which calls
ag71xx_open, which in turn enters ag71xx_phy_start. This keys off
ag->phy_dev (which is still NULL) and thinks this is a fixed-link board,
and enters ag71xx_link_adjust. This looks at ag->speed which is not yet
initialized and hits the BUG() in the switch (ag->speed) in
ag71xx_link_adjust.
This is the wrong code path for ag71xx_phy_start - my board has PHYs that
need to be brought up with phy_start. Doing ag71xx_phy_connect before
register_netdev ensures that ag->phy_dev is non-NULL before
ag71xx_phy_start is ever called.
2) When ag71xx is built into the kernel, and netconsole is enabled, there
is a gap in the initial burst of replayed printks right after the netdev
comes up. My assumption is that netconsole is also triggered by a netdev
notifier, and part of this printk burst happens before the call into
ag71xx_phy_connect, so part of the burst is lost while the PHY comes up.
This patch fixes the gap - all the printks before eth0 comes up are bursted
in full when netconsole initializes.
ag71xx_phy_connect_xxx no longer runs with a registered netdev, so the
logging has been adjusted accordingly to avoid "unregistered net_device" or
"eth%d" messages in dmesg.
Signed-off-by: Catalin Patulea <cat@vv.carleton.ca>
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38689
Patchwork: http://patchwork.openwrt.org/patch/4281/
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
[juhosg:
- remove the Image/Build/CyberTANLZMA/loader macro, it is not used
- move the MYNETREXT SingleProfile definition to the correct place]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38688
This patch adds a new device definition for a
Western Digital device. The hardware seems to
be based on Qualcomm Atheros DB120 design.
Patchwork: http://patchwork.openwrt.org/patch/4281/
Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
[juhosg: refresh kernel patch]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38686
Append EOF markers to the END of the UBI image
file. This forces the kernel to erase all blocks
after the marker even if those blocks are not
empty.
Additionally, the resulting image can be flashed
from the original web UI now, so use '-factory'
suffix for that.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38683
This patch should prevent overriding of sysupgrade binaries in the bin directory
if we build images for more then one file system type.
Discussion:
https://lists.openwrt.org/pipermail/openwrt-devel/2013-October/022108.html
Signed-off-by: Philipp Borgers <borgers@mi.fu-berlin.de>
SVN-Revision: 38674
The switch is renamed to "switch0" in newer (3.10) linux kernels.
Configure the switch using vlans by default and only configure
the physical switch ports that are present.
Signed-off-by: Richard Mortimer <richm@oldelvet.org.uk>
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 38673
Extended the Makefile to generate a working factory reset image
for Netgear WNDR4300. The image uses UBI with two volumes squashfs
(rootfs) and JFFS2 (rootfs_data). In order to make stock U-Boot
happy, a fake rootfs image is placed into the last erase block
of the kernel partition.
Signed-off-by: Stefan Agner <stefan@agner.ch>
[juhosg:
- restore the NetgearNAND/initramfs macro,
- remove unused {Squash,Ubi}fsTemplate macros,
- remove board specific mtd options from CONFIG_CMDLINE, append the
board specific ubi.mtd parameter to the kernel command line instead,
- increase kernel partition size to 2MiB,
- use board specific ini file for ubinize,
- put jffs2 eof mark into the rootfs_data ubi volume,
- use KDIR_TMP for temporary images,
- use the squashfs-raw image,
- increase kernel partition size to 2MiB,
- use a local ubinize macro,
- fix macro parameter comments,
- put the fake rootfs into the last erase block of the kernel
partition,
- move Image/Build/NetgearNAND/buildkernel macro before
define Image/Build/NetgearNAND,
- don't use the wndr3700 utility, use '-M' parameter of mkimage to set
the uImage magic,
- use '-recovery' suffix for the generated image, it is only usable via
the fw_recovery function of the bootloader,
- update commit log]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38655
Add new subtarget nand with UBI/UBIFS including GLUEBI and squashfs.
This target will be used for NAND based router which make use of
UBI (and maybe UBIFS later on) in order to provide proper NAND
support.
Signed-off-by: Stefan Agner <stefan@agner.ch>
[juhosg:
- tweak target.mk:
change BOARDNAME variable,
improve Target/Description,
remove targz and ubifs from FEATURES and add broken flag,
- optimize kernel configuration:
disable ubifs, it is not used yet,
disable unused MTD options,
disable SPI support
disable unused network drivers,
tune kernel command line,
- remove image/ubinize.cfg, it will be in a follow-up patch
- move profile modifications into a separate patch]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38646
The current code only allows to automatically set
root device on MTD partitions. Move the code to MTD
core to allow to use it with all MTD devices.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38643
Ensures that the 'Default' images are generated
even if the subtarget has no profiles.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38635
This patch adds the userland support for the Pogoplug E02 by Cloud
Engines, Inc.
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
SVN-Revision: 38631
* use lower case letters in generated images
* extend support for boot/ directory
* fix some typos
Signed-off-by: Luka Perkov <luka@openwrt.org>
Signed-off-by: Felix Kaechele <heffer@fedoraproject.org>
SVN-Revision: 38629
The TEW-692GR images are missing since r36169. Uncomment
the board specific macro in image/Makefile, in order to
generate those again.
Only build tested. No idea if the the image works or not,
I have bricked my TEW-692GR a few months ago.
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38603
Patchwork: http://patchwork.openwrt.org/patch/4183/
Signed-off-by: Terry Yang <yangbo@bhunetworks.com>
[juhosg:
- remove MultiProfile, it makes no sense for a single board
- move SingleProfile call and the mtdlayout to a different
location keep things sorted (well, almost)]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38593
BXU2000n-2 A1 is a BHU Networks WLAN board, use ar9341 chip.
Patchwork: http://patchwork.openwrt.org/patch/4183/
Signed-off-by: Terry Yang <yangbo@bhunetworks.com>
[juhosg:
- rename and refresh kernel patch,
- fix some checkpatch warnings and adjust whitespaces in
mach-bhu-bxu2000n2-a.c]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38591
This patch adds support for DRAGINO2 board (used by
Meshpotato v2). Most of the files included can be
found in the official svn repository provided by the
company [1]. I have just adapt it to the last OpenWrt
trunk revision (Fri Oct 4 10:49:47 2013).
1. http://svn.dragino.com/dragino2
Patchwork: http://patchwork.openwrt.org/patch/4234/
Signed-off-by: Pau Escrich <p4u@dabax.net>
[juhosg:
- rename and refresh kernel patch,
- fix checkpatch warnings in mach-dragino2.c]
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38587
Upstream commit c655bc6896b94ee0223393f26155c6daf1e2d148 changed number of
arguments in nf_ct_iterate_cleanup() function.
Signed-off-by: Luka Perkov <luka@openwrt.org>
SVN-Revision: 38547
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
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
Upstream commit 9ddebc46 ("MIPS: OCTEON: Rename Kconfig
CAVIUM_OCTEON_REFERENCE_BOARD to CAVIUM_OCTEON_SOC") renamed a Kconfig
symbol, thus making all MIPS builds ask for this specific Kconfig
symbol, add it.
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 38535
The interrupt mapping for legacy interrupts was backwards causing interrupts
to be mapped improperly behind a PCIe to PCI bridge (ie GW16082 mezzanine).
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
SVN-Revision: 38519
Enable SATA support (for IMX6D/IMX6Q) static in the kernel. It seems there
are some issues causing the driver to not load properly when built as
a module which still need to be worked out.
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
SVN-Revision: 38515
It is for Mikrotik devices only, rename the subtarget
to reflect that. Also fix the wget2nand script to use
the new image names.
Based on the patch by Stefan Agner:
http://patchwork.openwrt.org/patch/4123/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38509
The nand subtarget supports Mikrotik boards only. Change
the title and the description to reflect that.
Based on the patch by Stefan Agner:
http://patchwork.openwrt.org/patch/4123/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38508
Ensure that menuconfig shows the correct help text for
subtargets.
Based on the patch by Stefan Agner:
http://patchwork.openwrt.org/patch/4123/
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 38507
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