Lines Matching refs:led

78 	struct bcm6358_led *led =  in bcm6358_led_set()  local
82 spin_lock_irqsave(led->lock, flags); in bcm6358_led_set()
83 bcm6358_led_busy(led->mem); in bcm6358_led_set()
84 val = bcm6358_led_read(led->mem + BCM6358_REG_MODE); in bcm6358_led_set()
85 if ((led->active_low && value == LED_OFF) || in bcm6358_led_set()
86 (!led->active_low && value != LED_OFF)) in bcm6358_led_set()
87 val |= BIT(led->pin); in bcm6358_led_set()
89 val &= ~(BIT(led->pin)); in bcm6358_led_set()
90 bcm6358_led_write(led->mem + BCM6358_REG_MODE, val); in bcm6358_led_set()
91 spin_unlock_irqrestore(led->lock, flags); in bcm6358_led_set()
97 struct bcm6358_led *led; in bcm6358_led() local
101 led = devm_kzalloc(dev, sizeof(*led), GFP_KERNEL); in bcm6358_led()
102 if (!led) in bcm6358_led()
105 led->pin = reg; in bcm6358_led()
106 led->mem = mem; in bcm6358_led()
107 led->lock = lock; in bcm6358_led()
110 led->active_low = true; in bcm6358_led()
112 led->cdev.name = of_get_property(nc, "label", NULL) ? : nc->name; in bcm6358_led()
113 led->cdev.default_trigger = of_get_property(nc, in bcm6358_led()
119 led->cdev.brightness = LED_FULL; in bcm6358_led()
122 val = bcm6358_led_read(led->mem + BCM6358_REG_MODE); in bcm6358_led()
123 val &= BIT(led->pin); in bcm6358_led()
124 if ((led->active_low && !val) || in bcm6358_led()
125 (!led->active_low && val)) in bcm6358_led()
126 led->cdev.brightness = LED_FULL; in bcm6358_led()
128 led->cdev.brightness = LED_OFF; in bcm6358_led()
130 led->cdev.brightness = LED_OFF; in bcm6358_led()
133 led->cdev.brightness = LED_OFF; in bcm6358_led()
136 bcm6358_led_set(&led->cdev, led->cdev.brightness); in bcm6358_led()
138 led->cdev.brightness_set = bcm6358_led_set; in bcm6358_led()
140 rc = led_classdev_register(dev, &led->cdev); in bcm6358_led()
144 dev_dbg(dev, "registered LED %s\n", led->cdev.name); in bcm6358_led()