From: Robert Hancock on
On 06/27/2010 03:21 PM, Jiri Slaby wrote:
> On IBM Bartolo machines, cards in 00:09.0 are defunct (if use
> interrupts). DSDT says that this slot (with function 0, i.e. pin A) is
> routed to \_SB_.PCI0.PIB_.LNKB. But it's not, it's wired to LNKC, so
> interrupts are misrouted. Add a quirk for this to workaround the
> issue.

That seems a rather serious DSDT flaw. Do devices in that slot work in
Windows?

>
> This error was reported in suse bugzilla at:
> https://bugzilla.novell.com/show_bug.cgi?id=595683

Apparently that bugzilla requires a login to even view the bug, seems
bizarre to me..

>
> Signed-off-by: Jiri Slaby<jslaby(a)suse.cz>
> Cc: Len Brown<lenb(a)kernel.org>
> Cc: Jesse Barnes<jbarnes(a)virtuousgeek.org>
> ---
> drivers/acpi/pci_irq.c | 15 +++++++++++++++
> 1 files changed, 15 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c
> index e4804fb..8e054a4 100644
> --- a/drivers/acpi/pci_irq.c
> +++ b/drivers/acpi/pci_irq.c
> @@ -125,6 +125,18 @@ static const struct dmi_system_id hp_t5710[] = {
> { }
> };
>
> +/* https://bugzilla.novell.com/show_bug.cgi?id=595683 */
> +static const struct dmi_system_id ibm_bartolo[] = {
> + {
> + .ident = "IBM Bartolo",
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "IBM CORPORATION"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "4810320"),
> + },
> + },
> + { }
> +};
> +
> struct prt_quirk {
> const struct dmi_system_id *system;
> unsigned int segment;
> @@ -152,6 +164,9 @@ static const struct prt_quirk prt_quirks[] = {
> { hp_t5710, 0, 0, 1, PCI_INTX_PIN('A'),
> "\\_SB_.PCI0.LNK1",
> "\\_SB_.PCI0.LNK3"},
> + { ibm_bartolo, 0, 0, 9, PCI_INTX_PIN('A'),
> + "\\_SB_.PCI0.PIB_.LNKB",
> + "\\_SB_.PCI0.PIB_.LNKC"},
> };
>
> static void do_prt_fixups(struct acpi_prt_entry *entry,

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Jiri Slaby on
On 06/28/2010 02:14 AM, Robert Hancock wrote:
> On 06/27/2010 03:21 PM, Jiri Slaby wrote:
>> On IBM Bartolo machines, cards in 00:09.0 are defunct (if use
>> interrupts). DSDT says that this slot (with function 0, i.e. pin A) is
>> routed to \_SB_.PCI0.PIB_.LNKB. But it's not, it's wired to LNKC, so
>> interrupts are misrouted. Add a quirk for this to workaround the
>> issue.
>
> That seems a rather serious DSDT flaw. Do devices in that slot work in
> Windows?

Yes, the DSDT is pretty broken this way there. Regarding Windows, I
don't know and I doubt anybody will ever try.

regards,
--
js
suse labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Matthew Garrett on
On Mon, Jun 28, 2010 at 08:13:24AM +0200, Jiri Slaby wrote:
> On 06/28/2010 02:14 AM, Robert Hancock wrote:
> > That seems a rather serious DSDT flaw. Do devices in that slot work in
> > Windows?
>
> Yes, the DSDT is pretty broken this way there. Regarding Windows, I
> don't know and I doubt anybody will ever try.

http://www-07.ibm.com/hk/products/pos/300/specs.html indicates that
Windows is supported on this hardware. It would be good to verify that
it also fails before we try a model-specific quirk.

--
Matthew Garrett | mjg59(a)srcf.ucam.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Jiri Slaby on
On 06/28/2010 07:14 PM, Matthew Garrett wrote:
> On Mon, Jun 28, 2010 at 08:13:24AM +0200, Jiri Slaby wrote:
>> On 06/28/2010 02:14 AM, Robert Hancock wrote:
>>> That seems a rather serious DSDT flaw. Do devices in that slot work in
>>> Windows?
>>
>> Yes, the DSDT is pretty broken this way there. Regarding Windows, I
>> don't know and I doubt anybody will ever try.
>
> http://www-07.ibm.com/hk/products/pos/300/specs.html indicates that
> Windows is supported on this hardware. It would be good to verify that
> it also fails before we try a model-specific quirk.

It would be good for what? I don't see the point, DSDT is broken on that
machine and the patch works this around. Why do we need testruns from
Windows? And why you think Windows will fail anyway, they can very have
the pretty same quirk there.

--
js
suse labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Matthew Garrett on
On Mon, Jun 28, 2010 at 10:12:53PM +0200, Jiri Slaby wrote:
> On 06/28/2010 07:14 PM, Matthew Garrett wrote:
> > http://www-07.ibm.com/hk/products/pos/300/specs.html indicates that
> > Windows is supported on this hardware. It would be good to verify that
> > it also fails before we try a model-specific quirk.
>
> It would be good for what? I don't see the point, DSDT is broken on that
> machine and the patch works this around. Why do we need testruns from
> Windows? And why you think Windows will fail anyway, they can very have
> the pretty same quirk there.

I can guarantee to you that a generic Windows install does not have a
quirk for an IBM PoS system released years after that CD was pressed.
The relevance is that if Windows works without a quirk, then somewhere
our behaviour diverges from that of Windows and it's likely that other
machines are also hit by the same issue. Users of those systems may not
have a support contract with a commercial Linux vendor and may just
decide to use Windows instead, so there's an incentive for us to
determine if that's the case and fix Linux's behaviour to match Windows
rather than to just quirk over it.

--
Matthew Garrett | mjg59(a)srcf.ucam.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/