• Michael Ellerman's avatar
    Add dcr_host_t.base in dcr_read()/dcr_write() · 83f34df4
    Michael Ellerman authored
    Now that all users of dcr_read()/dcr_write() add the dcr_host_t.base, we
    can save them the trouble and do it in dcr_read()/dcr_write().
    As some background to why we just went through all this jiggery-pokery,
    benh sayeth:
     Initially the goal of the dcr_read/dcr_write routines was to operate like
     mfdcr/mtdcr which take absolute DCR numbers. The reason is that on 4xx
     hardware, indirect DCR access is a pain (goes through a table of
     instructions) and it's useful to have the compiler resolve an absolute DCR
     We decided that wasn't worth the API bastardisation since most places
     where absolute DCR values are used are low level 4xx-only code which may
     as well continue using mfdcr/mtdcr, while the new API is designed for
     device "instances" that can exist on 4xx and Axon type platforms and may
     be located at variable DCR offsets.
    Signed-off-by: default avatarMichael Ellerman <michael@ellerman.id.au>
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
axon_msi.c 9.89 KB