02 Nov, 2020

1 commit

  • Changeset 26a07553041e ("docs: ABI: sysfs-class-led-trigger-pattern: remove hw_pattern duplication")
    didn't include the needed changes at index.rst.

    Fixes: 26a07553041e ("docs: ABI: sysfs-class-led-trigger-pattern: remove hw_pattern duplication")
    Signed-off-by: Mauro Carvalho Chehab
    Link: https://lore.kernel.org/r/36a6e3aef6e57ea349f1b47c7731d4cd1e03ca77.1604312590.git.mchehab+huawei@kernel.org
    Signed-off-by: Greg Kroah-Hartman

    Mauro Carvalho Chehab
     

30 Oct, 2020

1 commit

  • The ABI files are supposed to be unique. Yet,
    in the specific case of hw_pattern, there are some duplicated
    entries as warned by scripts/get_abi.pl:

    Warning: /sys/class/leds//hw_pattern is defined 3 times: Documentation/ABI/testing/sysfs-class-led-trigger-pattern:14 Documentation/ABI/testing/sysfs-class-led-driver-sc27xx:0 Documentation/ABI/testing/sysfs-class-led-driver-el15203000:0

    Drop the duplication from the ABI files, moving the specific
    definitions to files inside Documentation/leds.

    Acked-by: Jonathan Corbet
    Signed-off-by: Mauro Carvalho Chehab
    Link: https://lore.kernel.org/r/038e57881550550b298e598f8f9b7f20515cbe15.1604042072.git.mchehab+huawei@kernel.org
    Signed-off-by: Greg Kroah-Hartman

    Mauro Carvalho Chehab
     

18 Aug, 2020

1 commit


06 Aug, 2020

