The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/Documentation/leds-lp3944.txt

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 Kernel driver lp3944
    2 ====================
    3 
    4   * National Semiconductor LP3944 Fun-light Chip
    5     Prefix: 'lp3944'
    6     Addresses scanned: None (see the Notes section below)
    7     Datasheet: Publicly available at the National Semiconductor website
    8                http://www.national.com/pf/LP/LP3944.html
    9 
   10 Authors:
   11         Antonio Ospite <ospite@studenti.unina.it>
   12 
   13 
   14 Description
   15 -----------
   16 The LP3944 is a helper chip that can drive up to 8 leds, with two programmable
   17 DIM modes; it could even be used as a gpio expander but this driver assumes it
   18 is used as a led controller.
   19 
   20 The DIM modes are used to set _blink_ patterns for leds, the pattern is
   21 specified supplying two parameters:
   22   - period: from 0s to 1.6s
   23   - duty cycle: percentage of the period the led is on, from 0 to 100
   24 
   25 Setting a led in DIM0 or DIM1 mode makes it blink according to the pattern.
   26 See the datasheet for details.
   27 
   28 LP3944 can be found on Motorola A910 smartphone, where it drives the rgb
   29 leds, the camera flash light and the lcds power.
   30 
   31 
   32 Notes
   33 -----
   34 The chip is used mainly in embedded contexts, so this driver expects it is
   35 registered using the i2c_board_info mechanism.
   36 
   37 To register the chip at address 0x60 on adapter 0, set the platform data
   38 according to include/linux/leds-lp3944.h, set the i2c board info:
   39 
   40         static struct i2c_board_info __initdata a910_i2c_board_info[] = {
   41                 {
   42                         I2C_BOARD_INFO("lp3944", 0x60),
   43                         .platform_data = &a910_lp3944_leds,
   44                 },
   45         };
   46 
   47 and register it in the platform init function
   48 
   49         i2c_register_board_info(0, a910_i2c_board_info,
   50                         ARRAY_SIZE(a910_i2c_board_info));

Cache object: 7dbb580f26d11480f1300d2eb0fc8043


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.