Choco OS  V.0.16.9.0
Join to the chocolate world
oc_driverman.h
Go to the documentation of this file.
1 
28 #ifndef INC_DRIVERS_OC_DRIVERMAN_H_
29 #define INC_DRIVERS_OC_DRIVERMAN_H_
30 
31 #include <oc_errors.h>
32 #include <oc_list.h>
33 #include <oc_driver.h>
34 #include <oc_system_cfg.h>
35 
36 // List of drivers
37 #include <oc_gpio.h>
38 #include <oc_uart.h>
39 #include <oc_timer.h>
40 #include <oc_led.h>
41 #include <oc_pwm.h>
42 #include <oc_lcdtft.h>
43 #include <oc_fmc.h>
44 #include <oc_fmc_chips.h>
45 #include <oc_eth.h>
46 #include <oc_eth_chips.h>
47 
53 #define _________________________________________TYPES_SECTION______________________________________________________________________________
54 
57 typedef struct
58 {
59  char Name[CFG_BYTES_MAX_CONFIGURATION_NAME_SIZE];
60  oC_Driver_t Driver;
61  void * Config;
62  void * Context;
63  bool Configured;
65 
66 #undef _________________________________________TYPES_SECTION______________________________________________________________________________
67 
74 #define _________________________________________FUNCTIONS_SECTION__________________________________________________________________________
75 
78 extern oC_ErrorCode_t oC_DriverMan_TurnOn ( void );
79 extern oC_ErrorCode_t oC_DriverMan_TurnOff ( void );
80 extern oC_List(oC_Driver_t) oC_DriverMan_GetList ( void );
81 extern oC_ErrorCode_t oC_DriverMan_AddDriver ( oC_Driver_t Driver );
82 extern oC_ErrorCode_t oC_DriverMan_RemoveDriver ( oC_Driver_t Driver );
83 extern oC_Driver_t oC_DriverMan_GetDriver ( const char * FileName );
84 extern void oC_DriverMan_TurnOnAllDrivers ( void );
85 extern void oC_DriverMan_TurnOffAllDrivers ( void );
86 extern oC_ErrorCode_t oC_DriverMan_AddAutoConfiguration ( const char * Name , oC_Driver_t Driver , const void * Config );
87 extern oC_ErrorCode_t oC_DriverMan_RemoveAutoConfiguration ( const char * Name );
88 extern oC_ErrorCode_t oC_DriverMan_ReadAutoConfiguration ( const char * Name , oC_AutoConfiguration_t * outAutoConfiguration );
89 extern void oC_DriverMan_ConfigureAllDrivers ( void );
90 extern oC_ErrorCode_t oC_DriverMan_ReadAutoConfigurationList ( oC_List(oC_AutoConfiguration_t*) * outList );
91 
92 #undef _________________________________________FUNCTIONS_SECTION__________________________________________________________________________
93 
95 #endif /* INC_DRIVERS_OC_DRIVERMAN_H_ */
List of defined Ethernet chips.
The file with interface for the timer driver.
The file with interface for FMC driver.
The file with interface for the GPIO driver.
The file with interface for LCDTFT driver.
The file with interface for the PWM driver.
The file with prototypes for chips.
The file with interface for driver creating.
The file with list library.
The file with interface for the LED driver.
The file with interface for UART driver.
The file with interface for ETH driver.