Re: [PATCH] x86: provide a DMI based port 0x80 I/O delay override

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Ingo Molnar <mingo@...>
Cc: Linus Torvalds <torvalds@...>, Rene Herman <rene.herman@...>, <dpreed@...>, Islam Amer <pharon@...>, <hpa@...>, Pavel Machek <pavel@...>, Ingo Molnar <mingo@...>, Andi Kleen <andi@...>, Thomas Gleixner <tglx@...>, Linux Kernel <linux-kernel@...>
Date: Sunday, December 30, 2007 - 11:38 am

> i dont get your last point. Firstly, we do an "outb $0x80" not an inb. 

outb not inb sorry yes


It does. The last mmio write cycle to the bridge gets pushed out before
the 0x80 cycle goes to the PCI bridge, times out and goes to the LPC bus.

I still don't believe any of our _p users in PCI space are actually real
- but someone needs to look at the scsi ones.


We issue inb port
We issue outb 0x80

The CPU core stalls and the LPC bus stalls

On the other CPU we issue another access to the LPC bus because our
locking is wrong. With the 0x80 outb use this stalls so the delay is
applied unless the two inb's occur perfectly in time. With a udelay() the
udelay can be split and we get a second access which breaks the needed
device delay. We end up relying on the bus locking non splitting
properties of the 0x80 port access to paper over bugs - see the watchdog
fix example I sent you about a week ago.

That btw is another argument for removing 0x80 usage as much as possible
- its bad for real time.


None - but we don't care. The problems with 0x80 and the wacko HP systems
occur once ACPI is enabled so we are fine using 0x80. I don't myself know
why the _p versions ended up being used. A rummage through archives found
me nothing useful on this but notes that outb not outw is required for
some devices.

For that matter does anyone actually have video cards old enough for us
to care actually still in use with Linux today ? 

Alan
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [PATCH] x86: provide a DMI based port 0x80 I/O delay ove..., Christer Weinigel, (Mon Dec 31, 11:29 am)
Re: [PATCH] x86: provide a DMI based port 0x80 I/O delay ove..., Alan Cox, (Sun Dec 30, 11:38 am)