• Magnus Damm's avatar
    sh: fix ioreadN_rep and iowriteN_rep · c0ca41a2
    Magnus Damm authored
    This patch is a fix to make sure readsN/writesN are used over insN/outsN for
    ioreadN_rep/iowriteN_rep.
    
    The current state of the sh io code is that mmio operations like readN/writeN
    and ioreadN/iowriteN are unaffected by the value of generic_io_base. This is
    different fom port based io like inN/outN which gets adjusted using the value
    in generic_io_base.
    
    Without this patch ioreadN_rep/iowriteN_rep get their addresses adjusted.
    The address for mmio access is adjusted using generic_io_base. This is wrong.
    The ata core code currently crashes if generic_io_base is set.
    
    This patch changes ioreadN_rep/iowriteN_rep to follow the same rules as the
    rest of the mmio operations, ie don't adjust using generic_io_base.
    Signed-off-by: default avatarMagnus Damm <damm@igel.co.jp>
    Acked-by: default avatarKatsuya MATSUBARA <matsu@igel.co.jp>
    Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
    c0ca41a2
io.h 10.7 KB