4 * Created on: 26.11.2012
11 //#include "hal_gpio_tms570_def.h"
14 typedef struct port_desc_st {
17 uint32_t(*port_getfnc_ptr)(uint32_t* config, uint32_t num_val, uint32_t* values);
18 uint32_t(*port_setfnc_ptr)(uint32_t* config, uint32_t num_val, const uint32_t* values);
21 typedef struct port_def_st {
28 #define PORT_NAME_DINMCU "DINMCU"
29 #define PORT_CFG_DINMCU { PIN_DSC_DIN8, PIN_DSC_DIN9, PIN_DSC_DIN10, PIN_DSC_DIN11, PIN_DSC_DIN12, PIN_DSC_DIN13, PIN_DSC_DIN14, PIN_DSC_DIN15 }
30 #define PORT_NV_DINMCU 8
31 #define PORT_GFC_DINMCU &hal_gio_port_get_val
32 #define PORT_SFC_DINMCU NULL
34 #define PORT_NAME_DINSPI "DINSPI"
35 #define PORT_CFG_DINSPI { 1, 0 }
36 #define PORT_NV_DINSPI 3
37 #define PORT_GFC_DINSPI NULL
38 #define PORT_SFC_DINSPI &hal_spi_port_transfer_command
40 #define PORT_NAME_HOUTDIAG "HOUTDIAG"
41 #define PORT_CFG_HOUTDIAG { PIN_DSC_HOUT1DIAG, PIN_DSC_HOUT2DIAG, PIN_DSC_HOUT3DIAG, PIN_DSC_HOUT4DIAG, PIN_DSC_HOUT5DIAG, PIN_DSC_HOUT6DIAG }
42 #define PORT_NV_HOUTDIAG 6
43 #define PORT_GFC_HOUTDIAG &hal_gio_port_get_val
44 #define PORT_SFC_HOUTDIAG NULL
46 #define PORT_NAME_HOUTIN "HOUTIN"
47 #define PORT_CFG_HOUTIN { PIN_DSC_HOUT1IN, PIN_DSC_HOUT2IN, PIN_DSC_HOUT3IN, PIN_DSC_HOUT4IN, PIN_DSC_HOUT5IN, PIN_DSC_HOUT6IN }
48 #define PORT_NV_HOUTIN 6
49 #define PORT_GFC_HOUTIN &hal_gio_port_get_val
50 #define PORT_SFC_HOUTIN &hal_gio_port_set_val
52 // FIXME Upper layer dependency/coupling
53 // Declared in drv/adc.h
54 extern uint32_t adc_get_port_val(uint32_t* config, uint32_t num_channels, uint32_t* values);
56 #define PORT_HOUTIFBK_CHANNEL_NUM 6
57 #define PORT_NAME_HOUTIFBK "HOUTIFBK"
58 #define PORT_CFG_HOUTIFBK { (uint32_t) adcREG2, adcGROUP1 }
59 #define PORT_NV_HOUTIFBK PORT_HOUTIFBK_CHANNEL_NUM
60 #define PORT_GFC_HOUTIFBK &adc_get_port_val
61 #define PORT_SFC_HOUTIFBK NULL
63 #define PORT_ADC_CHANNEL_NUM 12
64 #define PORT_NAME_ADC "ADC"
65 #define PORT_CFG_ADC { (uint32_t) adcREG1, adcGROUP1 }
66 #define PORT_NV_ADC PORT_ADC_CHANNEL_NUM
67 #define PORT_GFC_ADC &adc_get_port_val
68 #define PORT_SFC_ADC NULL
70 #define PORT_NAME_LOUT "LOUT"
71 #define PORT_CFG_LOUT { 1, 1 }
72 #define PORT_NV_LOUT 4
73 #define PORT_GFC_LOUT NULL
74 #define PORT_SFC_LOUT &hal_spi_port_transfer_command
76 #define PORT_NAME_DAC1_2 "DAC12"
77 #define PORT_CFG_DAC1_2 { 3, 0 }
78 #define PORT_NV_DAC1_2 2
79 #define PORT_GFC_DAC1_2 NULL
80 #define PORT_SFC_DAC1_2 &hal_spi_port_transfer_command
82 #define PORT_NAME_DAC3_4 "DAC34"
83 #define PORT_CFG_DAC3_4 { 3, 1 }
84 #define PORT_NV_DAC3_4 2
85 #define PORT_GFC_DAC3_4 NULL
86 #define PORT_SFC_DAC3_4 &hal_spi_port_transfer_command
88 #define PORT_NAME_DACDREF "DACDREF"
89 #define PORT_CFG_DACDREF { 3, 2 }
90 #define PORT_NV_DACDREF 2
91 #define PORT_GFC_DACDREF NULL
92 #define PORT_SFC_DACDREF &hal_spi_port_transfer_command
94 #define PORT_NAME_HBR "HBR"
95 #define PORT_CFG_HBR { 4, 0 }
97 #define PORT_GFC_HBR NULL
98 #define PORT_SFC_HBR &hal_spi_port_transfer_command
100 #define PORT_NAME_FRAY1 "FRAY1"
101 #define PORT_CFG_FRAY1 { 4, 1 }
102 #define PORT_NV_FRAY1 2
103 #define PORT_GFC_FRAY1 NULL
104 #define PORT_SFC_FRAY1 &hal_spi_port_transfer_command
106 #define PORT_NAME_FRAY2 "FRAY2"
107 #define PORT_CFG_FRAY2 { 4, 2 }
108 #define PORT_NV_FRAY2 2
109 #define PORT_GFC_FRAY2 NULL
110 #define PORT_SFC_FRAY2 &hal_spi_port_transfer_command
112 #define PORT_NAME_MOUTEN "MOUTEN"
113 #define PORT_CFG_MOUTEN { PIN_DSC_MOUT1EN, PIN_DSC_MOUT2EN, PIN_DSC_MOUT3EN, PIN_DSC_MOUT4EN, PIN_DSC_MOUT5EN, PIN_DSC_MOUT6EN }
114 #define PORT_NV_MOUTEN 6
115 #define PORT_GFC_MOUTEN &hal_gio_port_get_val
116 #define PORT_SFC_MOUTEN &hal_gio_port_set_val
118 port_desc_t* hal_port_get_dsc(const char* port_name, int len);
119 const port_def_t* hal_port_get_definitions();
122 #endif /* PORT_DEF_H_ */