Lines Matching refs:powernv_led
80 static void powernv_led_set(struct powernv_led_data *powernv_led, in powernv_led_set() argument
87 struct device *dev = powernv_led->cdev.dev; in powernv_led_set()
88 struct powernv_led_common *powernv_led_common = powernv_led->common; in powernv_led_set()
92 led_mask = OPAL_SLOT_LED_STATE_ON << powernv_led->led_type; in powernv_led_set()
105 rc = opal_leds_set_ind(token, powernv_led->loc_code, in powernv_led_set()
109 __func__, powernv_led->loc_code, rc); in powernv_led_set()
134 static enum led_brightness powernv_led_get(struct powernv_led_data *powernv_led) in powernv_led_get() argument
139 struct device *dev = powernv_led->cdev.dev; in powernv_led_get()
140 struct powernv_led_common *powernv_led_common = powernv_led->common; in powernv_led_get()
147 rc = opal_leds_get_ind(powernv_led->loc_code, in powernv_led_get()
159 if (!((led_mask >> powernv_led->led_type) & OPAL_SLOT_LED_STATE_ON)) { in powernv_led_get()
161 __func__, powernv_led->cdev.name); in powernv_led_get()
166 if ((led_value >> powernv_led->led_type) & OPAL_SLOT_LED_STATE_ON) in powernv_led_get()
179 struct powernv_led_data *powernv_led = in powernv_brightness_set() local
181 struct powernv_led_common *powernv_led_common = powernv_led->common; in powernv_brightness_set()
188 powernv_led_set(powernv_led, value); in powernv_brightness_set()
195 struct powernv_led_data *powernv_led = in powernv_brightness_get() local
198 return powernv_led_get(powernv_led); in powernv_brightness_get()
206 struct powernv_led_data *powernv_led, in powernv_led_create() argument
212 powernv_led->led_type = powernv_get_led_type(led_type_desc); in powernv_led_create()
213 if (powernv_led->led_type == -1) { in powernv_led_create()
220 powernv_led->cdev.name = devm_kasprintf(dev, GFP_KERNEL, "%s:%s", in powernv_led_create()
221 powernv_led->loc_code, in powernv_led_create()
223 if (!powernv_led->cdev.name) { in powernv_led_create()
230 powernv_led->cdev.brightness_set = powernv_brightness_set; in powernv_led_create()
231 powernv_led->cdev.brightness_get = powernv_brightness_get; in powernv_led_create()
232 powernv_led->cdev.brightness = LED_OFF; in powernv_led_create()
233 powernv_led->cdev.max_brightness = LED_FULL; in powernv_led_create()
236 rc = devm_led_classdev_register(dev, &powernv_led->cdev); in powernv_led_create()
239 __func__, powernv_led->cdev.name); in powernv_led_create()
254 struct powernv_led_data *powernv_led; in powernv_led_classdev() local
263 powernv_led = devm_kzalloc(dev, sizeof(*powernv_led), in powernv_led_classdev()
265 if (!powernv_led) { in powernv_led_classdev()
270 powernv_led->common = powernv_led_common; in powernv_led_classdev()
271 powernv_led->loc_code = (char *)np->name; in powernv_led_classdev()
273 rc = powernv_led_create(dev, powernv_led, cur); in powernv_led_classdev()