22 Mar, 2013

1 commit

  • Add EHRPWM and ECAP support build support for DAVINCI_DA8XX platforms.

    Also, since DAVINCI platforms doesn't support TI-PWM-Subsystem module,
    remove the select option for CONFIG_PWM_TIPWMSS.

    Also, update CONFIG_PWM_TIPWMSS compiler directive appropriately in
    pwm-tipwmss.h to fix the below compiler error upon removal of
    CONFIG_PWM_TIPWMSS for DAVINCI platforms.

    drivers/pwm/pwm-tiecap.c: In function 'ecap_pwm_probe':
    drivers/pwm/pwm-tiecap.c:263:4: error: 'PWMSS_ECAPCLK_EN' undeclared
    (first use in this function)
    drivers/pwm/pwm-tiecap.c:263:4: note: each undeclared identifier
    is reported only once for each function it appears in
    drivers/pwm/pwm-tiecap.c:264:17: error: 'PWMSS_ECAPCLK_EN_ACK'
    undeclared (first use in this function)
    drivers/pwm/pwm-tiecap.c: In function 'ecap_pwm_remove':
    drivers/pwm/pwm-tiecap.c:291:49: error: 'PWMSS_ECAPCLK_STOP_REQ'
    undeclared (first use in this function)
    make[2]: *** [drivers/pwm/pwm-tiecap.o] Error 1
    make[1]: *** [drivers/pwm] Error 2
    make: *** [drivers] Error 2

    Signed-off-by: Philip Avinash
    Signed-off-by: Thierry Reding

    Philip Avinash
     

28 Nov, 2012

1 commit

  • In some platforms (like am33xx), PWM sub modules (ECAP, EHRPWM, EQEP)
    are integrated to PWM subsystem. These PWM submodules has resources
    shared and only one register bit-field is provided to control
    module/clock enable/disable, makes it difficult to handle common
    resources from independent PWMSS submodule drivers.

    So the solution here implemented in this patch is, to create driver for
    PWMSS and take the role of parent driver for PWM submodules. PWMSS
    parent driver enumerates all the child nodes under PWMSS module. Also
    symbol "pwmss_submodule_state_change" exported to enable clock gating
    for individual PWMSS submodules, and submodule drivers has to enable
    clock gating from their drivers.

    As this is only supported during DT boot, the parent/child relationship
    is created and populated in DT execution flow. The only required change
    is inside DTS file, making EHRPWM & ECAP as a child to PWMSS node.

    Signed-off-by: Philip, Avinash
    Signed-off-by: Thierry Reding

    Philip, Avinash