All of lore.kernel.org
 help / color / mirror / Atom feed
From: "David P. Reed" <dpreed@reed.com>
To: Christer Weinigel <christer@weinigel.se>
Cc: Ondrej Zary <linux@rainbow-software.org>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Rene Herman <rene.herman@keyaccess.nl>,
	Bodo Eggert <7eggert@gmx.de>, Ingo Molnar <mingo@elte.hu>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Paul Rolland <rol@as2917.net>, Pavel Machek <pavel@ucw.cz>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-kernel@vger.kernel.org, Ingo Molnar <mingo@redhat.com>,
	rol@witbe.net
Subject: Re: [linux-kernel] Re: [PATCH] x86: provide a DMI based port 0x80 I/O delay override.
Date: Tue, 08 Jan 2008 17:24:12 -0500	[thread overview]
Message-ID: <4783F80C.4020903@reed.com> (raw)
In-Reply-To: <20080108224351.3a6a4016@weinigel.se>

Christer Weinigel wrote:
> Argument by personal authority.  Thats good.
There is no other kind of argument.  Are you claiming supernatural 
authority drives your typing fingers, or is your argument based on what 
you think you know?  I have piles of code that I wrote, spec sheets (now 
that I'm back in my home office), code that others wrote at the time, 
and documentation from vendors that come from my personal experiences.  
That doesn't mean I'm always right - always happy to learn something 
new.  Just don't condescend to a 55 year old who has been writing 
operating systems, compilers, and designing hardware for almost 40 years 
professionally (yes, I got my first job at 16 writing FORTRAN code to 
simulate hydrodynamic systems).
> I guess that's why you
> don't seem to understand the difference between reading the serial port
> status register and not being allowed to access a register at all
> due to such this as the 4 cycle delay you quoted yourself from the 8390
> data sheet,
If you read what I said carefully, I said that the 8390 was a very 
special case.   The "chip select" problem it experienced was pretty much 
unique among boards of the time.  Those of us who looked at its design 
and had any experience designing hardware for buses like the unibus or 
even the buses on PDP-8's and DG machines thought it had to be a joke.  
Of course it saved money per board, so it beat the 3Com boards on price 
- and you could program it after a fashion.  So it involved "cheaping out".

The normal timing problem was that an out or in operation to a board or 
chip required some time to elapse before the chip performed the side 
effects internally so that the next operation to it would have an 
effect.  This is exactly the reason why most chips and boards are 
designed to either have a polling of a flag indicate operation 
completion.  The serial "buffer empty" flag is the simplest possible 
explanatory example of such handshaking that came to mind (writing a 
character to a serial output device twice often leads to surprises, 
unless you wait for the previous character to clock out).  See my 
comment on RTC below, for a more complex to explain example.
> and similar issues with the I8253 that I quoted from its
> data sheet a few posts ago.
>
>   
The 8253 was a motherboard chip.  I am not sure it had any timing 
problems with its electrical signalling.  I just don't remember.  The 
spec sheet doesn't say it's internal state can get scrambled.
>
> I was thinking of another timer, the RTC which is usually a part of the
> Super I/O.
The RTC has very well documented timing requirements.  But none of the 
spec sheets, nor my experience with it, mention electrical issues that 
prevented back-to-back port operations.  The documented timing 
requirements have to do with the state during the time it ticks over 
internally once per second.  But it is carefully designed to have a flag 
that is "on" during 244 microseconds prior to and covering the time it 
is unsafe to read the registers.   That design is special because it is 
designed to operate when the machine is powered off, so it has two 
internal clock domains, one of which is used in "low power" mode and is 
very slow to minimize power.


  reply	other threads:[~2008-01-08 22:25 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [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                       ` [PATCH] x86: provide a DMI based port 0x80 I/O delay override 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-08  0:13                                         ` H. Peter Anvin
2008-01-08  1:38                                           ` David P. Reed
2008-01-08 17:10                                             ` Ondrej Zary
2008-01-08 17:24                                               ` David P. Reed
2008-01-08 17:38                                                 ` Ondrej Zary
2008-01-08 18:44                                                   ` David P. Reed
2008-01-08 18:51                                                     ` Alan Cox
2008-01-08 19:15                                                       ` David P. Reed
2008-01-08 19:23                                                         ` Alan Cox
2008-01-08 19:51                                                           ` David P. Reed
2008-01-09  2:52                                                         ` Zachary Amsden
2008-01-09  5:19                                                           ` H. Peter Anvin
2008-01-09 21:53                                                             ` Zachary Amsden
2008-01-09 22:22                                                               ` David P. Reed
2008-01-11  1:36                                                                 ` Zachary Amsden
2008-01-11  3:05                                                                   ` Rene Herman
2008-01-11 14:35                                                                     ` David P. Reed
2008-01-11 14:37                                                                       ` Alan Cox
2008-01-11 15:07                                                                         ` David P. Reed
2008-01-11 17:54                                                                           ` H. Peter Anvin
2008-01-11 14:49                                                                       ` Rene Herman
2008-01-14 21:57                                                                       ` David Woodhouse
2008-01-14 22:22                                                                         ` David P. Reed
2008-01-16 14:36                                                                           ` David Newall
2008-01-16 14:55                                                                             ` Alan Cox
2008-01-16 19:15                                                                               ` David Newall
2008-01-16 20:08                                                                                 ` Alan Cox
2008-01-17  6:25                                                                                   ` David Newall
2008-01-17 12:02                                                                                     ` Alan Cox
2008-01-17 13:36                                                                                       ` David Newall
2008-01-17 13:55                                                                                         ` Rene Herman
2008-01-17 21:58                                                                                           ` David Newall
2008-01-17 22:13                                                                                             ` Rene Herman
2008-01-18 13:37                                                                                               ` David Newall
2008-01-18 14:05                                                                                                 ` Rene Herman
2008-01-17 15:51                                                                                         ` Alan Cox
2008-01-09  5:30                                                           ` Christer Weinigel
2008-01-09 14:42                                                             ` David P. Reed
2008-01-09 15:27                                                             ` Rene Herman
2008-01-09 18:17                                                               ` Zachary Amsden
2008-01-09 18:18                                                                 ` H. Peter Anvin
2008-01-09 20:26                                                                   ` Christer Weinigel
2008-01-09 21:59                                                                     ` H. Peter Anvin
2008-01-09 18:22                                                                 ` Adrian Bunk
2008-01-09 18:27                                                                   ` H. Peter Anvin
2008-01-08 19:25                                                     ` Christer Weinigel
2008-01-08 20:28                                                       ` David P. Reed
2008-01-08 21:43                                                         ` Christer Weinigel
2008-01-08 22:24                                                           ` David P. Reed [this message]
2008-01-08 18:51                                                   ` Bodo Eggert
2008-01-08 19:13                                                     ` Ondrej Zary
2008-01-09 21:01                                         ` Matthieu castet
2008-01-08 12:51                                       ` Bodo Eggert
2008-01-08 13:07                                         ` [linux-kernel] " David P. Reed
2008-01-08 14:37                                           ` Alan Cox
2008-01-08 14:09                                         ` Rene Herman
2008-01-08 14:31                                         ` Alan Cox
2008-01-07 23:57                                     ` [linux-kernel] " David P. Reed
2008-01-08  1:58                                       ` 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
     [not found] <fa.u5p8NBl8IjcycTVVtf0K+YtqNQc@ifi.uio.no>
     [not found] ` <fa.NOJkdyuk0c8CAqzZcG+pF1TzhJM@ifi.uio.no>
     [not found]   ` <fa.YLAHN7jSUo9phsICUHnxilN7/lk@ifi.uio.no>
     [not found]     ` <fa.SvgVgdNA9oz4F+tQ9MB2VRwr8ck@ifi.uio.no>
     [not found]       ` <fa.By1MDYK0MY/fwkCWWrAiQCxl5KM@ifi.uio.no>
     [not found]         ` <fa.97XrGLIGlvAy4P/TB5vHHrfBrIw@ifi.uio.no>
2008-01-10  0:37           ` [linux-kernel] " Robert Hancock
2008-01-10  0:44             ` Rene Herman
2008-01-10 14:41               ` David P. Reed
2007-12-17 13:02 Rene Herman
2007-12-17 17:14 ` H. Peter Anvin
2007-12-17 19:43   ` David P. Reed
2007-12-17 21:25     ` Alan Cox
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 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

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=4783F80C.4020903@reed.com \
    --to=dpreed@reed.com \
    --cc=7eggert@gmx.de \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=christer@weinigel.se \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@rainbow-software.org \
    --cc=mingo@elte.hu \
    --cc=mingo@redhat.com \
    --cc=pavel@ucw.cz \
    --cc=rene.herman@keyaccess.nl \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.