blob: 03722d0c14dc14de253bc203185da4c59503cd99 [file] [log] [blame]
Simon Glass63b17572014-02-26 15:59:23 -07001/*
2 * Copyright (c) 2013 Google, Inc
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#ifndef __DM_DEMO_H
8#define __DM_DEMO_H
9
10#include <dm.h>
11
12/**
13 * struct dm_demo_pdata - configuration data for demo instance
14 *
15 * @colour: Color of the demo
16 * @sides: Numbers of sides
17 * @default_char: Default ASCII character to output (65 = 'A')
18 */
19struct dm_demo_pdata {
20 const char *colour;
21 int sides;
22 int default_char;
23};
24
25struct demo_ops {
Heiko Schocherb74fcb42014-05-22 12:43:05 +020026 int (*hello)(struct udevice *dev, int ch);
27 int (*status)(struct udevice *dev, int *status);
Simon Glass120834d2015-01-05 20:05:31 -070028 int (*set_light)(struct udevice *dev, int light);
29 int (*get_light)(struct udevice *dev);
Simon Glass63b17572014-02-26 15:59:23 -070030};
31
Heiko Schocherb74fcb42014-05-22 12:43:05 +020032int demo_hello(struct udevice *dev, int ch);
33int demo_status(struct udevice *dev, int *status);
Simon Glass120834d2015-01-05 20:05:31 -070034int demo_set_light(struct udevice *dev, int light);
35int demo_get_light(struct udevice *dev);
Simon Glass63b17572014-02-26 15:59:23 -070036int demo_list(void);
37
Heiko Schocherb74fcb42014-05-22 12:43:05 +020038int demo_parse_dt(struct udevice *dev);
Simon Glass63b17572014-02-26 15:59:23 -070039
40#endif