Add the possibility to pass parameter to device_init
and add a device_type_t used to know what parameter to pass to init when needed.
This commit is contained in:
parent
f45995167e
commit
d6a2a77303
@ -10,15 +10,32 @@
|
||||
#ifndef __DEVICE_H__
|
||||
#define __DEVICE_H__
|
||||
|
||||
typedef void (*device_init)(void);
|
||||
typedef void (*device_init)(void *param);
|
||||
typedef void (*device_reset)(void);
|
||||
typedef void (*device_free)(void);
|
||||
|
||||
typedef enum device_type_t
|
||||
{
|
||||
DT_INTERRUPT_CONTROLLER,
|
||||
DT_GPU,
|
||||
DT_BUTTONS,
|
||||
DT_DMA,
|
||||
DT_LUXOR,
|
||||
DT_AUDIO,
|
||||
DT_SYSTEM,
|
||||
DT_RTC,
|
||||
DT_RS232,
|
||||
DT_EEPROM,
|
||||
DT_DEBUG,
|
||||
} device_type_t;
|
||||
|
||||
typedef struct device_t
|
||||
{
|
||||
device_init *init;
|
||||
device_reset *reset;
|
||||
device_free *free;
|
||||
device_init init; /***< Function called to init the device */
|
||||
device_reset reset; /***< Function called to reset the device */
|
||||
device_free free; /***< Function called to deinit the device */
|
||||
device_type_t deviceType; /***< Used to tell the type of device, could be useful to pass the
|
||||
* right parameters to init */
|
||||
} device_t;
|
||||
|
||||
#endif /* NEWOSWAN_DEVICE_H */
|
||||
#endif /* __DEVICE_H__ */
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user