Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OHCI / EHCI randomly crashes #7

Open
tuxuser opened this issue Jul 5, 2012 · 6 comments
Open

OHCI / EHCI randomly crashes #7

tuxuser opened this issue Jul 5, 2012 · 6 comments
Labels
Milestone

Comments

@tuxuser
Copy link

tuxuser commented Jul 5, 2012

There are reports where the crash appears even if no USB device is plugged..

@tuxuser
Copy link
Author

tuxuser commented Jul 5, 2012

stackdump, reported by "BioHazard". He got it when attaching a fat32 USB Stick right from boot. When he attached FAT32 AFTER "usb_init()" the device didn't get enumerated - so it didn't crash.

libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:340
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:604
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:956
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:1340
xell/source/lv2/mount.c:268
xell/source/lv2/crypt/hmac_sha1.c:82
xell/source/lv2/mount.c:183
libxenon/libxenon/ports/xenon/../../startup/xenon/crt1.c:27
argv.c:0

@tuxuser
Copy link
Author

tuxuser commented Jul 5, 2012

And here's the actual problem I was talking about - related to tinyehci / usb init!

  • usb init
    • Initialising USB EHCI...
      Initialising EHCI bus 0 at 0xea003000
      Initialising EHCI bus 1 at 0xea005000
      EHCI bus 1 port 4: low speed, releasing to OHCI
    • Initialising USB OHCI...
      USB bus 0 device 1: vendor 0000 product 0000 class 09: USB Hub
      USB bus 1 device 1: vendor 0000 product 0000 class 09: USB Hub
      USB: New device connected to bus 1 hub 1 port 4
      USB bus 1 device 2: vendor 045E product 02A9 class FF: Xbox 360 Controller
    • Xenos FB with 148x41 (1280x720) at 0x9e000000 initialized.

Segmentation fault!

pir=0000000000000000 dar=000000000000003c
sr0=000000008000fc4c sr1=1000000002003030 lr=000000008000fb54

00=0000000000000040 08=0000000000000000 16=0000000000000000 24=0000000000000000
01=000000008ff7fdc0 09=0000000000000000 17=0000000000000000 25=0000000000000000
02=800000001c00a408 10=000000000000001f 18=0000000000000000 26=fffffffffffffffe
03=0000000000000060 11=ffffffffffffffff 19=0000000000000000 27=00000000803e30d0
04=ffffffffffffffc0 12=0000000024024042 20=0000000053425355 28=00000000803e3120
05=0000000080176400 13=0000000002000000 21=0000000000000000 29=00000000803e30c8
06=0000000000000001 14=0000000000000000 22=0000000000000000 30=000000008ff7fdf8
07=000000000000001f 15=00000000000000000 23=0000000000000000 31=0000000080176300

STACK DUMP:
0x8000fc4c --> 0x8000fb54 --> 0x800113d4 --> 0x80010c9c -->
0x80011968 --> 0x80011b28 --> 0x8000f39c --> 0x800023f8 -->
0x8000acf8

On uart: 'x'=Xell, 'h'=Halt, 'r'=Reboot

// Stack Dump

$ xenon-addr2line -e stage2.elf 0x8000fc4c 0x8000fb54 0x800113d4 0x80010c9c 0x80011968 0x80011b28 0x8000f39c 0x800023f8 0x8000acf8

libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:365
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:618
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:332
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:465
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:1115
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:1229
libxenon/libxenon/ports/xenon/../../drivers/usb/usbmain.c:310
xell/source/lv2/main.c:254
kbootconf.c:0

@tuxuser
Copy link
Author

tuxuser commented Jul 5, 2012

Another crashdump (XTAF HDD & FAT32 USB stick plugged)

Crash happened approximately after printing FUSES

libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:365
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:625
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:972
libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:1356
xell/source/lv2/mount.c:416
xell/source/lv2/mount.c:514
xell/source/lv2/main.c:133
libxenon/libxenon/ports/xenon/../../startup/xenon/crt1.c:27
argv.c:0

@tuxuser
Copy link
Author

tuxuser commented Jul 16, 2012

Another one:

xenon-addr2line -e stage2.elf 0x8000fc4c 0x8000fb54 0x80011b28 0x8000f39c 0x80002358 0x8000acf8
/mnt/internal/libxenon/Free60Project/libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:365
/mnt/internal/libxenon/Free60Project/libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:618
/mnt/internal/libxenon/Free60Project/libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:1229
/mnt/internal/libxenon/Free60Project/libxenon/libxenon/ports/xenon/../../drivers/usb/usbmain.c:310
/mnt/internal/libxenon/Free60Project/xell/source/lv2/main.c:223
kbootconf.c:0

@Swizzy
Copy link
Member

Swizzy commented Sep 1, 2013

Stack dump: 8000e4b0 8000e3b8 8000f9c0 80010178 800103ec 800027cc 80001eec 800077f4
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:365
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/ehci.c:618
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:786
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:1101
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/tinyehci/usbstorage.c:1245
/libxenon/xell/source/lv2/main.c:159
/opt/libxenon/libxenon/ports/xenon/../../startup/xenon/crt1.c:27
argv.c:0

@Swizzy
Copy link
Member

Swizzy commented Sep 7, 2013

Another one:

Stack dump: 800206b4 8002065c 8000c74c 8000d640 8000cfb0 8000db74 800027cc 80001eec 800077f4
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/ohci.c:957
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/ohci.c:1076
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/usbd.c:1026
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/usbhub.c:630
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/usbhub.c:160
/opt/libxenon/libxenon/ports/xenon/../../drivers/usb/usbmain.c:303
/libxenon/xell/source/lv2/main.c:159
/opt/libxenon/libxenon/ports/xenon/../../startup/xenon/crt1.c:27
argv.c:0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants