summaryrefslogtreecommitdiffstats
path: root/sys/dev/led/led.c
Commit message (Collapse)AuthorAgeFilesLines
* This implements default-state support as described in:ganbold2015-05-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://www.kernel.org/doc/Documentation/devicetree/bindings/leds/leds-gpio.txt Without this booting the VSATV102 causes the blue "working" led to turn off when the kernel starts up. With this the led (which is turned on by the firmware) stays on since that's the default state specified in the FDT. Expanded the meaning of the led_create_state state parameter in order to implement support for "keep". The original values were: == 0 Off != 0 On The new values are: == -1 don't change / keep current setting == 0 Off != -1 && != 0 On This should have no effect on acpi_asus_attach which only calls led_create_state with state set to 1. Updated acpi_ibm_attach in order to avoid surprises. Differential Revision: https://reviews.freebsd.org/D2615 Submitted by: John Wehle Reviewed by: gonzo, loos
* MFcalloutng:mav2013-02-191-8/+13
| | | | | Make led(4) fire callouts at 10Hz only when there is at least one LED that is requested to blink. Do not fire if all LEDs are static (usual case).
* MFgraid/head r218174:mav2011-03-241-64/+92
| | | | Add simple in-kernel API for controlling leds.
* Fix an incorrect use of sbuf_overflowed() after a call to sbuf_finish().mdf2010-09-091-7/+3
|
* (S)LIST_HEAD_INITIALIZER takes a (S)LIST_HEAD as an argument.antoine2009-12-281-1/+1
| | | | | | | | | Fix some wrong usages. Note: this does not affect generated binaries as this argument is not used. PR: 137213 Submitted by: Eygene Ryabinkin (initial version) MFC after: 1 month
* Remove unit2minor() use from kernel code.ed2008-09-261-1/+1
| | | | | | | | | | | | | | | When I changed kern_conf.c three months ago I made device unit numbers equal to (unneeded) device minor numbers. We used to require bitshifting, because there were eight bits in the middle that were reserved for a device major number. Not very long after I turned dev2unit(), minor(), unit2minor() and minor2unit() into macro's. The unit2minor() and minor2unit() macro's were no-ops. We'd better not remove these four macro's from the kernel, because there is a lot of (external) code that may still depend on them. For now it's harmless to remove all invocations of unit2minor() and minor2unit(). Reviewed by: kib
* Add sbuf_new_auto as a shortcut for the very common case of creating ades2008-08-091-1/+1
| | | | | | | completely dynamic sbuf. Obtained from: Varnish MFC after: 2 weeks
* Remove the distinction between device minor and unit numbers.ed2008-05-291-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Even though we got rid of device major numbers some time ago, device drivers still need to provide unique device minor numbers to make_dev(). These numbers are only used inside the kernel. They are not related to device major and minor numbers which are visible in devfs. These are actually based on the inode number of the device. It would eventually be nice to remove minor numbers entirely, but we don't want to be too agressive here. Because the 8-15 bits of the device number field (si_drv0) are still reserved for the major number, there is no 1:1 mapping of the device minor and unit numbers. Because this is now unused, remove the restrictions on these numbers. The MAXMAJOR definition was actually used for two purposes. It was used to convert both the userspace and kernelspace device numbers to their major/minor pair, which is why it is now named UMINORMASK. minor2unit() and unit2minor() have now become useless. Both minor() and dev2unit() now serve the same purpose. We should eventually remove some of them, at least turning them into macro's. If devfs would become completely minor number unaware, we could consider using si_drv0 directly, just like si_drv1 and si_drv2. Approved by: philip (mentor)
* Make it possible to specify an initial state for the LED.phk2007-04-231-1/+7
| | | | | Requested by: Henrik Brix Andersen <henrik@brixandersen.dk> PR: 112008
* Add placeholder mutex argument to new_unrhdr().phk2005-03-071-1/+1
|
* Make a bunch of malloc types static.phk2005-02-101-1/+1
| | | | Found by: src/tools/tools/kernxref
* Better locking.phk2005-01-291-54/+83
| | | | Add 'u' and 'U' "wait for next UTC second" in sequence mode.
* Remove a pointless check.phk2004-07-101-2/+0
|
* Second half of the dev_t cleanup.phk2004-06-171-2/+2
| | | | | | | | | | | The big lines are: NODEV -> NULL NOUDEV -> NODEV udev_t -> dev_t udev2dev() -> findcdev() Various minor adjustments including handling of userland access to kernel space struct cdev etc.
* Do the dreaded s/dev_t/struct cdev */phk2004-06-161-4/+4
| | | | Bump __FreeBSD_version accordingly.
* Fix off by one error.phk2004-05-031-0/+1
|
* Add the ability to avoid repetition of s.... sequences with a '.'phk2004-04-271-7/+11
|
* Device megapatch 4/6:phk2004-02-211-0/+2
| | | | | | | | Introduce d_version field in struct cdevsw, this must always be initialized to D_VERSION. Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing four D_NOGIANT flags and adding 145 D_NEEDGIANT flags.
* Use standard style for cdevsw initialization.phk2004-02-141-2/+2
|
* DUH!phk2003-12-121-10/+16
| | | | | | | Write 100 times for tomorrow: I will never again free(9) a modified pointer. Pointy Hat: yeah, yeah, yeah, can you just put it in the pile over there...
* Correct usage of mtx_init() API. This is not a functional change sincetruckman2003-12-071-1/+1
| | | | | | the code happened to work because MTX_DEF and NULL are both defined as 0. Reviewed by: phk
* Improve semantics of the 'sequence' command to led(4) devices:phk2003-11-271-12/+12
| | | | | | use lowercase for off and upper case for on. Approved by: re@
* Avoid NULL pointer dereference.phk2003-11-231-1/+2
| | | | Approved by: re@
* Get word spacing right in morse mode.phk2003-11-031-0/+2
| | | | Fix a prototype.
* Add a generic LED driver for flashing lamps.phk2003-11-031-0/+258
The hardware driver decides the name under /dev/led and provides the function to turn the lamp on/off. All leds are serviced by a single timeout which runs at a basic rate of hz/10. The LED is controlled by ascii strings as follows. 0 Turn off. 1 Turn on. f Flash: _- f2 Flash: __-- f3 Flash: ___--- f4...f9 etc. d%d Digits. "d12": -__________-_-______________________________ s%s String, roll your own: 'a-j' gives on for (1...10)/10 sec. 'A-J' gives on for (1...10)/10 sec. 'sAaAbBa': _-_--__- m%s Morse '.' dot '-' dash ' ' letter space '\n' word space My mdoc skills do not reach to express that.
OpenPOWER on IntegriCloud