From: Rene Herman <rene.herman@gmail.com>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ingo Molnar <mingo@elte.hu>, Paul Rolland <rol@as2917.net>,
Alan Cox <alan@lxorguk.ukuu.org.uk>, Pavel Machek <pavel@ucw.cz>,
"David P. Reed" <dpreed@reed.com>,
Thomas Gleixner <tglx@linutronix.de>,
linux-kernel@vger.kernel.org, Ingo Molnar <mingo@redhat.com>,
rol@witbe.net
Subject: Re: [PATCH] x86: provide a DMI based port 0x80 I/O delay override.
Date: Mon, 17 Dec 2007 14:02:30 +0100 [thread overview]
Message-ID: <47667366.7010405@gmail.com> (raw)
In-Reply-To: <4765EE7F.80002@zytor.com>
On 17-12-07 04:35, H. Peter Anvin wrote:
> Well, we probably should leave the possibility in to use 0x80 -- for one
> thing, we need to use 0x80 on 386, and there is always the possibility
> that the switch will have different timing properties on some or all
> machines.
>
> Note that this doesn't require that a machine actually implements port
> 0xf0 for FERR/IGNNE, it just requires that they don't use it for
> something else.
>
> I would be rather inclined to try using port 0xf0 by default as long as
> family > 3[*] (with fallback to port 0x80) at least experimentally (-mm).
Possible timing differences would be what worry me. 0x80 is well-known for
its delay purposes, and frankly, I dont believe that one type of machine
having a problem, which may very well have to be categorized a possibly BIOS
fixable bug, is enough ground for switching everyone over to a different port
It's enough ground to look at not doing outputs at all AFAIC but that's more
due to the outb being somewhat cheesy to start with which using a different
port wouldn't change. But, on the other hand:
> We *might* even be able to use port 0xf0 unconditionally in the setup
> code, since we're not using the FPU there (the only FPU instructions in
> the setup code are there to detect the FPU.)
>
> One thing: although I believe most actual implementations of port 0xf0
> implement it as a strobe alone (data is ignored), all documentation I've
> found, including "The Undocumented PC" specifically says "write 0x00 to
> this port." This *could* mean there are platforms which use other
> values than 0x00 for other hacks.
The Intel PIIX/PIIX3 datasheet confirms that the data is of no consequence,
but yes, most documentation talks about 0.
The PIIX/PIIX3 datasheet also says that both reads and writes flow through
to the ISA bus, while for port 0x80 only writes do, and reads do not.
I do not know how universal that is, but _reading_ port 0xf0 might in fact
be sensible then? And should even work on a 386/387 pair? (I have a 386/387
in fact, although I'd need to dig it up).
Versus the out it has the al clobber disadvantage, but givne that we're by
now seem to be talking about out of line switch() native_io_delays anyways,
that's not much of a problem anymore...
> [*] The following statements are equivalent:
> - family > 3.
> - CR0.NE is settable.
> - EFLAGS.AC is settable.
For the boot code, I gather (which could I suppose then also plug in the
delay port in the zero page or somewhere for use by the kernel proper? I
don't know how/if these bits communicate).
But, well, _reading_ port 0xf0 sounds promising across the board and low
risk replacement _if_ teh PIIX/PIIX3 behaviour is as guaranteed as the port
0x80 behaviour...
Rene.
next prev parent reply other threads:[~2007-12-17 13:04 UTC|newest]
Thread overview: 273+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <466F0941.9060201@reed.com>
[not found] ` <1181682498.8176.224.camel@chaos>
[not found] ` <469578CD.3080609@reed.com>
[not found] ` <1184216528.12353.203.camel@chaos>
[not found] ` <1184218962.12353.209.camel@chaos>
[not found] ` <46964352.7040301@reed.com>
[not found] ` <1184253339.12353.223.camel@chaos>
[not found] ` <469697C6.50903@reed.com>
[not found] ` <1184274754.12353.254.camel@chaos>
2007-11-12 16:55 ` [PATCH] x86: fix locking and sync bugs in x86_64 RTC code in time_64.c David P. Reed
2007-11-14 7:49 ` Thomas Gleixner
2007-11-14 13:10 ` David P. Reed
2007-11-14 18:26 ` Matt Mackall
2007-11-14 21:22 ` David P. Reed
2007-11-12 17:02 ` [PATCH] time: fix typo that makes sync_cmos_clock erratic David P. Reed
2007-11-14 7:57 ` Thomas Gleixner
2007-11-12 19:19 ` David P. Reed
2007-11-14 22:47 ` [PATCH] x86: fix freeze in x86_64 RTC update code in time_64.c David P. Reed
2007-11-14 22:49 ` [PATCH] time: fix typo that makes sync_cmos_clock erratic David P. Reed
2007-11-15 1:14 ` [PATCH] x86: on x86_64, correct reading of PC RTC when update in progress in time_64.c David P. Reed
2007-11-15 19:33 ` Thomas Gleixner
2007-11-15 20:31 ` David P. Reed
2007-11-15 22:17 ` Thomas Gleixner
2007-12-14 2:59 ` [PATCH] x86_64: fix problems due to use of "outb" to port 80 on some AMD64x2 laptops, etc David P. Reed
2007-12-14 7:49 ` Yinghai Lu
2007-12-14 9:45 ` Rene Herman
2007-12-14 14:23 ` Ingo Molnar
2007-12-14 14:36 ` Rene Herman
2007-12-14 14:46 ` Ingo Molnar
2007-12-14 14:56 ` Rene Herman
2007-12-14 18:36 ` Alan Cox
2007-12-14 18:48 ` H. Peter Anvin
2007-12-14 21:05 ` Pavel Machek
2007-12-15 22:59 ` Pavel Machek
2007-12-14 10:51 ` Andi Kleen
2007-12-14 11:11 ` David P. Reed
2007-12-14 13:15 ` Ingo Molnar
2007-12-14 13:24 ` Ingo Molnar
2007-12-14 13:47 ` Ingo Molnar
2007-12-14 14:41 ` Ingo Molnar
2007-12-14 13:42 ` Rene Herman
2007-12-14 14:03 ` Ingo Molnar
2007-12-14 14:10 ` Rene Herman
2007-12-14 14:21 ` Ingo Molnar
2007-12-14 18:02 ` H. Peter Anvin
2007-12-14 18:23 ` Rene Herman
2007-12-14 21:06 ` Pavel Machek
2007-12-14 22:13 ` H. Peter Anvin
2007-12-14 23:29 ` Alan Cox
2007-12-15 3:04 ` David P. Reed
2007-12-15 5:45 ` H. Peter Anvin
2007-12-15 17:17 ` David P. Reed
2007-12-15 17:46 ` Alan Cox
2007-12-17 22:50 ` Jan Engelhardt
2007-12-17 22:52 ` H. Peter Anvin
2007-12-15 8:08 ` Paul Rolland
2007-12-15 8:13 ` Rene Herman
2007-12-15 20:27 ` H. Peter Anvin
2007-12-15 23:26 ` [PATCH] x86: " Rene Herman
2007-12-15 23:51 ` H. Peter Anvin
2007-12-16 0:05 ` H. Peter Anvin
2007-12-16 13:15 ` [PATCH] x86: provide a DMI based port 0x80 I/O delay override Rene Herman
2007-12-16 15:22 ` Ingo Molnar
2007-12-17 1:43 ` Rene Herman
2007-12-17 2:05 ` H. Peter Anvin
2007-12-17 2:19 ` Rene Herman
2007-12-17 3:35 ` H. Peter Anvin
2007-12-17 13:02 ` Rene Herman [this message]
2007-12-17 17:14 ` H. Peter Anvin
2007-12-17 19:43 ` David P. Reed
2007-12-17 19:55 ` H. Peter Anvin
2007-12-17 21:02 ` David P. Reed
2007-12-17 21:17 ` H. Peter Anvin
2007-12-17 21:25 ` Alan Cox
2008-01-01 15:57 ` David P. Reed
2008-01-01 21:16 ` H. Peter Anvin
2008-01-01 15:59 ` David P. Reed
2008-01-01 16:15 ` Alan Cox
2008-01-01 16:43 ` Ingo Molnar
2008-01-01 17:32 ` Alan Cox
2008-01-01 18:45 ` Ingo Molnar
2008-01-01 20:14 ` Christer Weinigel
2008-01-01 21:13 ` Alan Cox
2008-01-01 21:07 ` Alan Cox
2008-01-02 10:04 ` Ingo Molnar
2008-01-02 13:11 ` [linux-kernel] " David P. Reed
2008-01-02 13:21 ` Ingo Molnar
2008-01-02 13:47 ` Alan Cox
2008-01-02 15:35 ` Rene Herman
2008-01-02 15:50 ` Rene Herman
2008-01-01 17:32 ` Christer Weinigel
2008-01-01 18:46 ` Ingo Molnar
2008-01-01 19:35 ` Christer Weinigel
2008-01-01 19:59 ` Rene Herman
2008-01-01 20:55 ` Christer Weinigel
2008-01-01 21:24 ` H. Peter Anvin
2008-01-01 21:01 ` Ingo Molnar
2008-01-01 21:26 ` Alan Cox
2008-01-01 21:42 ` Christer Weinigel
2008-01-01 21:42 ` Rene Herman
2008-01-01 21:50 ` H. Peter Anvin
2008-01-01 21:21 ` H. Peter Anvin
2008-01-01 23:05 ` Christer Weinigel
2008-01-01 23:12 ` Alan Cox
2008-01-02 0:23 ` Christer Weinigel
2008-01-02 10:00 ` Ingo Molnar
2008-01-01 17:32 ` David P. Reed
2008-01-01 17:38 ` Alan Cox
2008-01-01 21:15 ` H. Peter Anvin
2008-01-01 21:35 ` Rene Herman
2008-01-01 21:44 ` H. Peter Anvin
2008-01-01 22:35 ` Rene Herman
2008-01-01 22:39 ` H. Peter Anvin
2008-01-01 23:11 ` Rene Herman
2008-01-02 0:25 ` Rene Herman
2008-01-02 0:55 ` Christer Weinigel
2008-01-02 1:00 ` Rene Herman
2008-01-02 2:27 ` H. Peter Anvin
2008-01-09 17:27 ` Maciej W. Rozycki
2008-01-09 18:18 ` H. Peter Anvin
2008-01-01 17:31 ` Pavel Machek
2008-01-01 17:33 ` David P. Reed
2007-12-17 4:09 ` H. Peter Anvin
2007-12-17 10:57 ` Ingo Molnar
2007-12-17 11:29 ` Ingo Molnar
2007-12-17 13:34 ` David P. Reed
2007-12-17 12:15 ` Rene Herman
2007-12-17 13:09 ` Ingo Molnar
2007-12-17 13:22 ` Rene Herman
2007-12-17 13:31 ` Pavel Machek
2007-12-17 13:31 ` Rene Herman
2007-12-17 13:32 ` David P. Reed
2007-12-17 13:36 ` Rene Herman
2007-12-17 14:39 ` Ingo Molnar
2007-12-17 16:12 ` Alan Cox
2007-12-17 16:48 ` Ingo Molnar
2007-12-17 20:48 ` Rene Herman
2007-12-17 20:57 ` H. Peter Anvin
2007-12-17 21:33 ` Rene Herman
2007-12-17 21:40 ` H. Peter Anvin
2007-12-17 21:46 ` Ingo Molnar
2007-12-17 21:50 ` Rene Herman
2007-12-17 21:41 ` Ingo Molnar
2007-12-17 21:47 ` Rene Herman
2007-12-17 21:56 ` Ingo Molnar
2007-12-17 22:01 ` Rene Herman
2007-12-17 22:18 ` David P. Reed
2007-12-17 19:38 ` David P. Reed
2007-12-17 19:55 ` H. Peter Anvin
2007-12-17 21:28 ` Ingo Molnar
2007-12-16 21:42 ` H. Peter Anvin
2007-12-17 1:48 ` Rene Herman
2007-12-17 1:53 ` H. Peter Anvin
2007-12-16 23:12 ` David P. Reed
2007-12-17 1:56 ` Rene Herman
2007-12-17 2:04 ` H. Peter Anvin
2007-12-17 2:15 ` Rene Herman
2007-12-16 0:23 ` [PATCH] x86: fix problems due to use of "outb" to port 80 on some AMD64x2 laptops, etc David P. Reed
2007-12-15 20:26 ` [PATCH] x86_64: " H. Peter Anvin
2007-12-15 22:55 ` Pavel Machek
2007-12-16 9:27 ` Ingo Molnar
2007-12-17 21:04 ` Rene Herman
2007-12-17 23:20 ` Pavel Machek
2007-12-18 0:06 ` Alan Cox
2007-12-18 15:49 ` Lennart Sorensen
2007-12-17 22:46 ` Jan Engelhardt
2007-12-15 7:43 ` Ingo Molnar
2007-12-15 7:58 ` Rene Herman
2007-12-15 13:27 ` Ingo Molnar
2007-12-15 14:01 ` Rene Herman
2007-12-15 20:25 ` H. Peter Anvin
2007-12-15 14:29 ` Alan Cox
2007-12-15 16:19 ` David P. Reed
2007-12-15 16:48 ` Mark Lord
2007-12-15 17:51 ` Alan Cox
2007-12-15 23:00 ` Pavel Machek
2007-12-15 23:04 ` H. Peter Anvin
2007-12-16 9:40 ` Ingo Molnar
2007-12-16 21:43 ` H. Peter Anvin
2007-12-16 23:06 ` David P. Reed
2007-12-16 23:23 ` Pavel Machek
2007-12-16 23:34 ` H. Peter Anvin
2007-12-26 20:49 ` Pavel Machek
2007-12-17 1:51 ` Rene Herman
2007-12-14 16:08 ` Avi Kivity
2007-12-15 2:13 ` David P. Reed
2007-12-15 2:20 ` H. Peter Anvin
2007-12-17 18:14 ` linux-os (Dick Johnson)
2007-12-17 18:54 ` Rene Herman
2007-12-19 15:03 ` Avi Kivity
2007-12-30 3:34 [PATCH] x86: provide a DMI based port 0x80 I/O delay override Rene Herman
2007-12-30 9:30 ` Linus Torvalds
2007-12-30 12:48 ` Andi Kleen
2007-12-30 13:05 ` Ingo Molnar
2007-12-30 16:08 ` Andi Kleen
2007-12-30 16:28 ` Ingo Molnar
2007-12-30 18:21 ` Andi Kleen
2007-12-30 13:03 ` Ingo Molnar
2007-12-30 14:14 ` Rene Herman
2007-12-30 14:47 ` Alan Cox
2007-12-30 15:28 ` Ingo Molnar
2007-12-30 15:38 ` Alan Cox
2007-12-30 16:01 ` Ingo Molnar
2007-12-30 16:48 ` Alan Cox
2007-12-30 17:08 ` Ingo Molnar
2007-12-30 18:14 ` Rene Herman
2007-12-30 18:39 ` Alan Cox
2007-12-30 19:33 ` Rene Herman
2007-12-30 20:00 ` Linus Torvalds
2007-12-30 20:09 ` Rene Herman
2007-12-30 21:20 ` David P. Reed
2007-12-30 21:36 ` Alan Cox
2007-12-30 23:14 ` David P. Reed
2007-12-31 0:23 ` H. Peter Anvin
2007-12-31 11:59 ` Alan Cox
2007-12-31 18:19 ` H. Peter Anvin
2007-12-31 12:23 ` Alan Cox
2007-12-31 14:35 ` Rene Herman
2007-12-31 15:56 ` Alan Cox
2007-12-31 20:22 ` Ondrej Zary
2007-12-31 21:25 ` Alan Cox
2007-12-31 21:47 ` H. Peter Anvin
2007-12-31 23:24 ` Alan Cox
2007-12-31 23:41 ` H. Peter Anvin
2008-01-02 3:01 ` Rene Herman
2007-12-30 17:10 ` Juergen Beisert
2007-12-30 20:50 ` H. Peter Anvin
2007-12-31 1:03 ` David P. Reed
2007-12-31 1:40 ` H. Peter Anvin
2007-12-30 15:47 ` Rene Herman
2007-12-30 16:07 ` Ingo Molnar
2007-12-30 16:27 ` Rene Herman
2007-12-30 17:06 ` Ingo Molnar
2007-12-30 17:54 ` Rene Herman
2007-12-30 18:29 ` Alan Cox
2007-12-30 18:43 ` Andi Kleen
2007-12-30 20:46 ` Ingo Molnar
2007-12-30 21:07 ` Rene Herman
2007-12-30 21:25 ` Ingo Molnar
2007-12-30 21:29 ` Alan Cox
2007-12-30 22:03 ` Ingo Molnar
2007-12-31 13:11 ` Pavel Machek
2008-01-01 16:48 ` Ingo Molnar
2007-12-30 18:40 ` Linus Torvalds
2007-12-30 20:34 ` Ingo Molnar
2007-12-30 21:28 ` Alan Cox
2007-12-30 21:54 ` Ingo Molnar
2007-12-30 21:13 ` Alan Cox
2007-12-31 15:29 ` Christer Weinigel
2007-12-31 13:21 ` Pavel Machek
2007-12-31 12:29 ` Alan Cox
[not found] <9FXbU-3M4-11@gated-at.bofh.it>
[not found] ` <9G2Om-4hg-1@gated-at.bofh.it>
[not found] ` <9G7O3-3O2-7@gated-at.bofh.it>
[not found] ` <9G8qN-4TX-13@gated-at.bofh.it>
2007-12-30 17:50 ` Bodo Eggert
2007-12-30 18:10 ` Ingo Molnar
2007-12-30 20:56 ` H. Peter Anvin
2007-12-30 21:00 ` Ingo Molnar
2007-12-30 21:32 ` Bodo Eggert
2007-12-30 21:33 ` Alan Cox
2007-12-30 22:02 ` Ingo Molnar
2007-12-30 21:44 ` H. Peter Anvin
2007-12-30 21:58 ` Rene Herman
2007-12-30 20:53 ` H. Peter Anvin
2007-12-30 21:31 ` Alan Cox
2007-12-31 14:39 ` Bodo Eggert
2007-12-31 15:56 ` Alan Cox
[not found] <fa.PuxU73ceCfHAUeWLO4W21Zbrm7A@ifi.uio.no>
[not found] ` <fa.ipKZdmvkNYmQ40C0cO+2u3eYohw@ifi.uio.no>
[not found] ` <fa.ppsa4qOLo1V8UlDNTucnaqIJmKA@ifi.uio.no>
[not found] ` <fa.3IG7z0AfHuLo9eQjn7Gkl/+/lnA@ifi.uio.no>
[not found] ` <fa.slc2tTnUBrTGO2aTi/C5UGHEEEM@ifi.uio.no>
[not found] ` <fa.8g+KfLLge6wS5cEnKhZJmdkIVAI@ifi.uio.no>
2007-12-30 18:22 ` Robert Hancock
[not found] ` <fa.XY5q1SY4QX+yjnE6p8T3kbTt/8I@ifi.uio.no>
[not found] ` <fa.KEBfnq5vGkAJSEhZSx7+yy+Hdbs@ifi.uio.no>
[not found] ` <fa.MLKgXLxgzIKzm4bQXjEOqg9oDwU@ifi.uio.no>
[not found] ` <fa.KbCnGLPlUEYe/Ibajd+hTY7A7Qw@ifi.uio.no>
2007-12-31 18:21 ` Robert Hancock
[not found] <9BdU5-1YW-9@gated-at.bofh.it>
[not found] ` <9BeZN-3Gf-5@gated-at.bofh.it>
[not found] ` <9BnTB-1As-31@gated-at.bofh.it>
[not found] ` <9BrX4-8go-1@gated-at.bofh.it>
[not found] ` <9BuBG-4eR-51@gated-at.bofh.it>
[not found] ` <9BvRd-6aL-71@gated-at.bofh.it>
[not found] ` <9GRQW-1DX-13@gated-at.bofh.it>
[not found] ` <9GSah-23W-1@gated-at.bofh.it>
[not found] ` <9GSDy-2GD-23@gated-at.bofh.it>
[not found] ` <9GTpK-40d-15@gated-at.bofh.it>
[not found] ` <9GUvy-5H2-11@gated-at.bofh.it>
[not found] ` <9GVKU-7SS-25@gated-at.bofh.it>
2008-01-07 19:38 ` Bodo Eggert
2008-01-07 19:46 ` H. Peter Anvin
2008-01-07 22:02 ` Bodo Eggert
2008-01-07 22:10 ` H. Peter Anvin
2008-01-07 22:27 ` Bodo Eggert
2008-01-07 22:59 ` Rene Herman
2008-01-07 23:24 ` H. Peter Anvin
2008-01-07 23:26 ` Rene Herman
2008-01-08 0:10 ` [linux-kernel] " David P. Reed
2008-01-09 21:01 ` Matthieu castet
2008-01-08 12:51 ` Bodo Eggert
2008-01-08 14:09 ` Rene Herman
2008-01-08 14:31 ` Alan Cox
2008-01-07 23:25 ` Alan Cox
2008-01-08 13:17 ` Bodo Eggert
2008-01-08 14:38 ` Alan Cox
2008-01-08 3:15 ` Christer Weinigel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47667366.7010405@gmail.com \
--to=rene.herman@gmail.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=dpreed@reed.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mingo@redhat.com \
--cc=pavel@ucw.cz \
--cc=rol@as2917.net \
--cc=rol@witbe.net \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).