• Robin Murphy's avatar
    perf/arm-cci: Untangle global cci_ctrl_base · e9c112c9
    Robin Murphy authored
    Depending directly on the bus driver's global cci_ctrl_base variable
    is a little unpleasant, and exporting it to allow the PMU driver to
    be modular would be even more so. Let's make things a little better
    abstracted by adding the control register block to the cci_pmu instance
    data alongside the PMU register block, and communicating the mapped
    address from the bus driver via platform data.
    
    It's not practical to try the same thing for the bus driver itself,
    given that the globals are entangled with the hairy assembly code for
    port control, so we leave them be there. It would however be prudent
    to move them to the __ro_after_init section in passing, since the
    addresses really should never be changing once set.
    Signed-off-by: default avatarRobin Murphy <[email protected]>
    Signed-off-by: default avatarArnd Bergmann <[email protected]>
    e9c112c9
arm-cci.c 47.8 KB