Thread (2 messages) 2 messages, 2 authors, 2009-07-09

IN_BYTE and OUT_BYTE replacement

From: Andrei Martynov <hidden>
Date: 2009-07-09 12:28:38

Hi,

there were specific i/o macros IN_BYTE and OUT_BYTE in 2.4 kernel to
access IDE registers, but seems they are gone in 2.6 kernel and
replaced by ioread8 / iowrite8 that are used everywhere and not in
libata only. In my case original code for 2.4 kernel wrote specific
value to undocumented chipset register on *every* r/w access to *any*
IDE register.

#define OUT_BYTE(b,p) { outb(b,p); outb(255, JASPER_IDE_BASE + 0xe0); }
static inline byte jasper_ide_in_byte(int p)
{
        byte b;
        b = (byte)inb(p);
        outb(255, JASPER_IDE_BASE + 0xe0);
        return b;
}
#define IN_BYTE(p) jasper_ide_in_byte(p)

Is there any way to reproduce this behavior in libata other than
redefining ioread8/iowrite8?

-- 
Best regards,
 Andrei                          mailto:andrei.martynov@web.de
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help