Hi Peter, > >>> + >>> +/** >>> + * struct pmic8058_led - per led data >>> + * @name - name of the led >>> + * @default_trigger - default trigger which needs to e attached >>> + * @max_brightness - maximum brightness level supported by the led >>> + * @id - supported led id >>> + */ >>> +struct pmic8058_led { >>> + const char *name; >>> + const char *default_trigger; >>> + unsigned max_brightness; >> Should max_brightness not rather be hardcoded in the driver? As far as I can tell it >> depend on the hardware and is 4 bits wide for flash and bl leds and 5 bits for the >> others. >>> + int id; >> >> enum pmic8058_leds instead of int > > Ack. > >>> +struct pmic8058_leds_platform_data { >>> + int num_leds; >> size_t > > Ack. > >>> + struct pmic8058_led *leds; >>> +}; >> >> >> If max_brightness is hardcoded in the driver you can reuse "struct led_info" and >> "struct struct led_platform_data" instead of adding your own structs. > I couldn't remove these pmic8058_led structure due to the "enum pmic8058_led id" member info which I need from every led. This can be removed completely only if I abuse the "flags" parameter in struct led_info to pass the led id. Let me know what you think. ---Trilok Soni -- Sent by a consultant of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum. -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html