From: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
To: Jacek Anaszewski <j.anaszewski@samsung.com>
Cc: stewart@linux.vnet.ibm.com, cooloney@gmail.com,
rpurdie@rpsys.net, linuxppc-dev@lists.ozlabs.org,
linux-leds@vger.kernel.org, khandual@linux.vnet.ibm.com
Subject: Re: [PATCH v2 2/2] leds/powernv: Add driver for PowerNV platform
Date: Mon, 20 Apr 2015 18:04:08 +0530 [thread overview]
Message-ID: <5534F240.3020907@linux.vnet.ibm.com> (raw)
In-Reply-To: <5534E6D9.6060804@samsung.com>
On 04/20/2015 05:15 PM, Jacek Anaszewski wrote:
> Hi Vasant,
>
> I'd like to clarify some details regarding your explanation.
>
> On 04/15/2015 12:15 PM, Vasant Hegde wrote:
> [...]
>>>>
>>>> In Power Systems LEDs are overloaded (meaning same LED is used for identify and
>>>> fault depending on their state --- blinking = identify and solid = fault).
>>>> Hence here append LED type info.
>>>
>>> The label could be composed of segments and an ordinal number as
>>> labels have to be unique, e.g. attn_ident_0, attn_ident_1.
>>> The segments would have to be parsed by the driver to discover
>>> all the LED's available modes.
>>>
>>> nitpicking: identify is a verb and is not a proper name for the LED.
>>> Could you describe the purpose of this mode, so that we could come
>>> up with a better name?
>>
>> Each component (Field Replacement Unit) will have service indicator (LEDS) which
>> can have below states :
>> - OFF : no action
>> - Identify: blinking state (user can use this state to identify particular
>> component).
>> In Power Systems world we call it as "identify" indicator.. Hence I
>> retained same name here.
>> How about just "ident" ?
>> - fault : solid state (when component goes bad, LED goes to solid state)
>> Note that our FW is capable of isolating some of the issues and it can turn
>> on LEDs without OS
>> interference.
>>
>> We have one more System level LED (System Attention Indicator).. This LED has
>> two states:
>> - OFF : Everything is fine
>> - ON : Some component has issues and needs attention.
>
> We have three modes:
> - identify - blinking
> - fault - solid
> - attention indicator - solid
>
> How does LED operation differ for fault and attention modes?
> Does a LED have different intensity?
Jacek,
System Attention LED is special LED and its single LED available/system. where
as identify and fault is applicable to all field replaceable units in the system..
So Typical server will have
1 System Attention LED
N Identify/fault LED (N = Field Replaceable Unit).
Apart from above two, we do have two more LEDs/Enclosure (external visible LEDs)
- Enclosure Identify
- Enclosure fault
These LEDs reflects state of all Field Replaceable Units (FRU) inside this
enclosure
If any of FRU state is ON, this will become ON
Also we can independently enable this LED!!
But from kernel side implementation point of view, I just treat this as
another LED.. as our platform code (OPAL firmware) takes care of roll up etc.
Now our LED can operate in two mode (Depending on our service model, typically
one/two socket servers are Light Path mode, whereas high end servers are Guiding
Light Mode).
1. Guiding Light
Only Identify indicator is support.. Fault is not supported
System attention indicator is used to point there is some problem in system
and need attention
2. Light Path mode
Both identify and fault indicator is supported ..
Fault is ON whenever some component is faulty
System attention indicator is used to point that FW/OS is not able to
isolate the problem and needs user to look into serviceable event (like syslog/
our agents like ESA which analyzes and reports events)
Handling LED states :
- Though physically single LED is overloaded for identify and fault, logically
(FW/OS level) we treat them as separate LED.
- We can enable both fault and identify simultaneously.
- Hardware decides physical LED state (rule : identify has priority over fault).
ex: Say location code 'X',
Identify = ON, fault = ON , state of 'X' = identify (blinking)
Identify = OFF, fault = ON, state of 'X' = fault (solid)
Identify = OFF, fault = ON, state of 'X' = identify (blinking)
Identify = OFF, fault = OFF , state of 'X' = OFF
Since we have various above combinations, I thought its best to have separate
class dev for each individual LEDs. That way we keep everything simple and let
firmware handle all complexities.
Hope this clarifies.
I just posted v3 where I addressed your comments.
https://lists.ozlabs.org/pipermail/linuxppc-dev/2015-April/127702.html
Please let me know if you have any comments/suggestions.
-Vasant
>
> I'd rather avoid creating separate LED class devices for each mode.
>
> For blinking we could use existing timer trigger.
>
next prev parent reply other threads:[~2015-04-20 12:34 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-20 11:02 [PATCH v2 0/2] LED interface for PowerNV platform Vasant Hegde
2015-03-20 11:03 ` [PATCH v2 1/2] powerpc/powernv: Add OPAL interfaces for accessing and modifying system LED states Vasant Hegde
2015-03-20 11:04 ` [PATCH v2 2/2] leds/powernv: Add driver for PowerNV platform Vasant Hegde
2015-03-25 5:21 ` Benjamin Herrenschmidt
2015-04-14 5:40 ` Vasant Hegde
2015-04-14 15:20 ` Jacek Anaszewski
2015-04-15 6:26 ` Vasant Hegde
[not found] ` <552E2480.9060102@samsung.com>
2015-04-15 10:15 ` Vasant Hegde
[not found] ` <552E63D2.4070209@samsung.com>
2015-04-16 6:52 ` Vasant Hegde
2015-04-16 8:51 ` Jacek Anaszewski
2015-04-16 10:26 ` Vasant Hegde
2015-04-16 11:34 ` Jacek Anaszewski
2015-04-20 7:29 ` Jacek Anaszewski
2015-04-20 11:45 ` Jacek Anaszewski
2015-04-20 12:34 ` Vasant Hegde [this message]
2015-04-20 15:20 ` Jacek Anaszewski
2015-04-20 15:53 ` Vasant Hegde
2015-04-15 18:50 ` Stewart Smith
2015-04-16 5:07 ` Vasant Hegde
2015-04-21 23:03 ` Stewart Smith
-- strict thread matches above, loose matches on Subject: below --
2015-04-22 21:45 Jacek Anaszewski
2015-04-23 5:25 ` Vasant Hegde
2015-04-23 14:13 ` Jacek Anaszewski
2015-04-24 4:18 ` Stewart Smith
2015-04-24 10:16 ` Jacek Anaszewski
2015-04-28 6:59 ` Stewart Smith
2015-04-28 9:10 ` Jacek Anaszewski
2015-04-24 5:30 ` Vasant Hegde
2015-04-24 10:15 ` Jacek Anaszewski
2015-04-26 22:08 ` Benjamin Herrenschmidt
2015-04-27 11:15 ` Jacek Anaszewski
2015-04-26 22:07 ` Benjamin Herrenschmidt
2015-04-27 7:24 ` Jacek Anaszewski
2015-04-27 9:53 ` Benjamin Herrenschmidt
2015-04-27 11:15 ` Jacek Anaszewski
2015-04-27 13:47 ` Vasant Hegde
2015-04-28 11:06 ` Vasant Hegde
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5534F240.3020907@linux.vnet.ibm.com \
--to=hegdevasant@linux.vnet.ibm.com \
--cc=cooloney@gmail.com \
--cc=j.anaszewski@samsung.com \
--cc=khandual@linux.vnet.ibm.com \
--cc=linux-leds@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=rpurdie@rpsys.net \
--cc=stewart@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).