• P
    ARM: OMAP2+: hwmod: revise the IP block reset process · 30e105c0
    Paul Walmsley 提交于
    Revise the IP block reset process.  This patch ensures that the
    OCP_SYSCONFIG registers are reloaded after a custom reset.  Since
    OCP_SYSCONFIG bits are cleared during reset, they should be
    reprogrammed unless the IP block is being left in reset.  (The only IP
    blocks that are left in reset are IP blocks with hardreset lines and
    no custom reset function.)  If the IP block is left in reset, then it
    is inaccessible to the MPU, and an access to the OCP_SYSCONFIG
    register will cause an abort.
    
    This version incorporates comments from Omar Ramirez Luna
    <omar.ramirez@ti.com> to skip the OCP_SYSCONFIG access after asserting
    hardreset lines.  This allows the MMU (IOMMU) IP block, which has
    both hardreset lines and an OCP_SYSCONFIG register.
    
    Also, ignore _ocp_softreset() errors if the IP block doesn't include a
    softreset bit.  This is needed since a subsequent patch will start
    taking the return value of the _reset() function seriously.
    Signed-off-by: NPaul Walmsley <paul@pwsan.com>
    Cc: Benoît Cousson <b-cousson@ti.com>
    Cc: Omar Ramirez Luna <omar.ramirez@ti.com>
    30e105c0
omap_hwmod.c 76.0 KB