Hello Jacek
Sorry for the late reply.
On Tue, Aug 11, 2015 at 11:37 AM, Jacek Anaszewski
<j.anaszewski@xxxxxxxxxxx> wrote:
struct pca963x_led {
struct pca963x *chip;
- struct work_struct work;
enum led_brightness brightness;
struct led_classdev led_cdev;
int led_num; /* 0 .. 15 potentially */
- enum pca963x_cmd cmd;
char name[32];
u8 gdc;
u8 gfrq;
};
Maybe you want to remove also brightness, gdc and gfrq and pass them
as arguments to the functions.
-static void pca963x_blink_work(struct pca963x_led *pca963x)
+static void pca963x_blink(struct pca963x_led *pca963x)
something like: blink(pca963x, gdc, gfrq)
Big disclaimer: i havent tested it on real hardware. Maybe next week I
can get hold of a board with a pca chip.
BTW: great thing that the work queue is implemented in the core :)