Lines Matching refs:sled
52 struct syscon_led *sled = in syscon_led_set() local
59 sled->state = false; in syscon_led_set()
61 val = sled->mask; in syscon_led_set()
62 sled->state = true; in syscon_led_set()
65 ret = regmap_update_bits(sled->map, sled->offset, sled->mask, val); in syscon_led_set()
67 dev_err(sled->cdev.dev, "error updating LED status\n"); in syscon_led_set()
76 struct syscon_led *sled; in syscon_led_probe() local
91 sled = devm_kzalloc(dev, sizeof(*sled), GFP_KERNEL); in syscon_led_probe()
92 if (!sled) in syscon_led_probe()
95 sled->map = map; in syscon_led_probe()
97 if (of_property_read_u32(np, "offset", &sled->offset)) in syscon_led_probe()
99 if (of_property_read_u32(np, "mask", &sled->mask)) in syscon_led_probe()
101 sled->cdev.name = in syscon_led_probe()
103 sled->cdev.default_trigger = in syscon_led_probe()
111 ret = regmap_read(map, sled->offset, &val); in syscon_led_probe()
114 sled->state = !!(val & sled->mask); in syscon_led_probe()
116 sled->state = true; in syscon_led_probe()
117 ret = regmap_update_bits(map, sled->offset, in syscon_led_probe()
118 sled->mask, in syscon_led_probe()
119 sled->mask); in syscon_led_probe()
123 sled->state = false; in syscon_led_probe()
124 ret = regmap_update_bits(map, sled->offset, in syscon_led_probe()
125 sled->mask, 0); in syscon_led_probe()
130 sled->cdev.brightness_set = syscon_led_set; in syscon_led_probe()
132 ret = led_classdev_register(dev, &sled->cdev); in syscon_led_probe()
136 platform_set_drvdata(pdev, sled); in syscon_led_probe()
137 dev_info(dev, "registered LED %s\n", sled->cdev.name); in syscon_led_probe()
144 struct syscon_led *sled = platform_get_drvdata(pdev); in syscon_led_remove() local
146 led_classdev_unregister(&sled->cdev); in syscon_led_remove()
148 regmap_update_bits(sled->map, sled->offset, sled->mask, 0); in syscon_led_remove()