linux-mips
[Top] [All Lists]

Re: about cs5536 interrupt ack

To: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Subject: Re: about cs5536 interrupt ack
From: "Maciej W. Rozycki" <macro@linux-mips.org>
Date: Wed, 11 Jul 2007 17:05:26 +0100 (BST)
Cc: Songmao Tian <tiansm@lemote.com>, LinuxBIOS Mailing List <linuxbios@linuxbios.org>, marc.jones@amd.com, linux-kernel@vger.kernel.org, linux-mips@linux-mips.org
In-reply-to: <4694FA7B.6030409@ru.mvista.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <4694A495.1050006@lemote.com> <Pine.LNX.4.64N.0707111347360.26459@blysk.ds.pg.gda.pl> <4694FA7B.6030409@ru.mvista.com>
Sender: linux-mips-bounce@linux-mips.org
Hi,

> > does it return if you write 0xc to the address 0x20 in the I/O port space
> > and then read back from that location?  You should complain to the
> > manufacturer -- they may be able to fix the problem in a later revision.
> 
>    Haha, here's an excerpt form CS5535 spec. update:
> 
> 96. PIC does not support Polling mode
> 
> [...]
> 
> Implications: This mode is not normally used in x86 systems.
> Resolution: None.

 Yes, of course:

$ grep OCW3 arch/i386/kernel/*.c
arch/i386/kernel/time.c:                outb(0x0c, PIC_MASTER_OCW3);

not at all, indeed!

> > You can still dispatch interrupts manually by examining the IRR register,
> > but having a way to ask the 8259A's prioritiser would be nice.  Although
> > given such a lethal erratum you report I would not count on the prioritiser
> > to provide any useful flexibility...
> 
>    Why not? AMD just decided not to implement poll mode, that's all.

 If they have decided to skip such an "unimportant" bit of logic, they 
could have skipped more, only providing support for the basic FNM 
INT/INTA/EOI scheme -- the only one "architecturally" supported from the 
original IBM PC on.  And indeed, a brief look at the datasheed reveals 
they claim to have removed the SFNM too (which IMO provides a more 
reasonable nesting resolution and should be the default for setups where 
nesting is used, such as the environment as set up at the bootstrap by the 
PC BIOS).

  Maciej

<Prev in Thread] Current Thread [Next in Thread>