1 commit

  • Pull LED updates from Pavel Machek:
    "Okay, so... this one is interesting. RGB LEDs are very common, and we
    need to have some kind of support for them. Multicolor is for
    arbitrary set of LEDs in one package, RGB is for LEDs that can produce
    full range of colors. We do not have real multicolor LED that is not
    RGB in the pipeline, so that one is disabled for now.

    You can expect this saga to continue with next pull requests"

    * tag 'leds-5.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds: (37 commits)
    MAINTAINERS: Remove myself as LED subsystem maintainer
    leds: disallow /sys/class/leds/*:multi:* for now
    leds: add RGB color option, as that is different from multicolor.
    Make LEDS_LP55XX_COMMON depend on I2C to fix build errors:
    Documentation: ABI: leds-turris-omnia: document sysfs attribute
    leds: initial support for Turris Omnia LEDs
    dt-bindings: leds: add cznic,turris-omnia-leds binding
    leds: pattern trigger -- check pattern for validity
    leds: Replace HTTP links with HTTPS ones
    leds: trigger: add support for LED-private device triggers
    leds: lp5521: Add multicolor framework multicolor brightness support
    leds: lp5523: Update the lp5523 code to add multicolor brightness function
    leds: lp55xx: Add multicolor framework support to lp55xx
    leds: lp55xx: Convert LED class registration to devm_*
    dt-bindings: leds: Convert leds-lp55xx to yaml
    leds: multicolor: Introduce a multicolor class definition
    leds: Add multicolor ID to the color ID list
    dt: bindings: Add multicolor class dt bindings documention
    leds: lp5523: Fix various formatting issues in the code
    leds: lp55xx: Fix file permissions to use DEVICE_ATTR macros
    ...

    Linus Torvalds
     

22 Jul, 2020

1 commit

  • Introduce a multicolor class that groups colored LEDs
    within a LED node.

    The multicolor class groups monochrome LEDs and allows controlling two
    aspects of the final combined color: hue and lightness. The former is
    controlled via the intensity file and the latter is controlled
    via brightness file.

    Signed-off-by: Dan Murphy
    Acked-by: Jacek Anaszewski
    Signed-off-by: Pavel Machek
    [squashed leds: multicolor: Fix camel case in documentation in]

    Dan Murphy
     

13 Jul, 2020

1 commit

  • Drop the doubled word "for".

    Signed-off-by: Randy Dunlap
    Acked-by: Jacek Anaszewski
    Acked-by: Pavel Machek
    Cc: Jonathan Corbet
    Cc: linux-doc@vger.kernel.org
    Cc: Jacek Anaszewski
    Cc: Pavel Machek
    Cc: Dan Murphy
    Cc: linux-leds@vger.kernel.org
    Link: https://lore.kernel.org/r/20200707180414.10467-12-rdunlap@infradead.org
    Signed-off-by: Jonathan Corbet

    Randy Dunlap
     

26 Jul, 2019

1 commit

  • Add generic support for composing LED class device name. The newly
    introduced led_compose_name() function composes device name according
    to either or pattern,
    depending on the configuration of initialization data.

    Backward compatibility with in-driver hard-coded LED class device
    names is assured thanks to the default_label and devicename properties
    of newly introduced struct led_init_data.

    In case none of the aforementioned properties was found, then, for OF
    nodes, the node name is adopted for LED class device name.

    At the occassion of amending the Documentation/leds/leds-class.txt
    unify spelling: colour -> color.

    Alongside these changes added is a new tool - tools/leds/get_led_device_info.sh.
    The tool allows retrieving details of a LED class device's parent device,
    which proves that using vendor or product name for devicename part
    of LED name doesn't convey any added value since that information had been
    already available in sysfs. The script performs also basic validation
    of a LED class device name.

    Signed-off-by: Jacek Anaszewski
    Cc: Baolin Wang
    Cc: Dan Murphy
    Cc: Daniel Mack
    Cc: Linus Walleij
    Cc: Oleh Kravchenko
    Cc: Sakari Ailus
    Cc: Simon Shields
    Reviewed-by: Linus Walleij
    Acked-by: Pavel Machek

    Jacek Anaszewski
     

15 Jul, 2019

1 commit

  • The contents of leds driver docs is messy: it has lots of
    admin-guide stuff and kernel internal ones, just like other
    driver subsystems.

    I'm opting to keep the dir at the same place and just add
    a link to it. This makes clearer that this require changes.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     

29 Jun, 2019

1 commit

  • Rename the leds documentation files to ReST, add an
    index for them and adjust in order to produce a nice html
    output via the Sphinx build system.

    At its new index.rst, let's add a :orphan: while this is not linked to
    the main index.rst file, in order to avoid build warnings.

    Signed-off-by: Mauro Carvalho Chehab
    Acked-by: Pavel Machek
    Signed-off-by: Jacek Anaszewski

    Mauro Carvalho Chehab
     

21 Nov, 2018

1 commit

  • Whilst making an unrelated change to some Documentation, Linus sayeth:

    | Afaik, even in Britain, "whilst" is unusual and considered more
    | formal, and "while" is the common word.
    |
    | [...]
    |
    | Can we just admit that we work with computers, and we don't need to
    | use þe eald Englisc spelling of words that most of the world never
    | uses?

    dictionary.com refers to the word as "Chiefly British", which is
    probably an undesirable attribute for technical documentation.

    Replace all occurrences under Documentation/ with "while".

    Cc: David Howells
    Cc: Liam Girdwood
    Cc: Chris Wilson
    Cc: Michael Halcrow
    Cc: Jonathan Corbet
    Reported-by: Linus Torvalds
    Signed-off-by: Will Deacon
    Signed-off-by: Jonathan Corbet

    Will Deacon
     

10 Sep, 2018

1 commit

  • This is a respin with a wider audience (all that get_maintainer returned)
    and I know this spams a *lot* of people. Not sure what would be the correct
    way, so my apologies for ruining your inbox.

    The 00-INDEX files are supposed to give a summary of all files present
    in a directory, but these files are horribly out of date and their
    usefulness is brought into question. Often a simple "ls" would reveal
    the same information as the filenames are generally quite descriptive as
    a short introduction to what the file covers (it should not surprise
    anyone what Documentation/sched/sched-design-CFS.txt covers)

    A few years back it was mentioned that these files were no longer really
    needed, and they have since then grown further out of date, so perhaps
    it is time to just throw them out.

    A short status yields the following _outdated_ 00-INDEX files, first
    counter is files listed in 00-INDEX but missing in the directory, last
    is files present but not listed in 00-INDEX.

    List of outdated 00-INDEX:
    Documentation: (4/10)
    Documentation/sysctl: (0/1)
    Documentation/timers: (1/0)
    Documentation/blockdev: (3/1)
    Documentation/w1/slaves: (0/1)
    Documentation/locking: (0/1)
    Documentation/devicetree: (0/5)
    Documentation/power: (1/1)
    Documentation/powerpc: (0/5)
    Documentation/arm: (1/0)
    Documentation/x86: (0/9)
    Documentation/x86/x86_64: (1/1)
    Documentation/scsi: (4/4)
    Documentation/filesystems: (2/9)
    Documentation/filesystems/nfs: (0/2)
    Documentation/cgroup-v1: (0/2)
    Documentation/kbuild: (0/4)
    Documentation/spi: (1/0)
    Documentation/virtual/kvm: (1/0)
    Documentation/scheduler: (0/2)
    Documentation/fb: (0/1)
    Documentation/block: (0/1)
    Documentation/networking: (6/37)
    Documentation/vm: (1/3)

    Then there are 364 subdirectories in Documentation/ with several files that
    are missing 00-INDEX alltogether (and another 120 with a single file and no
    00-INDEX).

    I don't really have an opinion to whether or not we /should/ have 00-INDEX,
    but the above 00-INDEX should either be removed or be kept up to date. If
    we should keep the files, I can try to keep them updated, but I rather not
    if we just want to delete them anyway.

    As a starting point, remove all index-files and references to 00-INDEX and
    see where the discussion is going.

    Signed-off-by: Henrik Austad
    Acked-by: "Paul E. McKenney"
    Just-do-it-by: Steven Rostedt
    Reviewed-by: Jens Axboe
    Acked-by: Paul Moore
    Acked-by: Greg Kroah-Hartman
    Acked-by: Mark Brown
    Acked-by: Mike Rapoport
    Cc: [Almost everybody else]
    Signed-off-by: Jonathan Corbet

    Henrik Austad
     

24 Oct, 2017

1 commit


18 Mar, 2017

1 commit


30 Jan, 2017

1 commit

  • Some LEDs may have their brightness level changed autonomously
    (outside of kernel control) by hardware / firmware. This commit
    adds support for an optional brightness_hw_changed attribute to
    signal such changes to userspace (if a driver can detect them):

    What: /sys/class/leds//brightness_hw_changed
    Date: January 2017
    KernelVersion: 4.11
    Description:
    Last hardware set brightness level for this LED. Some LEDs
    may be changed autonomously by hardware/firmware. Only LEDs
    where this happens and the driver can detect this, will
    have this file.

    This file supports poll() to detect when the hardware
    changes the brightness.

    Reading this file will return the last brightness level set
    by the hardware, this may be different from the current
    brightness.

    Drivers which want to support this, simply add LED_BRIGHT_HW_CHANGED to
    their flags field and call led_classdev_notify_brightness_hw_changed()
    with the hardware set brightness when they detect a hardware / firmware
    triggered brightness change.

    Signed-off-by: Hans de Goede
    Acked-by: Pavel Machek
    Signed-off-by: Jacek Anaszewski

    Hans de Goede
     

22 Nov, 2016

2 commits

  • Files are visible all the time, so remove incorrect notes.

    Signed-off-by: Pavel Machek
    Signed-off-by: Jacek Anaszewski

    Pavel Machek
     
  • This driver creates a userspace leds driver similar to uinput.

    New LEDs are created by opening /dev/uleds and writing a uleds_user_dev
    struct. A new LED class device is registered with the name given in the
    struct. Reading will return a single byte that is the current brightness.
    The poll() syscall is also supported. It will be triggered whenever the
    brightness changes. Closing the file handle to /dev/uleds will remove
    the leds class device.

    Signed-off-by: David Lechner
    Signed-off-by: Jacek Anaszewski

    David Lechner
     

05 Oct, 2016

1 commit

  • Pull LED driver updates from Jacek Anaszewski:
    "Three new LED class drivers and some minor fixes and improvementes to
    the leds-gpio driver, LED Trigger core and documentation"

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
    leds: triggers: Check return value of kobject_uevent_env()
    leds: triggers: Return from led_trigger_set() if there is nothing to do
    leds: gpio: fix and simplify error handling in gpio_leds_create
    leds: gpio: switch to managed version of led_classdev_register
    leds: gpio: fix and simplify reading property "label"
    leds: gpio: simplify gpio_leds_create
    leds: gpio: add helper cdev_to_gpio_led_data
    leds: gpio: fix an unhandled error case in create_gpio_led
    leds: gpio: introduce gpio_blink_set_t
    leds: add driver for Mellanox systems LEDs
    Documentation: move oneshot trigger attributes documentation to ABI
    leds: centralize definition of "default-state" property
    leds: add PM8058 LEDs driver
    leds: pm8058: add device tree bindings
    leds: do not overflow sysfs buffer in led_trigger_show
    leds: make triggers explicitly non-modular
    DT: leds: Add bindings for ISSI is31fl319x
    leds: is31fl319x: 1/3/6/9-channel light effect led driver

    Linus Torvalds
     

27 Sep, 2016

1 commit

  • This commit adds a new trigger responsible for turning on LED when USB
    device gets connected to the selected USB port. This can can useful for
    various home routers that have USB port(s) and a proper LED telling user
    a device is connected.

    The trigger gets its documentation file but basically it just requires
    enabling it and selecting USB ports (e.g. echo 1 > ports/usb1-1).

    There was a long discussion on design of this driver. Its current state
    is a result of picking them most adjustable solution as others couldn't
    handle all cases.

    1) It wasn't possible for the driver to register separated trigger for
    each USB port. Some physical USB ports are handled by more than one
    controller and so by more than one USB port. E.g. USB 2.0 physical
    port may be handled by OHCI's port and EHCI's port.
    It's also not possible to assign more than 1 trigger to a single LED
    and implementing such feature would be tricky due to syncing triggers
    and sysfs conflicts with old triggers.

    2) Another idea was to register trigger per USB hub. This wouldn't allow
    handling devices with multiple USB LEDs and controllers (hubs)
    controlling more than 1 physical port. It's common for hubs to have
    few ports and each may have its own LED.

    This final trigger is highly flexible. It allows selecting any USB ports
    for any LED. It was also modified (comparing to the initial version) to
    allow choosing ports rather than having user /guess/ proper names. It
    was successfully tested on SmartRG SR400ac which has 3 USB LEDs,
    2 physical ports and 3 controllers.

    It was noted USB subsystem already has usb-gadget and usb-host triggers
    but they are pretty trivial ones. They indicate activity only and can't
    have ports specified.

    In future it may be good idea to consider adding activity support to
    usbport as well. This should allow switching to this more generic driver
    and maybe marking old ones as obsolete.
    This can be implemented with another sysfs file for setting mode. The
    default mode wouldn't change so there won't be ABI breakage and so such
    feature can be safely implemented later.

    There was also an idea of supporting other devices (PCI, SDIO, etc.) but
    as this driver already contains some USB specific code (and will get
    more) these should be probably separated drivers (triggers).

    Signed-off-by: Rafał Miłecki
    Signed-off-by: Greg Kroah-Hartman

    Rafał Miłecki
     

15 Sep, 2016

1 commit

  • This makes it possible to create a set of LEDs for Mellanox systems:
    "msx6710", "msx6720", "msb7700", "msn2700", "msx1410", "msn2410",
    "msb7800", "msn2740", "msn2100".

    Driver obtains LED devices according to system configuration, provided
    through system DMI data, like mlxcpld:fan1:green, mlxcpld:fan1:red and
    creates devices in form: "devicename:colour:function".

    LED setting is controlled through on board CPLD Lattice device.
    For setting particular LED off, solid, blink:
    echo 0 > /sys/class/leds/mlxcpld\:status\:green/brightness
    echo 1 > /sys/class/leds/mlxcpld\:status\:green/brightness
    echo timer > /sys/class/leds/mlxcpld\:status\:green/trigger

    On module probing all LEDs are set green, on removing - off.

    Last setting overwrites previous, f.e. sequence for
    changing LED from green - red - green:
    echo 1 > /sys/class/leds/mlxcpld\:psu\:green/brightness
    echo 1 > /sys/class/leds/mlxcpld\:psu\:red/brightness
    echo 1 > /sys/class/leds/mlxcpld\:psu\:green/brightness
    Note: LEDs cannot be turned on/off simultaneously.

    The Kconfig currently controlling compilation of this code is:
    drivers/leds/Kconfig:config LEDS_MLXCPLD

    Signed-off-by: Vadim Pasternak
    Reviewed-by: Jiri Pirko
    Reviewed-by: Wei Yongjun
    Signed-off-by: Jacek Anaszewski

    Vadim Pasternak
     

29 Aug, 2016

1 commit


27 Jun, 2016

1 commit


08 Jun, 2016

1 commit

  • Commit 76931edd54f8 ("leds: fix brightness changing when software blinking
    is active") changed the semantics of led_set_brightness() which according
    to the documentation should disable blinking upon any brightness setting.
    Moreover it made it different for soft blink case, where it was possible
    to change blink brightness, and for hardware blink case, where setting
    any brightness greater than 0 was ignored.

    While the change itself is against the documentation claims, it was driven
    also by the fact that timer trigger remained active after turning blinking
    off. Fixing that would have required major refactoring in the led-core,
    led-class, and led-triggers because of cyclic dependencies.

    Finally, it has been decided that allowing for brightness change during
    blinking is beneficial as it can be accomplished without disturbing
    blink rhythm.

    The change in brightness setting semantics will not affect existing
    LED class drivers that implement blink_set op thanks to the LED_BLINK_SW
    flag introduced by this patch. The flag state will be from now on checked
    in led_set_brightness() which will allow to distinguish between software
    and hardware blink mode. In the latter case the control will be passed
    directly to the drivers which apply their semantics on brightness set,
    which is disable the blinking in case of most such drivers. New drivers
    will apply new semantics and just change the brightness while hardware
    blinking is on, if possible.

    The issue was smuggled by subsequent LED core improvements, which modified
    the code that originally introduced the problem.

    Fixes: f1e80c07416a ("leds: core: Add two new LED_BLINK_ flags")
    Signed-off-by: Tony Makkiel
    Signed-off-by: Jacek Anaszewski

    Tony Makkiel
     

04 Jan, 2016

1 commit


02 Jul, 2015

1 commit

  • Pull LED subsystem updates from Bryan Wu:
    "In this cycle, we finished to merge patches for LED Flash class
    driver.

    Other than that we have some bug fixes and new drivers for LED
    controllers"

    * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds: (33 commits)
    leds:lp55xx: fix firmware loading error
    leds: fix max77693-led build errors
    leds: fix aat1290 build errors
    leds: aat1290: pass flags parameter to devm_gpiod_get
    leds: ktd2692: pass flags parameter to devm_gpiod_get
    drivers/leds: don't use module_init in non-modular leds-cobalt-raq.c
    leds: aat1290: add support for V4L2 Flash sub-device
    DT: aat1290: Document handling external strobe sources
    leds: max77693: add support for V4L2 Flash sub-device
    media: Add registration helpers for V4L2 flash sub-devices
    v4l: async: Add a pointer to of_node to struct v4l2_subdev, match it
    Documentation: leds: Add description of v4l2-flash sub-device
    leds: add BCM6358 LED driver
    leds: add DT binding for BCM6358 LED controller
    leds: fix brightness changing when software blinking is active
    Documentation: leds-lp5523: describe master fader attributes
    leds: lp5523: add master_fader support
    leds: leds-gpio: Allow compile test if !GPIOLIB
    leds: leds-gpio: Add missing #include
    gpiolib: Add missing dummies for the unified device properties interface
    ...

    Linus Torvalds
     

25 Jun, 2015

1 commit

  • Pull input subsystem updates from Dmitry Torokhov:
    "Thanks to Samuel Thibault input device (keyboard) LEDs are no longer
    hardwired within the input core but use LED subsystem and so allow use
    of different triggers; Hans de Goede did a large update for the ALPS
    touchpad driver; we have new TI drv2665 haptics driver and DA9063
    OnKey driver, and host of other drivers got various fixes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (55 commits)
    Input: pixcir_i2c_ts - fix receive error
    MAINTAINERS: remove non existent input mt git tree
    Input: improve usage of gpiod API
    tty/vt/keyboard: define LED triggers for VT keyboard lock states
    tty/vt/keyboard: define LED triggers for VT LED states
    Input: export LEDs as class devices in sysfs
    Input: cyttsp4 - use swap() in cyttsp4_get_touch()
    Input: goodix - do not explicitly set evbits in input device
    Input: goodix - export id and version read from device
    Input: goodix - fix variable length array warning
    Input: goodix - fix alignment issues
    Input: add OnKey driver for DA9063 MFD part
    Input: elan_i2c - add product IDs FW names
    Input: elan_i2c - add support for multi IC type and iap format
    Input: focaltech - report finger width to userspace
    tty: remove platform_sysrq_reset_seq
    Input: synaptics_i2c - use proper boolean values
    Input: psmouse - use true instead of 1 for boolean values
    Input: cyapa - fix a few typos in comments
    Input: stmpe-ts - enforce device tree only mode
    ...

    Linus Torvalds
     

12 Jun, 2015

1 commit

  • This change creates a new input handler called "leds" that exports LEDs on input
    devices as standard LED class devices in sysfs and allows controlling their
    state via sysfs or via any of the standard LED triggers. This allows to
    re-purpose and reassign LDEs on the keyboards to represent states other
    than the standard keyboard states (CapsLock, NumLock, etc).

    The old API of controlling input LEDs by writing into /dev/input/eventX
    devices is still present and will take precedence over accessing via LEDs
    subsystem (i.e. it may override state set by a trigger). If input device is
    "grabbed" then requests coming through LED subsystem will be ignored.

    Signed-off-by: Samuel Thibault
    Tested-by: Pavel Machek
    Acked-by: Pavel Machek
    Signed-off-by: Dmitry Torokhov

    Samuel Thibault
     

11 Jun, 2015

1 commit


26 May, 2015

1 commit


10 Mar, 2015

1 commit


11 Feb, 2014

1 commit

  • Some of the 00-INDEX files are somewhat outdated and some folders does
    not contain 00-INDEX at all. Only outdated (with the notably exception
    of spi) indexes are touched here, the 169 folders without 00-INDEX has
    not been touched.

    New 00-INDEX
    - spi/* was added in a series of commits dating back to 2006

    Added files (missing in (*/)00-INDEX)
    - dmatest.txt was added by commit 851b7e16a07d ("dmatest: run test via
    debugfs")
    - this_cpu_ops.txt was added by commit a1b2a555d637 ("percpu: add
    documentation on this_cpu operations")
    - ww-mutex-design.txt was added by commit 040a0a371005 ("mutex: Add
    support for wound/wait style locks")
    - bcache.txt was added by commit cafe56359144 ("bcache: A block layer
    cache")
    - kernel-per-CPU-kthreads.txt was added by commit 49717cb40410
    ("kthread: Document ways of reducing OS jitter due to per-CPU
    kthreads")
    - phy.txt was added by commit ff764963479a ("drivers: phy: add generic
    PHY framework")
    - block/null_blk was added by commit 12f8f4fc0314 ("null_blk:
    documentation")
    - module-signing.txt was added by commit 3cafea307642 ("Add
    Documentation/module-signing.txt file")
    - assoc_array.txt was added by commit 3cb989501c26 ("Add a generic
    associative array implementation.")
    - arm/IXP4xx was part of the initial repo
    - arm/cluster-pm-race-avoidance.txt was added by commit 7fe31d28e839
    ("ARM: mcpm: introduce helpers for platform coherency exit/setup")
    - arm/firmware.txt was added by commit 7366b92a77fc ("ARM: Add
    interface for registering and calling firmware-specific operations")
    - arm/kernel_mode_neon.txt was added by commit 2afd0a05241d ("ARM:
    7825/1: document the use of NEON in kernel mode")
    - arm/tcm.txt was added by commit bc581770cfdd ("ARM: 5580/2: ARM TCM
    (Tightly-Coupled Memory) support v3")
    - arm/vlocks.txt was added by commit 9762f12d3e05 ("ARM: mcpm: Add
    baremetal voting mutexes")
    - blackfin/gptimers-example.c, Makefile was added by commit
    4b60779d5ea7 ("Blackfin: add an example showing how to use the
    gptimers API")
    - devicetree/usage-model.txt was added by commit 31134efc681a ("dt:
    Linux DT usage model documentation")
    - fb/api.txt was added by commit fb21c2f42879 ("fbdev: Add FOURCC-based
    format configuration API")
    - fb/sm501.txt was added by commit e6a049807105 ("video, sm501: add
    edid and commandline support")
    - fb/udlfb.txt was added by commit 96f8d864afd6 ("fbdev: move udlfb out
    of staging.")
    - filesystems/Makefile was added by commit 1e0051ae48a2
    ("Documentation/fs/: split txt and source files")
    - filesystems/nfs/nfsd-admin-interfaces.txt was added by commit
    8a4c6e19cfed ("nfsd: document kernel interfaces for nfsd
    configuration")
    - ide/warm-plug-howto.txt was added by commit f74c91413ec6 ("ide: add
    warm-plug support for IDE devices (take 2)")
    - laptops/Makefile was added by commit d49129accc21
    ("Documentation/laptop/: split txt and source files")
    - leds/leds-blinkm.txt was added by commit b54cf35a7f65 ("LEDS: add
    BlinkM RGB LED driver, documentation and update MAINTAINERS")
    - leds/ledtrig-oneshot.txt was added by commit 5e417281cde2 ("leds: add
    oneshot trigger")
    - leds/ledtrig-transient.txt was added by commit 44e1e9f8e705 ("leds:
    add new transient trigger for one shot timer activation")
    - m68k/README.buddha was part of the initial repo
    - networking/LICENSE.(qla3xxx|qlcnic|qlge) was added by commits
    40839129f779, c4e84bde1d59, 5a4faa873782
    - networking/Makefile was added by commit 3794f3e812ef ("docsrc: build
    Documentation/ sources")
    - networking/i40evf.txt was added by commit 105bf2fe6b32 ("i40evf: add
    driver to kernel build system")
    - networking/ipsec.txt was added by commit b3c6efbc36e2 ("xfrm: Add
    file to document IPsec corner case")
    - networking/mac80211-auth-assoc-deauth.txt was added by commit
    3cd7920a2be8 ("mac80211: add auth/assoc/deauth flow diagram")
    - networking/netlink_mmap.txt was added by commit 5683264c3981
    ("netlink: add documentation for memory mapped I/O")
    - networking/nf_conntrack-sysctl.txt was added by commit c9f9e0e1597f
    ("netfilter: doc: add nf_conntrack sysctl api documentation") lan)
    - networking/team.txt was added by commit 3d249d4ca7d0 ("net: introduce
    ethernet teaming device")
    - networking/vxlan.txt was added by commit d342894c5d2f ("vxlan:
    virtual extensible lan")
    - power/runtime_pm.txt was added by commit 5e928f77a09a ("PM: Introduce
    core framework for run-time PM of I/O devices (rev. 17)")
    - power/charger-manager.txt was added by commit 3bb3dbbd56ea
    ("power_supply: Add initial Charger-Manager driver")
    - RCU/lockdep-splat.txt was added by commit d7bd2d68aa2e ("rcu:
    Document interpretation of RCU-lockdep splats")
    - s390/kvm.txt was added by 5ecee4b (KVM: s390: API documentation)
    - s390/qeth.txt was added by commit b4d72c08b358 ("qeth: bridgeport
    support - basic control")
    - scheduler/sched-bwc.txt was added by commit 88ebc08ea9f7 ("sched: Add
    documentation for bandwidth control")
    - scsi/advansys.txt was added by commit 4bd6d7f35661 ("[SCSI] advansys:
    Move documentation to Documentation/scsi")
    - scsi/bfa.txt was added by commit 1ec90174bdb4 ("[SCSI] bfa: add
    readme file")
    - scsi/bnx2fc.txt was added by commit 12b8fc10eaf4 ("[SCSI] bnx2fc: Add
    driver documentation")
    - scsi/cxgb3i.txt was added by commit c3673464ebc0 ("[SCSI] cxgb3i: Add
    cxgb3i iSCSI driver.")
    - scsi/hpsa.txt was added by commit 992ebcf14f3c ("[SCSI] hpsa: Add
    hpsa.txt to Documentation/scsi")
    - scsi/link_power_management_policy.txt was added by commit
    ca77329fb713 ("[libata] Link power management infrastructure")
    - scsi/osd.txt was added by commit 78e0c621deca ("[SCSI] osd:
    Documentation for OSD library")
    - scsi/scsi-parameter.txt was created/moved by commit 163475fb111c
    ("Documentation: move SCSI parameters to their own text file")
    - serial/driver was part of the initial repo
    - serial/n_gsm.txt was added by commit 323e84122ec6 ("n_gsm: add a
    documentation")
    - timers/Makefile was added by commit 3794f3e812ef ("docsrc: build
    Documentation/ sources")
    - virt/kvm/s390.txt was added by commit d9101fca3d57 ("KVM: s390:
    diagnose call documentation")
    - vm/split_page_table_lock was added by commit 49076ec2ccaf ("mm:
    dynamically allocate page->ptl if it cannot be embedded to struct
    page")
    - w1/slaves/w1_ds28e04 was added by commit fbf7f7b4e2ae ("w1: Add
    1-wire slave device driver for DS28E04-100")
    - w1/masters/omap-hdq was added by commit e0a29382c6f5 ("hdq:
    documentation for OMAP HDQ")
    - x86/early-microcode.txt was added by commit 0d91ea86a895 ("x86, doc:
    Documentation for early microcode loading")
    - x86/earlyprintk.txt was added by commit a1aade478862 ("x86/doc:
    mini-howto for using earlyprintk=dbgp")
    - x86/entry_64.txt was added by commit 8b4777a4b50c ("x86-64: Document
    some of entry_64.S")
    - x86/pat.txt was added by commit d27554d874c7 ("x86: PAT
    documentation")

    Moved files
    - arm/kernel_user_helpers.txt was moved out of arch/arm/kernel by
    commit 37b8304642c7 ("ARM: kuser: move interface documentation out of
    the source code")
    - efi-stub.txt was moved out of x86/ and down into Documentation/ in
    commit 4172fe2f8a47 ("EFI stub documentation updates")
    - laptops/hpfall.c was moved out of hwmon/ and into laptops/ in commit
    efcfed9bad88 ("Move hp_accel to drivers/platform/x86")
    - commit 5616c23ad9cd ("x86: doc: move x86-generic documentation from
    Doc/x86/i386"):
    * x86/usb-legacy-support.txt
    * x86/boot.txt
    * x86/zero_page.txt
    - power/video_extension.txt was moved to acpi in commit 70e66e4df191
    ("ACPI / video: move video_extension.txt to Documentation/acpi")

    Removed files (left in 00-INDEX)
    - memory.txt was removed by commit 00ea8990aadf ("memory.txt: remove
    stray information")
    - gpio.txt was moved to gpio/ in commit fd8e198cfcaa ("Documentation:
    gpiolib: document new interface")
    - networking/DLINK.txt was removed by commit 168e06ae26dd
    ("drivers/net: delete old parallel port de600/de620 drivers")
    - serial/hayes-esp.txt was removed by commit f53a2ade0bb9 ("tty: esp:
    remove broken driver")
    - s390/TAPE was removed by commit 9e280f669308 ("[S390] remove tape
    block docu")
    - vm/locking was removed by commit 57ea8171d2bc ("mm: documentation:
    remove hopelessly out-of-date locking doc")
    - laptops/acer-wmi.txt was remvoed by commit 020036678e81 ("acer-wmi:
    Delete out-of-date documentation")

    Typos/misc issues
    - rpc-server-gss.txt was added as knfsd-rpcgss.txt in commit
    030d794bf498 ("SUNRPC: Use gssproxy upcall for server RPCGSS
    authentication.")
    - commit b88cf73d9278 ("net: add missing entries to
    Documentation/networking/00-INDEX")
    * generic-hdlc.txt was added as generic_hdlc.txt
    * spider_net.txt was added as spider-net.txt
    - w1/master/mxc-w1 was added as mxc_w1 by commit a5fd9139f74c ("w1: add
    1-wire master driver for i.MX27 / i.MX31")
    - s390/zfcpdump.txt was added as zfcpdump by commit 6920c12a407e
    ("[S390] Add Documentation/s390/00-INDEX.")

    Signed-off-by: Henrik Austad
    Reviewed-by: Paul E. McKenney [rcu bits]
    Acked-by: Rob Landley
    Cc: Jiri Kosina
    Cc: Thomas Gleixner
    Cc: Rob Herring
    Cc: David S. Miller
    Cc: Mark Brown
    Cc: "H. Peter Anvin"
    Cc: Ingo Molnar
    Cc: Gleb Natapov
    Cc: Linus Torvalds
    Cc: Len Brown
    Cc: James Bottomley
    Cc: Jean-Christophe Plagniol-Villard
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Henrik Austad
     

28 Jan, 2014

1 commit

  • There are two ways to run a pattern in LP5523.
    One is using legacy sysfs files such as 'enginex_mode','enginex_load' and
    'enginex_leds'. ('x' is from 1 to 3).
    Among them, 'enginex_leds' are used for selecting specific LED channel MUX.
    (MUX means which LEDs are used for running a pattern from LED 1 to 9.)

    The other way is using the firmware interface.
    In this mode, the default LED MUX strings are used.
    In other words, LED MUX is not configurable on the fly.

    This patch enables dynamic LED MUX configuration when the firmware is loaded.
    By accessing the sysfs file 'enginex_leds', the LED channels can be configured.
    To synchronize the operation mode, each engine mode should be set to 'LOAD'.

    The documentation is updated as well.

    Cc: Pali Rohár
    Signed-off-by: Milo Kim
    Signed-off-by: Bryan Wu

    Milo Kim
     

27 Aug, 2013

3 commits

  • Now, all legacy application interfaces are restored.
    Each driver documentation is updated.

    Cc: Pali Rohár
    Signed-off-by: Milo Kim
    Signed-off-by: Bryan Wu

    Milo Kim
     
  • __initdata should be placed between the variable name and equal
    sign for the variable to be placed in the intended section.
    Fix the example.

    Signed-off-by: Sachin Kamat
    Signed-off-by: Bryan Wu

    Sachin Kamat
     
  • LP8501 can drive up to 9 channels like LP5523.
    LEDs can be controlled directly via the I2C and programmable engines are
    supported.

    LP55xx common driver
    LP8501 is one of LP55xx family device, so LP55xx common code are used.
    Chip specific data is defined in the structure, 'lp55xx_device_config'.

    Differences between LP8501 and LP5523
    Different register layout for LED output control and others.
    LP8501 specific feature for separate output power selection.
    LP8501 doesn't support external clock detection.
    Different programming engine data.

    LP8501 specific feature - output power selection
    Output channels are selected by power selection - Vout or Vdd.
    Separate power for VDD1-6 and VDD7-9 are available.
    It is configurable in the platform data.
    To support this feature, LP55xx DT structure and header are changed.
    Device tree binding is updated as well.

    LED pattern data
    Example pattern data is updated in the driver documentation.

    Signed-off-by: Milo Kim
    Signed-off-by: Bryan Wu

    Kim, Milo
     

02 Apr, 2013

2 commits

  • Now LP55xx provides automatic clock detection API, lp55xx_is_extclk_used().
    The clock configuration can be done by the driver itself.

    (a) Concept
    The default value is set by each driver with clock selection.
    The internal clock selection bit is updated in case that the external clock
    is not detected or clock rate is not 32KHz.

    (b) Change on LP55xx platform data
    The clock configuration is done automatically, so no need to define
    'update_config' in the platform side.
    Correlated information are removed in the documentations and header.

    (c) Definitions moved from header to driver files
    CONFIG register values are moved each driver, LP5521 and LP5562.
    Not necessary definitions are removed also.

    Signed-off-by: Milo(Woogyom) Kim
    Signed-off-by: Bryan Wu

    Kim, Milo
     
  • LP5562 can drive up to 4 channels, RGB and White.
    LEDs can be controlled directly via the led class control interface.

    LP55xx common driver
    LP5562 is one of LP55xx family device, so LP55xx common code are used.
    On the other hand, chip specific configuration is defined in the structure
    'lp55xx_device_config'

    LED pattern data
    LP5562 has also internal program memory which is used for running various LED
    patterns. LP5562 driver supports the firmware interface and the predefined
    pattern data as well.

    LP5562 device attributes: 'led_pattern' and 'engine_mux'
    A 'led_pattern' is an index code which runs the predefined pattern data.
    And 'engine_mux' is updated with the firmware interface is activated.
    Detailed description has been updated in the documentation files,
    'leds-lp55xx.txt' and 'leds-lp5562.txt'.

    Changes on the header file
    LP5562 configurable definitions are added.
    Pattern RGB data is fixed as constant value.
    (No side effect on other devices, LP5521 or LP5523.)

    (cooloney@gmail.com: remove redundant mutex_unlock(). Reported by Dan
    Carpenter )

    Signed-off-by: Milo(Woogyom) Kim
    Signed-off-by: Bryan Wu

    Kim, Milo
     

07 Feb, 2013

1 commit


11 Sep, 2012

1 commit


24 Jul, 2012

2 commits

  • Add driver for BlinkM device to drivers/leds/.
    Add entry to MAINTAINERS file.
    Add documentation in Documentation/leds/.

    A BlinkM is a RGB LED controlled through I2C.

    This driver implements an interface to the LED framework
    and another sysfs group to access the internal options
    of the BlinkM.

    rev6: Use module_i2c_driver().
    rev5: Removed own workqueue in favor of events wq.
    rev4: Fixed comments by Bryan Wu.
    rev3: Fixed issues found by Jonathan Neuschäfer.

    (bryan.wu@canonical.com: remove 2 trailing whitespace)

    Signed-off-by: Jan-Simon Möller
    Signed-off-by: Bryan Wu

    Jan-Simon Möller
     
  • LM3556 :
    The LM3556 is a 4 MHz fixed-frequency synchronous boost
    converter plus 1.5A constant current driver for a high-current white LED.
    Datasheet: www.national.com/ds/LM/LM3556.pdf

    Tested on OMAP4430

    (bryan.wu@canonical.com: use module_i2c_driver() rather than
    lm3556_init/lm3556_exit for code simplicity; fixed some typo
    pointed out by Rob Landley)

    Signed-off-by: G.Shark Jeong
    Reviewed-by: Axel Lin
    Reviewed-by: Kim, Milo
    Acked-by: Rob Landley
    Signed-off-by: Bryan Wu

    G.Shark Jeong