/* We're addressing an 8 or 16-bit peripheral which tranfers odd addresses on the low ISA byte lane.  */
u8 __inb8(unsigned int port)
/* We're addressing an 8 or 16-bit peripheral which tranfers odd addresses on the low ISA byte lane.  */
u8 __inb8(unsigned int port)
{
	u32 ret;
	if (SUPERIO_PORT(port))
		ret = __raw_readb((void __iomem *)ISAIO_BASE + (port << 2));
	else {
		void __iomem *a = (void __iomem *)ISAIO_BASE + ((port & ~1) << 1);
		if (port & 1)
			ret = __raw_readl(a);
		else
			ret = __raw_readb(a);
	}
	return ret;
}