• Vaibhav Hiremath's avatar
    ARM: OMAP AM33xx: powerdomains: add AM335x support · 3f0ea764
    Vaibhav Hiremath authored
    Add offset & mask fields to struct powerdomain
    
    In case of AM33xx family of devices, there is no consistency between
    PWRSTCTRL & PWRSTST register offsers in PRM space, for example -
    
    PRM_XXX           PWRSTCTRL     PWRSTST
    =======================================
    PRM_PER_MOD:      0x0C,         0x08
    PRM_WKUP_MOD:     0x04,         0x08
    PRM_MPU_MOD:      0x00,         0x04
    PRM_DEVICE_MOD:   NA,           NA
    
    And also, there is no consistency between bit-offsets inside
    PWRSTCTRL & PWRSTST register, for example -
    
    PRM_XXX           LOGICRET  MEMON  MEMRET
    =======================================
    GFX_PWRCTRL:      2,        17,    6
    PER_PWRCTRL:      3,        25,    29
    MPU_PWRCTRL:      2,        18,    22
    WKUP_PWRCTRL:     3,        NA,    NA
    
    This means, we need to maintain and pass on all this information
    in powerdomain handle; so adding fields for,
       - PWRSTCTRL/ST register offset
       - Logic retention state mask
       - mem_on/ret/pwrst/retst mask
    
    Currently, this fields is only applicable and used for AM33XX devices.
    Signed-off-by: default avatarVaibhav Hiremath <hvaibhav@ti.com>
    Cc: Benoit Cousson <b-cousson@ti.com>
    Cc: Tony Lindgren <tony@atomide.com>
    Cc: Kevin Hilman <khilman@ti.com>
    Cc: Paul Walmsley <paul@pwsan.com>
    Cc: Rajendra Nayak <rnayak@ti.com>
    [paul@pwsan.com: this patch is a combination of "Add offset & mask fields to
     struct powerdomain" and the powerdomain portions of "ARM: OMAP3+: am33xx:
     Add powerdomain & PRM support"; updated for 3.5]
    Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
    3f0ea764
powerdomain33xx.c 5.38 KB