> > The problem is that read*()/write*() are misused in some places, e.g., > > serial drivers such as serial8250. The serial_in() and serial_out() > > call read*() and write*() respectively. So what's your recommendation > > in such a case? > > Why do you think this is a problem? Why do you think they are > misused? Please explain.
IMHO, serial_in() and serial_out() should be able to handle all the possilbilities. But the current implementation cannot achieve this by simply calling read*() and write*() in the case that UART control registers are 32-bit or 16-bit wide and can only be acessed in 32/16 bits in some big endian systems. As Matt pointed out before, read*() and write*() are designed for PCI access only. Regards, -Shawn.