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