13 Nov, 2013

1 commit

  • LP8555 is one of the LP855x family devices.

    This device needs pre_init_device() and post_init_device() driver
    structure. It's same as LP8557, so the device configuration code is
    shared with LP8557. Backlight outputs are generated from dual DC-DC boost
    converters. It's configurable EPROM settings which are defined in the
    platform data.

    Driver documentation and device tree bindings are updated.

    Signed-off-by: Milo Kim
    Signed-off-by: Jingoo Han
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Milo Kim
     

30 Apr, 2013

2 commits

  • The 'load_new_rom_data' was used for checking whether new ROM data should
    be updated or not.

    However, we can decide it with 'size_program' data. If the size is
    greater than 0, it means updating ROM area is required. Otherwise, the
    default ROM data will be used. Therefore, this duplicate platform data
    can be removed.

    Signed-off-by: Milo(Woogyom) Kim
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kim, Milo
     
  • The brightness of LP855x devices is controlled by I2C register or PWM
    input . This mode was selected through the platform data, but it can be
    chosen by the driver internally without platform data configuration.

    How to decide the control mode:
    If the PWM period has specific value, the mode is PWM input.
    On the other hand, the mode is register-based.
    This mode selection is done on the _probe().

    Move 'mode' from a header file to the driver private data structure,
    'lp855 x'. And correlated code was replaced.

    Signed-off-by: Milo(Woogyom) Kim
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kim, Milo
     

22 Feb, 2013

1 commit

  • LP8557 is one of LP855x family device, but it has different register map
    and initialization process. To support this device, device specific
    configuration is done through the lp855x_device_config structure.

    Few register definitions are fixed for better readability.
    BRIGHTNESS_CTRL -> LP855X_BRIGHTNESS_CTRL
    DEVICE_CTRL -> LP855X_DEVICE_CTRL
    EEPROM_START -> LP855X_EEPROM_START
    EEPROM_END -> LP855X_EEPROM_END
    EPROM_START -> LP8556_EPROM_START
    EPROM_END -> LP8556_EPROM_END

    And LP8557 register definitions are added. New register function,
    lp855x_update_bit() is added.

    Signed-off-by: Milo(Woogyom) Kim
    Acked-by: Jingoo Han
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kim, Milo
     

18 Dec, 2012

1 commit

  • The LP855x family devices support the PWM input for the backlight control.
    Period of the PWM is configurable in the platform side. Platform
    specific functions are unnecessary anymore because generic PWM functions
    are used inside the driver.

    (PWM input mode)
    To set the brightness, new lp855x_pwm_ctrl() is used.
    If a PWM device is not allocated, devm_pwm_get() is called.
    The PWM consumer name is from the chip name such as 'lp8550' and 'lp8556'.
    To get the brightness value, no additional handling is required.
    Just the value of 'props.brightness' is returned.

    If the PWM driver is not ready while initializing the LP855x driver, it's
    OK. The PWM device can be retrieved later, when the brightness value is
    changed.

    Documentation is updated with an example.

    [akpm@linux-foundation.org: coding-style simplification, per Thierry]
    Signed-off-by: Milo(Woogyom) Kim
    Cc: Thierry Reding
    Cc: Richard Purdie
    Cc: Bryan Wu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kim, Milo
     

24 Mar, 2012

1 commit

  • THis driver supports TI LP8550/LP8551/LP8552/LP8553/LP8556 backlight
    devices.

    The brightness can be controlled by the I2C or PWM input. The lp855x
    driver provides both modes. For the PWM control, pwm-specific functions
    can be defined in the platform data. And some information can be read
    via the sysfs(lp855x device attributes).

    For details, please refer to Documentation/backlight/lp855x-driver.txt.

    [axel.lin@gmail.com: add missing mutex_unlock in lp855x_read_byte() error path]
    [axel.lin@gmail.com: check platform data in lp855x_probe()]
    [axel.lin@gmail.com: small cleanups]
    [dan.carpenter@oracle.com: silence a compiler warning]
    [axel.lin@gmail.com: use id->driver_data to differentiate lp855x chips]
    [akpm@linux-foundation.org: simplify boolean return expression]
    Signed-off-by: Milo(Woogyom) Kim
    Signed-off-by: Axel Lin
    Signed-off-by: Dan Carpenter
    Cc: Richard Purdie
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kim, Milo