• T
    OMAP3: hwmod: support to specify the offset position of various SYSCONFIG register bits. · 358f0e63
    Thara Gopinath 提交于
    In OMAP3 Some modules like Smartreflex do not have the regular sysconfig
    register.Instead clockactivity bits are part of another register at a
    different bit position than the usual bit positions 8 and 9.
    
    In OMAP4, a new scheme is available  due to the new protocol
    between the PRCM and the IPs. Depending of the scheme, the SYSCONFIG
    bitfields position will be different.
    The IP_REVISION register should be at offset 0x00.
    It should contain a SCHEME field. From this we can determine whether
    the IP follows legacy scheme or the new scheme.
    
    31:30 SCHEME  Used to distinguish between old scheme and current.
     Read 0x0:  Legacy protocol.
     Read 0x1:  New PRCM protocol defined for new OMAP4 IPs
    
    For legacy IP
     13:12 MIDLEMODE
     11:8  CLOCKACTIVITY
     6     EMUSOFT
     5     EMUFREE
     4:3   SIDLEMODE
     2     ENAWAKEUP
     1     SOFTRESET
     0     AUTOIDLE
    
    For new OMAP4 IP's, the bit position in SYSCONFIG is (for simple target):
     5:4   STANDBYMODE (Ex MIDLEMODE)
     3:2   IDLEMODE (Ex SIDLEMODE)
     1     FREEEMU (Ex EMUFREE)
     0     SOFTRESET
    
    Unfortunately In OMAP4 also some IPs will not follow any of these
    two schemes. This is the case at least for McASP, SmartReflex
    and some security IPs.
    
    This patch introduces a new field sysc_fields in omap_hwmod_sysconfig which
    can be used by the hwmod structures to specify the offsets for the
    sysconfig register of the IP.Also two static structures
    omap_hwmod_sysc_type1 and omap_hwmod_sysc_type2 are defined
    which can be used directly to populate the sysc_fields if the IP follows
    legacy or new OMAP4 scheme. If the IP follows none of these two schemes
    a new omap_hwmod_sysc_fields structure has to be defined and
    passed as part of omap_hwmod_sysconfig.
    Signed-off-by: NThara Gopinath <thara@ti.com>
    Signed-off-by: NBenoit Cousson <b-cousson@ti.com>
    Signed-off-by: NPaul Walmsley <paul@pwsan.com>
    358f0e63
omap_hwmod.c 40.5 KB