charlcd.h (976e3645923bdd2fe7893aae33fd7a21098bfb28) charlcd.h (66ce7d5c1e124b497f45aead50df1dc3c2873382)
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Character LCD driver for Linux
4 *
5 * Copyright (C) 2000-2008, Willy Tarreau <w@1wt.eu>
6 * Copyright (C) 2016-2017 Glider bvba
7 */
8
9#ifndef _CHARLCD_H
10#define _CHARLCD_H
11
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Character LCD driver for Linux
4 *
5 * Copyright (C) 2000-2008, Willy Tarreau <w@1wt.eu>
6 * Copyright (C) 2016-2017 Glider bvba
7 */
8
9#ifndef _CHARLCD_H
10#define _CHARLCD_H
11
12enum charlcd_onoff {
13 CHARLCD_OFF = 0,
14 CHARLCD_ON,
15};
16
12struct charlcd {
13 const struct charlcd_ops *ops;
14 const unsigned char *char_conv; /* Optional */
15
16 int ifwidth; /* 4-bit or 8-bit (default) */
17 int height;
18 int width;
19 int bwidth; /* Default set by charlcd_alloc() */

--- 5 unchanged lines hidden (view full) ---

25struct charlcd_ops {
26 /* Required */
27 void (*write_cmd)(struct charlcd *lcd, int cmd);
28 void (*write_data)(struct charlcd *lcd, int data);
29
30 /* Optional */
31 void (*write_cmd_raw4)(struct charlcd *lcd, int cmd); /* 4-bit only */
32 void (*clear_fast)(struct charlcd *lcd);
17struct charlcd {
18 const struct charlcd_ops *ops;
19 const unsigned char *char_conv; /* Optional */
20
21 int ifwidth; /* 4-bit or 8-bit (default) */
22 int height;
23 int width;
24 int bwidth; /* Default set by charlcd_alloc() */

--- 5 unchanged lines hidden (view full) ---

30struct charlcd_ops {
31 /* Required */
32 void (*write_cmd)(struct charlcd *lcd, int cmd);
33 void (*write_data)(struct charlcd *lcd, int data);
34
35 /* Optional */
36 void (*write_cmd_raw4)(struct charlcd *lcd, int cmd); /* 4-bit only */
37 void (*clear_fast)(struct charlcd *lcd);
33 void (*backlight)(struct charlcd *lcd, int on);
38 void (*backlight)(struct charlcd *lcd, enum charlcd_onoff on);
34};
35
36struct charlcd *charlcd_alloc(unsigned int drvdata_size);
37void charlcd_free(struct charlcd *lcd);
38
39int charlcd_register(struct charlcd *lcd);
40int charlcd_unregister(struct charlcd *lcd);
41
42void charlcd_poke(struct charlcd *lcd);
43
44#endif /* CHARLCD_H */
39};
40
41struct charlcd *charlcd_alloc(unsigned int drvdata_size);
42void charlcd_free(struct charlcd *lcd);
43
44int charlcd_register(struct charlcd *lcd);
45int charlcd_unregister(struct charlcd *lcd);
46
47void charlcd_poke(struct charlcd *lcd);
48
49#endif /* CHARLCD_H */