lkml.org 
[lkml]   [2012]   [Aug]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/2] pwm: samsung: fix the number of PWMs
    On Thu, Aug 02, 2012 at 05:56:27PM +0900, Jingoo Han wrote:
    > Samsung SoC can provide 4 PWMs; thus, the number of PWMs should be
    > set as 4.
    >
    > Signed-off-by: Jingoo Han <jg1.han@samsung.com>
    > ---
    > drivers/pwm/pwm-samsung.c | 2 +-
    > 1 files changed, 1 insertions(+), 1 deletions(-)
    >
    > diff --git a/drivers/pwm/pwm-samsung.c b/drivers/pwm/pwm-samsung.c
    > index e5187c0..32562c6 100644
    > --- a/drivers/pwm/pwm-samsung.c
    > +++ b/drivers/pwm/pwm-samsung.c
    > @@ -228,7 +228,7 @@ static int s3c_pwm_probe(struct platform_device *pdev)
    > s3c->chip.dev = &pdev->dev;
    > s3c->chip.ops = &s3c_pwm_ops;
    > s3c->chip.base = -1;
    > - s3c->chip.npwm = 1;
    > + s3c->chip.npwm = 4;

    I don't think this is correct. The driver seems to be using the platform
    device id as index currently, which indicates that the driver is bound
    against 4 different platform devices, each representing a single PWM. If
    you want to service multiple PWM devices by a single instance you need
    to make further changes to the driver. For instance the tcon_base is
    initialized based on the platform id. This could easily be replaced by
    making it depend on the .hwpwm member of pwm_device.

    You may also want to consider making the driver a proper module if that
    works on the platforms that need it. I see that it is currently an
    arch_initcall, but it might be cleaner to use deferred driver probe
    instead.

    Thierry
    [unhandled content-type:application/pgp-signature]
    \
     
     \ /
      Last update: 2012-08-02 12:41    [W:0.046 / U:0.372 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site