Lines Matching defs:led

28 #define LED_REG(m, led)		(PCA9532_REG_OFFSET(m) + 0x5 + (led >> 2))
29 #define LED_NUM(led) (led & 0x3)
30 #define LED_SHIFT(led) (LED_NUM(led) * 2)
31 #define LED_MASK(led) (0x3 << LED_SHIFT(led))
157 static void pca9532_setled(struct pca9532_led *led)
159 struct i2c_client *client = led->client;
165 reg = i2c_smbus_read_byte_data(client, LED_REG(maxleds, led->id));
166 /* zero led bits */
167 reg = reg & ~LED_MASK(led->id);
169 reg = reg | (led->state << LED_SHIFT(led->id));
170 i2c_smbus_write_byte_data(client, LED_REG(maxleds, led->id), reg);
178 struct pca9532_led *led = ldev_to_led(led_cdev);
181 led->state = PCA9532_OFF;
183 led->state = PCA9532_ON;
185 led->state = PCA9532_PWM0; /* Thecus: hardcode one pwm */
186 err = pca9532_calcpwm(led->client, 0, 0, value);
190 if (led->state == PCA9532_PWM0)
191 pca9532_setpwm(led->client, 0);
192 pca9532_setled(led);
199 struct pca9532_led *led = ldev_to_led(led_cdev);
200 struct i2c_client *client = led->client;
205 /* led subsystem ask us for a blink rate */
217 if (led->state == PCA9532_PWM0)
218 pca9532_setpwm(led->client, 0);
219 pca9532_setled(led);
255 static enum pca9532_state pca9532_getled(struct pca9532_led *led)
257 struct i2c_client *client = led->client;
264 reg = i2c_smbus_read_byte_data(client, LED_REG(maxleds, led->id));
265 ret = (reg & LED_MASK(led->id)) >> LED_SHIFT(led->id);
274 struct pca9532_led *led = &data->leds[offset];
276 if (led->type == PCA9532_TYPE_GPIO)
285 struct pca9532_led *led = &data->leds[offset];
288 led->state = PCA9532_ON;
290 led->state = PCA9532_OFF;
292 pca9532_setled(led);
370 struct pca9532_led *led = &data->leds[i];
372 led->client = client;
373 led->id = i;
374 led->type = pled->type;
375 switch (led->type) {
383 led->state = pca9532_getled(led);
385 led->state = pled->state;
386 led->name = pled->name;
387 led->ldev.name = led->name;
388 led->ldev.default_trigger = pled->default_trigger;
389 led->ldev.brightness = LED_OFF;
390 led->ldev.brightness_set_blocking =
392 led->ldev.blink_set = pca9532_set_blink;
393 err = led_classdev_register(&client->dev, &led->ldev);
397 led->name);
400 pca9532_setled(led);
404 led->state = PCA9532_PWM1;
405 pca9532_setled(led);