Opened 4 weeks ago

Closed 3 weeks ago

#15040 closed bug (fixed)

Can't boot

Reported by: huggi Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: Drivers/USB/XHCI Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: x86-64

Description

Can't boot latest night build hrev53099 x86_64 Anyboot.

Attachments (3)

IMG_20190429_144144.jpg (4.4 MB) - added by huggi 4 weeks ago.
20190501_091243.jpg (3.2 MB) - added by MelanieFox 3 weeks ago.
20190501_124236.jpg (4.2 MB) - added by MelanieFox 3 weeks ago.
BAR reported by Linux Kernel

Change History (16)

Changed 4 weeks ago by huggi

Attachment: IMG_20190429_144144.jpg added

comment:1 Changed 4 weeks ago by korli

Component: - GeneralDrivers/USB/XHCI

comment:2 Changed 4 weeks ago by waddlesplash

I'm going to need a syslog for this one. Can you try retrieving one via the bootloader somehow?

comment:3 Changed 3 weeks ago by MelanieFox

I'am currently also affected by that problem. I recompiled the kernel with XHCI TRACE enabled and it looks like the phys mem location isn't correct. (if you inspect that mem you'll end up with junk which isn't the controllers register mem)

Adding two screenshots.

Changed 3 weeks ago by MelanieFox

Attachment: 20190501_091243.jpg added

Changed 3 weeks ago by MelanieFox

Attachment: 20190501_124236.jpg added

BAR reported by Linux Kernel

comment:4 Changed 3 weeks ago by MelanieFox

NOTE: according to the pci trace the folling lines of code won't work.

physicalAddress += (phys_addr_t)fPCIInfo->u.h0.base_registers[1] << 32;

because pci bus manager stores the high for 64-bit adress in base_registers_pci[1]

currently rebuilding with that little change and hopefully it will work out.

comment:5 Changed 3 weeks ago by waddlesplash

Actually that looks like a bug in the PCI bus manager: http://xref.plausible.coop/source/xref/haiku/src/add-ons/kernel/bus_managers/pci/pci.cpp#1298

It sets base_registers_pci but not base_registers for the 64-bit address. On x86 the two are the same; but outside of x86 they are not.

comment:6 Changed 3 weeks ago by MelanieFox

okay, took a while. here are my results:

1) at least xhci don't goes kdl, tested both approches ( works on 64bit and 32bit controllers)

2) however after boot keybord works but mouse not. (both attached to the xhci controller)

3) dont' know how to get to the syslog and find out whats wrong now.

comment:7 Changed 3 weeks ago by waddlesplash

The syslog is in /var/log/syslog, where else would it be?

If that works, then my patch to the PCI bus is the correct change. I'll just push it.

comment:8 Changed 3 weeks ago by waddlesplash

Please retest after hrev53103.

comment:9 Changed 3 weeks ago by MelanieFox

Thx. for the work. For some reasons i don't always get the complete log when accessing the phys ssd in virtualbox. However i will try out the new nightly when it arrives and see if the problem persists and if i can find out anything insightfull.

comment:10 Changed 3 weeks ago by MelanieFox

Still not working with your change. Same symptoms as before.

comment:11 Changed 3 weeks ago by waddlesplash

That's weird, because the very similar #14557 was indeed fixed; and based on your patch description, my change is the exact equivalent. Can you post the patch you used that works here?

comment:12 Changed 3 weeks ago by MelanieFox

Sorry that was my fault, accidentially installed the wrong hrev. With 53103 it is indeed fixed with your change.

comment:13 Changed 3 weeks ago by waddlesplash

Resolution: fixed
Status: newclosed

Good!

Note: See TracTickets for help on using tickets.