1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * Copyright (c) 2013 Google, Inc 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #ifndef __DM_DEMO_H 8*4882a593Smuzhiyun #define __DM_DEMO_H 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun #include <dm.h> 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun /** 13*4882a593Smuzhiyun * struct dm_demo_pdata - configuration data for demo instance 14*4882a593Smuzhiyun * 15*4882a593Smuzhiyun * @colour: Color of the demo 16*4882a593Smuzhiyun * @sides: Numbers of sides 17*4882a593Smuzhiyun * @default_char: Default ASCII character to output (65 = 'A') 18*4882a593Smuzhiyun */ 19*4882a593Smuzhiyun struct dm_demo_pdata { 20*4882a593Smuzhiyun const char *colour; 21*4882a593Smuzhiyun int sides; 22*4882a593Smuzhiyun int default_char; 23*4882a593Smuzhiyun }; 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun struct demo_ops { 26*4882a593Smuzhiyun int (*hello)(struct udevice *dev, int ch); 27*4882a593Smuzhiyun int (*status)(struct udevice *dev, int *status); 28*4882a593Smuzhiyun int (*set_light)(struct udevice *dev, int light); 29*4882a593Smuzhiyun int (*get_light)(struct udevice *dev); 30*4882a593Smuzhiyun }; 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun int demo_hello(struct udevice *dev, int ch); 33*4882a593Smuzhiyun int demo_status(struct udevice *dev, int *status); 34*4882a593Smuzhiyun int demo_set_light(struct udevice *dev, int light); 35*4882a593Smuzhiyun int demo_get_light(struct udevice *dev); 36*4882a593Smuzhiyun int demo_list(void); 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun int demo_parse_dt(struct udevice *dev); 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun #endif 41