page fault panic in device_get_softc/acpi_pcib_route_interrupt
John Baldwin
jhb at FreeBSD.org
Fri Jan 7 09:59:43 PST 2005
On Thursday 06 January 2005 06:26 pm, Pawel Worach wrote:
> Nate Lawson wrote:
> > A possible fix is to change each reference to LP* in the PICM and APIC
> > packages to be \LPUS, \LP05, etc. Then recompile and load your asl via
> > the instructions for overriding it in acpi(4).
> >
> > I'm still not sure why this is broken though so I think it's a red
> > herring and suspect the asl fix won't help. I suspect the real reason
> > is that \LPUS is not probed/attached before calling pci_add_child() on
> > PCI0. Pawel, can you stick a printf in acpi_pci_link_attach() right
> > before the return (0) like this:
> >
> > printf("pci link attached: %s\n", acpi_name(acpi_get_handle(dev)));
> >
> > I suspect we won't see LPUS there before it panics.
>
> I do not even see the code enter acpi_pci_link_attach(), even added a dummy
> printf at the top of the method.
This is because the references don't work during the force-attach either
(which happens before pci_add_child() as I explained to Nate in my earlier
e-mail).
> I modified the AML, changed all LP* to \LP* (except for the Device(LP*)
> ones, should I change these too?) the result was a couple of errors during
> boot. I broke something didn't I?
>
> can't fetch resources for \_SB_.PCI0 - AE_AML_INVALID_RESOURCE_TYPE
> can't fetch resources for \_SB_.PCI0.ISA_.SIOM - AE_AML_NO_RESOURCE_END_TAG
> can't fetch resources for \_SB_.PCI0.ISA_.PS2M - AE_AML_NO_RESOURCE_END_TAG
> can't fetch resources for \_SB_.PCI0.ISA_.FDC0 - AE_AML_NO_RESOURCE_END_TAG
> can't fetch resources for \_SB_.PCI0.ISA_.COM1 - AE_AML_NO_RESOURCE_END_TAG
> can't fetch resources for \_SB_.PCI1 - AE_AML_INVALID_RESOURCE_TYPE
> can't fetch resources for \_SB_.PCI2 - AE_AML_INVALID_RESOURCE_TYPE
> can't fetch resources for \_SB_.PCI3 - AE_AML_INVALID_RESOURCE_TYPE
> can't fetch resources for \_SB_.PCI4 - AE_AML_INVALID_RESOURCE_TYPE
> ..
> Fatal trap 12: page fault while in kernel mode
> [same old story]
> ...
Only change the LPxx entries in the _PRT tables. Specifically, find the PICM
package and change their entries. Something like this:
--- ibm-x345.aml.orig Fri Jan 7 10:59:26 2005
+++ ibm-x345.aml Fri Jan 7 11:00:23 2005
@@ -4417,7 +4417,7 @@
{
0x0005FFFF,
0x00,
- LP08,
+ \LP08,
0x00
},
@@ -4425,7 +4425,7 @@
{
0x0005FFFF,
0x01,
- LP09,
+ \LP09,
0x00
},
@@ -4433,7 +4433,7 @@
{
0x0005FFFF,
0x02,
- LP08,
+ \LP08,
0x00
},
@@ -4441,7 +4441,7 @@
{
0x0005FFFF,
0x03,
- LP09,
+ \LP09,
0x00
},
@@ -4449,7 +4449,7 @@
{
0x0006FFFF,
0x00,
- LP0A,
+ \LP0A,
0x00
},
@@ -4457,7 +4457,7 @@
{
0x000FFFFF,
0x00,
- LPUS,
+ \LPUS,
0x00
}
})
@@ -4507,7 +4507,7 @@
{
0x000FFFFF,
0x00,
- LPUS,
+ \LPUS,
0x00
}
})
@@ -4533,7 +4533,7 @@
{
0x0003FFFF,
0x00,
- LP04,
+ \LP04,
0x00
},
@@ -4541,7 +4541,7 @@
{
0x0003FFFF,
0x01,
- LP05,
+ \LP05,
0x00
},
@@ -4549,7 +4549,7 @@
{
0x0003FFFF,
0x02,
- LP04,
+ \LP04,
0x00
},
@@ -4557,7 +4557,7 @@
{
0x0003FFFF,
0x03,
- LP05,
+ \LP05,
0x00
}
})
@@ -4617,7 +4617,7 @@
{
0x0004FFFF,
0x00,
- LP06,
+ \LP06,
0x00
},
@@ -4625,7 +4625,7 @@
{
0x0004FFFF,
0x01,
- LP07,
+ \LP07,
0x00
},
@@ -4633,7 +4633,7 @@
{
0x0004FFFF,
0x02,
- LP06,
+ \LP06,
0x00
},
@@ -4641,7 +4641,7 @@
{
0x0004FFFF,
0x03,
- LP07,
+ \LP07,
0x00
}
})
@@ -4701,7 +4701,7 @@
{
0x0001FFFF,
0x00,
- LP00,
+ \LP00,
0x00
},
@@ -4709,7 +4709,7 @@
{
0x0001FFFF,
0x01,
- LP01,
+ \LP01,
0x00
},
@@ -4717,7 +4717,7 @@
{
0x0001FFFF,
0x02,
- LP00,
+ \LP00,
0x00
},
@@ -4725,7 +4725,7 @@
{
0x0001FFFF,
0x03,
- LP01,
+ \LP01,
0x00
},
@@ -4733,7 +4733,7 @@
{
0x0008FFFF,
0x00,
- LP0D,
+ \LP0D,
0x00
},
@@ -4741,7 +4741,7 @@
{
0x0008FFFF,
0x01,
- LP0E,
+ \LP0E,
0x00
}
})
@@ -4817,7 +4817,7 @@
{
0x0002FFFF,
0x00,
- LP02,
+ \LP02,
0x00
},
@@ -4825,7 +4825,7 @@
{
0x0002FFFF,
0x01,
- LP03,
+ \LP03,
0x00
},
@@ -4833,7 +4833,7 @@
{
0x0002FFFF,
0x02,
- LP10,
+ \LP10,
0x00
},
@@ -4841,7 +4841,7 @@
{
0x0002FFFF,
0x03,
- LP11,
+ \LP11,
0x00
},
@@ -4849,7 +4849,7 @@
{
0x0007FFFF,
0x00,
- LP0B,
+ \LP0B,
0x00
},
@@ -4857,7 +4857,7 @@
{
0x0007FFFF,
0x01,
- LP0C,
+ \LP0C,
0x00
}
})
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-current
mailing list