@@ -88,72 +88,6 @@ struct is31fl32xx_chipdef {
8888 int (* sw_shutdown_func )(struct is31fl32xx_priv * priv , bool enable );
8989};
9090
91- static const struct is31fl32xx_chipdef is31fl3236_cdef = {
92- .channels = 36 ,
93- .shutdown_reg = 0x00 ,
94- .pwm_update_reg = 0x25 ,
95- .global_control_reg = 0x4a ,
96- .reset_reg = 0x4f ,
97- .output_frequency_setting_reg = IS31FL32XX_REG_NONE ,
98- .pwm_register_base = 0x01 ,
99- .led_control_register_base = 0x26 ,
100- .enable_bits_per_led_control_register = 1 ,
101- };
102-
103- static const struct is31fl32xx_chipdef is31fl3236a_cdef = {
104- .channels = 36 ,
105- .shutdown_reg = 0x00 ,
106- .pwm_update_reg = 0x25 ,
107- .global_control_reg = 0x4a ,
108- .reset_reg = 0x4f ,
109- .output_frequency_setting_reg = 0x4b ,
110- .pwm_register_base = 0x01 ,
111- .led_control_register_base = 0x26 ,
112- .enable_bits_per_led_control_register = 1 ,
113- };
114-
115- static const struct is31fl32xx_chipdef is31fl3235_cdef = {
116- .channels = 28 ,
117- .shutdown_reg = 0x00 ,
118- .pwm_update_reg = 0x25 ,
119- .global_control_reg = 0x4a ,
120- .reset_reg = 0x4f ,
121- .output_frequency_setting_reg = IS31FL32XX_REG_NONE ,
122- .pwm_register_base = 0x05 ,
123- .led_control_register_base = 0x2a ,
124- .enable_bits_per_led_control_register = 1 ,
125- };
126-
127- static const struct is31fl32xx_chipdef is31fl3218_cdef = {
128- .channels = 18 ,
129- .shutdown_reg = 0x00 ,
130- .pwm_update_reg = 0x16 ,
131- .global_control_reg = IS31FL32XX_REG_NONE ,
132- .reset_reg = 0x17 ,
133- .output_frequency_setting_reg = IS31FL32XX_REG_NONE ,
134- .pwm_register_base = 0x01 ,
135- .led_control_register_base = 0x13 ,
136- .enable_bits_per_led_control_register = 6 ,
137- };
138-
139- static int is31fl3216_reset (struct is31fl32xx_priv * priv );
140- static int is31fl3216_software_shutdown (struct is31fl32xx_priv * priv ,
141- bool enable );
142- static const struct is31fl32xx_chipdef is31fl3216_cdef = {
143- .channels = 16 ,
144- .shutdown_reg = IS31FL32XX_REG_NONE ,
145- .pwm_update_reg = 0xB0 ,
146- .global_control_reg = IS31FL32XX_REG_NONE ,
147- .reset_reg = IS31FL32XX_REG_NONE ,
148- .output_frequency_setting_reg = IS31FL32XX_REG_NONE ,
149- .pwm_register_base = 0x10 ,
150- .pwm_registers_reversed = true,
151- .led_control_register_base = 0x01 ,
152- .enable_bits_per_led_control_register = 8 ,
153- .reset_func = is31fl3216_reset ,
154- .sw_shutdown_func = is31fl3216_software_shutdown ,
155- };
156-
15791static int is31fl32xx_write (struct is31fl32xx_priv * priv , u8 reg , u8 val )
15892{
15993 int ret ;
@@ -435,6 +369,68 @@ static int is31fl32xx_parse_dt(struct device *dev,
435369
436370 return 0 ;
437371}
372+ static const struct is31fl32xx_chipdef is31fl3236_cdef = {
373+ .channels = 36 ,
374+ .shutdown_reg = 0x00 ,
375+ .pwm_update_reg = 0x25 ,
376+ .global_control_reg = 0x4a ,
377+ .reset_reg = 0x4f ,
378+ .output_frequency_setting_reg = IS31FL32XX_REG_NONE ,
379+ .pwm_register_base = 0x01 ,
380+ .led_control_register_base = 0x26 ,
381+ .enable_bits_per_led_control_register = 1 ,
382+ };
383+
384+ static const struct is31fl32xx_chipdef is31fl3236a_cdef = {
385+ .channels = 36 ,
386+ .shutdown_reg = 0x00 ,
387+ .pwm_update_reg = 0x25 ,
388+ .global_control_reg = 0x4a ,
389+ .reset_reg = 0x4f ,
390+ .output_frequency_setting_reg = 0x4b ,
391+ .pwm_register_base = 0x01 ,
392+ .led_control_register_base = 0x26 ,
393+ .enable_bits_per_led_control_register = 1 ,
394+ };
395+
396+ static const struct is31fl32xx_chipdef is31fl3235_cdef = {
397+ .channels = 28 ,
398+ .shutdown_reg = 0x00 ,
399+ .pwm_update_reg = 0x25 ,
400+ .global_control_reg = 0x4a ,
401+ .reset_reg = 0x4f ,
402+ .output_frequency_setting_reg = IS31FL32XX_REG_NONE ,
403+ .pwm_register_base = 0x05 ,
404+ .led_control_register_base = 0x2a ,
405+ .enable_bits_per_led_control_register = 1 ,
406+ };
407+
408+ static const struct is31fl32xx_chipdef is31fl3218_cdef = {
409+ .channels = 18 ,
410+ .shutdown_reg = 0x00 ,
411+ .pwm_update_reg = 0x16 ,
412+ .global_control_reg = IS31FL32XX_REG_NONE ,
413+ .reset_reg = 0x17 ,
414+ .output_frequency_setting_reg = IS31FL32XX_REG_NONE ,
415+ .pwm_register_base = 0x01 ,
416+ .led_control_register_base = 0x13 ,
417+ .enable_bits_per_led_control_register = 6 ,
418+ };
419+
420+ static const struct is31fl32xx_chipdef is31fl3216_cdef = {
421+ .channels = 16 ,
422+ .shutdown_reg = IS31FL32XX_REG_NONE ,
423+ .pwm_update_reg = 0xB0 ,
424+ .global_control_reg = IS31FL32XX_REG_NONE ,
425+ .reset_reg = IS31FL32XX_REG_NONE ,
426+ .output_frequency_setting_reg = IS31FL32XX_REG_NONE ,
427+ .pwm_register_base = 0x10 ,
428+ .pwm_registers_reversed = true,
429+ .led_control_register_base = 0x01 ,
430+ .enable_bits_per_led_control_register = 8 ,
431+ .reset_func = is31fl3216_reset ,
432+ .sw_shutdown_func = is31fl3216_software_shutdown ,
433+ };
438434
439435static const struct of_device_id of_is31fl32xx_match [] = {
440436 { .compatible = "issi,is31fl3236" , .data = & is31fl3236_cdef , },
0 commit comments