Modify

Opened 11 years ago

Closed 11 years ago

#1312 closed defect (fixed)

Kamikaze's kernel 2.6.19.2 crashes at boot on WGT634U

Reported by: jhansen@… Owned by: mbm
Priority: high Milestone: Kamikaze 7.06
Component: kernel Version:
Keywords: kernel kamikaze crash oops Cc:

Description (last modified by mbm)

I get the following crash when attempting to boot any kernel generated by the latest Kamikaze (r6250 in my case). I found it to be a problem in sbpci_read_config, but I'm not sure how to fix it quite yet. Anyhow, Kamikaze on the WGT634U is broken as far as I can tell.

Linux version 2.6.19.2 (ninkid@ren) (gcc version 4.1.1) #1 Fri Feb 2 08:36:00 M7
CPU revision is: 00029007
early_nvram_init: WGT634U NVRAM found.
Determined physical RAM map:
 memory: 02000000 @ 00000000 (usable)
Initrd not found or empty - disabling initrd
Built 1 zonelists.  Total pages: 8128
Kernel command line: root=/dev/mtdblock2 rootfstype=squashfs,jffs2 init=/etc/pr0
Primary instruction cache 8kB, physically tagged, 2-way, linesize 16 bytes.
Primary data cache 4kB, 2-way, linesize 16 bytes.
Synthesized TLB refill handler (19 instructions).
Synthesized TLB load handler fastpath (31 instructions).
Synthesized TLB store handler fastpath (31 instructions).
Synthesized TLB modify handler fastpath (30 instructions).
PID hash table entries: 128 (order: 7, 512 bytes)
Using 100.000 MHz high precision timer.
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 29920k/32768k available (1993k kernel code, 2848k reserved, 283k data, )
Mount-cache hash table entries: 512
Checking for 'wait' instruction...  unavailable.
NET: Registered protocol family 16
PCI: fixing up bridge
PCI: Fixing up device 0000:01:00.0
Data bus error, epc == 80007a94, ra == 80007a8c
Oops[#1]:
Cpu 0
$ 0   : 00000000 10008000 ac040300 a0000000
$ 4   : ac040300 00000004 0c040303 00000004
$ 8   : 00000007 00000000 00000004 0000000a
$12   : 00000002 81065df1 ffffffff 00000000
$16   : 00000004 00000000 81065e98 00000013
$20   : 802bea00 00000000 00000000 00000000
$24   : 00000000 801f8f04
$28   : 81064000 81065e30 00000000 80007a8c
Hi    : 00000000
Lo    : 00000c00
epc   : 80007a94     Not tainted
ra    : 80007a8c Status: 10008002    KERNEL EXL
Cause : 0000001c
PrId  : 00029007
Modules linked in:
Process swapper (pid: 1, threadinfo=81064000, task=81063858)
Stack : 0c040300 81065e58 00000400 802ca4f7 00000000 80100f98 10008000 81065ecc
        00000003 80002380 802ca400 8012c668 00000000 8010f8b8 00000000 81065e98
        00000004 8012c890 10008001 8010e480 802ca400 802bea00 802ca400 8010f9b8
        81065e98 802ca400 00000000 802ca4ec 00000013 00000003 8010fab4 8010fdec
        802c8400 00000006 00000000 00000001 00000002 00000002 00000100 00e01033
        ...
Call Trace:[<80100f98>][<80002380>][<8012c668>][<8010f8b8>][<8012c890>][<8010e4]

Code: 24060400  10400008  00402021 <8c430000> 00001021  14400004  001110c0  080
Kernel panic - not syncing: Attempted to kill init!

Attachments (9)

wgt634u-crash.txt (2.4 KB) - added by jhansen@… 11 years ago.
TXT file of OOPS
.config (41.5 KB) - added by jhansen@… 11 years ago.
Kernel config
012-sbpci-slots.patch (1.1 KB) - added by jhansen@… 11 years ago.
Patch to add configurable PCI slots
kamikaze-brcm-2.6-sbpci.patch (511 bytes) - added by jhansen@… 11 years ago.
brcm-2.6 defconfig patch
kamikaze-sbpci.patch (2.6 KB) - added by jhansen@… 11 years ago.
Full patch that applies right into kamikaze
wgt634-6342.patch (30.9 KB) - added by jhansen@… 11 years ago.
WGT634U patch (against r6342)
wgt634-6342.2.patch (1.1 KB) - added by jhansen@… 11 years ago.
Patch to get wgt634u booting with latest Kamikaze
wgt634-6342.3.patch (2.1 KB) - added by jhansen@… 11 years ago.
Patch to get wgt634u booting with latest Kamikaze
wgt634-6539.patch (4.2 KB) - added by jhansen@… 11 years ago.
Patch to get wgt634u (and others) booting

Download all attachments as: .zip

Change History (29)

Changed 11 years ago by jhansen@…

TXT file of OOPS

Changed 11 years ago by jhansen@…

Kernel config

Changed 11 years ago by jhansen@…

Patch to add configurable PCI slots

comment:1 Changed 11 years ago by jhansen@…

Added sbpci-slots.patch which makes the number of PCI slots configurable. The original PCI_SLOT_MAX value in sbpci.c was too big for the WGT634U (it would crash at boot), so this lets you set it to a more reasonable value for an embedded platform (2 instead of 16).

comment:2 Changed 11 years ago by jhansen@…

You will also need to add:
CONFIG_SBPCI_SLOT_MAX=2
to the config file in target/linux/brcm-2.6

I have attached the patch.
Otherwise your build process will hang on brcm-2.6 prepare.

Changed 11 years ago by jhansen@…

brcm-2.6 defconfig patch

Changed 11 years ago by jhansen@…

Full patch that applies right into kamikaze

comment:3 Changed 11 years ago by mbm

  • Description modified (diff)
  • Owner changed from developers to mbm

comment:4 Changed 11 years ago by jhansen@…

I have confirmed that this problem also happens on the Asus WL500g Premium, but you actually have to set the number of PCI slots to 1 (not 2) or it will crash. Also, it is not seeing the mini-PCI card at all on my WL500g Premium.

comment:5 Changed 11 years ago by anonymous

Unfortunately, it appears that a port of the most recent Broadcom Linux 2.4 BSP to the 2.6 kernel is in order.

comment:6 Changed 11 years ago by jhansen@…

I just discovered the brcm47xx-2.6 (new code) target, and it is working much better than the old brcm-2.6 target has worked (especially recently).

Please take the "broken" flag out of FEATURES for the brcm47xx-2.6 target to allow people to choose the better Board Support Package.

comment:7 Changed 11 years ago by mbm

The bcm43xx-2.6 target will replace the old brcm-2.6 shortly, there are just a few issues to be worked out first.

comment:8 Changed 11 years ago by jhansen@…

Is there anything I can do to facilitate the change? What else needs to be tested/fixed? I notice that SSB PCI (mini-PCI card) still doesn't work on my WL-500G, but everything works great on my WGT634U.

comment:9 Changed 11 years ago by fhf@…

Revision: 6276 does not crash any longer
it boots up again my WGT634U:
lots of things seem to work now:
The Flash is restructured by "firstboot" and the mtd4 gets mounted as /jffs now.

But Flash access seems to have still some problems:
I get dozens of errors on the first boot after (serial CFE) flashing,

"Physically mapped flash: block unlock error: (status timeout)"

Source of this message seems
_ _xipram do_xxlock_oneblock()
in file
drivers/mtd/chips/cfi_cmdset_0001.c

one or two of them when rebooting.

comment:10 Changed 11 years ago by jhansen@…

fhf@…: It doesn't crash when you use the new brcm47xx-2.6 target, right? You're not using brcm-2.6, right? In the currently rev it still crashes when I use the old brcm-2.6 target.

comment:11 Changed 11 years ago by Jirin.SV

The bcm43xx-2.6 target will replace the old brcm-2.6 shortly, there are just a few issues to be worked out first.

Is any progress at this point? The old version still causes kernel oops :-(.
Thanks in advance for answer.
Jirin

comment:12 Changed 11 years ago by JimWright

An FYI that this same error occurs when using the BRCM-2.6 version of the nightly builds, as of 2/16 when installed on a WRTSL54GS. I don't have the ability currently to compile my own build and am relying on the snapshots.

comment:13 Changed 11 years ago by fhf@…

I selected "Target System (Broadcom BCM947xx/953xx [2.6])"
in make menuconfig. And "Target Profile (Netgear WGT634U)"
Is this "brcm-2.6" or "brcm47xx-2.6" ?

sorry, I'm still trying to get behind the "magics" of buildroot-ng.... ;-)

buildroot set up trunk/build_mipsel/linux as a symlink to
trunk/build_mipsel/linux-2.6-brcm/linux-2.6.19.2,

During "make target compile", the patch
trunk/target/linux/brcm-2.6/patches/012-sbpci-slots.patch
gets applied, that, I suppose, works around the pci-slot-crash.

comment:14 Changed 11 years ago by jhansen@…

Just about everything works perfectly on the WGT634 with the following patch, using the brcm47xx-2.6 target (the new code). Basically I had to add brcm47xx support in the switch package, remove the broken flash from the target, add the kmod-switch package as a default to the target, and add the usb flag to the target. The only thing that doesn't work is that it doesn't reboot, and it seems a little bit slow at scp'ing, etc. files to itself over ethernet, but it's not a big deal.

Changed 11 years ago by jhansen@…

WGT634U patch (against r6342)

comment:15 Changed 11 years ago by anonymous

latest build still causes kernel oops

Changed 11 years ago by jhansen@…

Patch to get wgt634u booting with latest Kamikaze

Changed 11 years ago by jhansen@…

Patch to get wgt634u booting with latest Kamikaze

comment:16 Changed 11 years ago by jhansen@…

To get the wgt634u/wl-500g premium/others to boot with the latest Kamikaze, you *have* to apply the patch that I just uploaded (or at least make similar changes to the ones I made). USB, PCI, and the Ethernet switch all work great, and it even boots without oopsing to boot! The only thing that doesn't work so far is rebooting (which is a work in progress).

I realize that there are still issues with the latest brcm47xx-2.6 "new code," but I think it would help a lot of people to at least make it easily available, since most people wouldn't even know about it unless they poke around through the Makefiles.

On a side not, does it look like divorcing the sb/ssb from the brcm47xx BSP is going to be a final decision? It looks to me that the SSB *needs* to be compiled in to get BSP-ish type things to work (like rebooting, for instance).

Changed 11 years ago by jhansen@…

Patch to get wgt634u (and others) booting

comment:17 Changed 11 years ago by jhansen@…

The above patch fixes rebooting on the wgt634u, so now there's nothing that doesn't work, as far as I can tell. PCI, USB, and the Ethernet switch still work great. Please let me know if there's anything else that needs to be done before the new code becomes the default.

In this patch, I removed the lines from the preinit script because switch_robo was crashing, and all those lines do is send a netmsg to inform that it's ok to hit the reset button (for failsafe), and that is going to have to be redone at some point.

comment:18 Changed 11 years ago by nbd

  • Milestone changed from Kamikaze to Kamikaze Milestone 1

comment:19 Changed 11 years ago by nbd

diag support added in [6562]
reboot fix added in [6563]

comment:20 Changed 11 years ago by nbd

  • Resolution set to fixed
  • Status changed from new to closed

brcm47xx-2.6 seems to be fully working as of [6564]

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.