Revision 1e5f7648 modules/LightRing_1-0/module.h

View differences:

modules/LightRing_1-0/module.h
35 35
 */
36 36
/*===========================================================================*/
37 37
#include <hal.h>
38
#include <aos_interrupts.h>
39 38

  
40 39
/**
41 40
 * @brief   CAN driver to use.
......
48 47
extern CANConfig moduleHalCanConfig;
49 48

  
50 49
/**
51
 * @brief   Interrupt driver (PAL).
52
 */
53

  
54
extern aos_interrupt_driver_t moduleIntDriver;
55

  
56
/**
57
 * @brief   Interrupt driver config.
58
 */
59
extern aos_interrupt_cfg_t moduleIntConfig[6];
60

  
61
/**
62 50
 * @brief   I2C driver to access the EEPROM.
63 51
 */
64 52
#define MODULE_HAL_I2C_EEPROM                   I2CD2
......
104 92
#include <amiro-lld.h>
105 93

  
106 94
/**
107
 * @brief   Interrupt channel for the SYS_SYNC signal.
108
 */
109
#define MODULE_GPIO_INT_SYSSYNC          ((uint8_t)1)
110

  
111
/**
112
 * @brief   Interrupt channel for the LASER_OC signal.
113
 */
114
#define MODULE_GPIO_INT_LASEROC          ((uint8_t)2)
115

  
116
/**
117
 * @brief   Interrupt channel for the SYS_UART_DN signal.
118
 */
119
#define MODULE_GPIO_INT_SYSUARTDN        ((uint8_t)3)
120

  
121
/**
122
 * @brief   Interrupt channel for the WL_GDO2 signal.
123
 */
124
#define MODULE_GPIO_INT_WLGDO2           ((uint8_t)4)
125

  
126
/**
127
 * @brief   Interrupt channel for the WL_GDO0 signal.
128
 */
129
#define MODULE_GPIO_INT_WLGDO0           ((uint8_t)5)
130

  
131
/**
132
 * @brief   Interrupt channel for the SYS_PD signal.
133
 */
134
#define MODULE_GPIO_INT_SYSPD            ((uint8_t)6)
135

  
136
/**
137 95
 * @brief   LIGHT_BANK output signal GPIO.
138 96
 */
139
extern apalGpio_t moduleGpioLightBlank;
97
extern apalControlGpio_t moduleGpioLightBlank;
140 98

  
141 99
/**
142 100
 * @brief   LASER_EN output signal GPIO.
143 101
 */
144
extern apalGpio_t moduleGpioLaserEn;
102
extern apalControlGpio_t moduleGpioLaserEn;
145 103

  
146 104
/**
147 105
 * @brief   LASER_OC input signal GPIO.
148 106
 */
149
extern apalGpio_t moduleGpioLaserOc;
107
extern apalControlGpio_t moduleGpioLaserOc;
150 108

  
151 109
/**
152 110
 * @brief   SYS_UART_DN bidirectional signal GPIO.
153 111
 */
154
extern apalGpio_t moduleGpioSysUartDn;
112
extern apalControlGpio_t moduleGpioSysUartDn;
155 113

  
156 114
/**
157 115
 * @brief   WL_GDO2 input signal GPIO.
158 116
 */
159
extern apalGpio_t moduleGpioWlGdo2;
117
extern apalControlGpio_t moduleGpioWlGdo2;
160 118

  
161 119
/**
162 120
 * @brief   WL_GDO0 input signal GPIO.
163 121
 */
164
extern apalGpio_t moduleGpioWlGdo0;
122
extern apalControlGpio_t moduleGpioWlGdo0;
165 123

  
166 124
/**
167 125
 * @brief   LIGHT_XLAT output signal GPIO.
168 126
 */
169
extern apalGpio_t moduleGpioLightXlat;
127
extern apalControlGpio_t moduleGpioLightXlat;
170 128

  
171 129
/**
172 130
 * @brief   SYS_PD bidirectional signal GPIO.
173 131
 */
174
extern apalGpio_t moduleGpioSysPd;
132
extern apalControlGpio_t moduleGpioSysPd;
175 133

  
176 134
/**
177 135
 * @brief   SYS_SYNC bidirectional signal GPIO.
178 136
 */
179
extern apalGpio_t moduleGpioSysSync;
137
extern apalControlGpio_t moduleGpioSysSync;
180 138

  
181 139
/** @} */
182 140

  
......
190 148
/**
191 149
 * @brief   Event flag to be set on a LASER_OC interrupt.
192 150
 */
193
#define MODULE_OS_IOEVENTFLAGS_LASEROC          ((eventflags_t)(1 << MODULE_GPIO_INT_LASEROC))
151
#define MODULE_OS_IOEVENTFLAGS_LASEROC          ((eventflags_t)1 << GPIOB_LASER_OC_N)
194 152

  
195 153
/**
196 154
 * @brief   Event flag to be set on a SYS_UART_DN interrupt.
197 155
 */
198
#define MODULE_OS_IOEVENTFLAGS_SYSUARTDN        ((eventflags_t)(1 << MODULE_GPIO_INT_SYSUARTDN))
156
#define MODULE_OS_IOEVENTFLAGS_SYSUARTDN        ((eventflags_t)1 << GPIOB_SYS_UART_DN)
199 157

  
200 158
/**
201 159
 * @brief   Event flag to be set on a WL_GDO2 interrupt.
202 160
 */
203
#define MODULE_OS_IOEVENTFLAGS_WLGDO2           ((eventflags_t)(1 << MODULE_GPIO_INT_WLGDO2))
161
#define MODULE_OS_IOEVENTFLAGS_WLGDO2           ((eventflags_t)1 << GPIOB_WL_GDO2)
204 162

  
205 163
/**
206 164
 * @brief   Event flag to be set on a WL_GDO0 interrupt.
207 165
 */
208
#define MODULE_OS_IOEVENTFLAGS_WLGDO0           ((eventflags_t)(1 << MODULE_GPIO_INT_WLGDO0))
166
#define MODULE_OS_IOEVENTFLAGS_WLGDO0           ((eventflags_t)1 << GPIOB_WL_GDO0)
209 167

  
210 168
/**
211 169
 * @brief   Event flag to be set on a SYS_PD interrupt.
212 170
 */
213
#define MODULE_OS_IOEVENTFLAGS_SYSPD            ((eventflags_t)(1 << MODULE_GPIO_INT_SYSPD))
171
#define MODULE_OS_IOEVENTFLAGS_SYSPD            ((eventflags_t)1 << GPIOC_SYS_PD_N)
214 172

  
215 173
/**
216 174
 * @brief   Event flag to be set on a SYS_SYNC interrupt.
217 175
 */
218
#define MODULE_OS_IOEVENTFLAGS_SYSSYNC          ((eventflags_t)(1 << MODULE_GPIO_INT_SYSSYNC))
176
#define MODULE_OS_IOEVENTFLAGS_SYSSYNC          ((eventflags_t)1 << GPIOD_SYS_INT_N)
219 177

  
220 178
#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
221 179
/**
......
225 183
#endif
226 184

  
227 185
/**
186
 * @brief   Interrupt initialization macro.
187
 * @note    SSSP related interrupt signals are already initialized in 'aos_system.c'.
188
 */
189
#define MODULE_INIT_INTERRUPTS() {                                            \
190
  /* LASER_OC */                                                              \
191
  palSetPadCallback(moduleGpioLaserOc.gpio->port, moduleGpioLaserOc.gpio->pad, _intCallback, &moduleGpioLaserOc.gpio->pad); \
192
  palEnablePadEvent(moduleGpioLaserOc.gpio->port, moduleGpioLaserOc.gpio->pad, APAL2CH_EDGE(moduleGpioLaserOc.meta.edge));  \
193
  /* WL_GDO2 */                                                               \
194
  palSetPadCallback(moduleGpioWlGdo2.gpio->port, moduleGpioWlGdo2.gpio->pad, _intCallback, &moduleGpioWlGdo2.gpio->pad);  \
195
  palEnablePadEvent(moduleGpioWlGdo2.gpio->port, moduleGpioWlGdo2.gpio->pad, APAL2CH_EDGE(moduleGpioWlGdo2.meta.edge));   \
196
  /* WL_GDO0 */                                                               \
197
  palSetPadCallback(moduleGpioWlGdo0.gpio->port, moduleGpioWlGdo0.gpio->pad, _intCallback, &moduleGpioWlGdo0.gpio->pad);  \
198
  /*palEnablePadEvent(moduleGpioWlGdo0.gpio->port, moduleGpioWlGdo0.gpio->pad, APAL2CH_EDGE(moduleGpioWlGdo0.meta.edge)); // this is broken for some reason*/   \
199
}
200

  
201
/**
228 202
 * @brief   Unit test initialization hook.
229 203
 */
230 204
#define MODULE_INIT_TESTS() {                                                 \
......
271 245
/**
272 246
 * @brief   PD signal GPIO.
273 247
 */
274
extern apalControlGpio_t moduleSsspGpioPd;
248
#define moduleSsspGpioPd                        moduleGpioSysPd
275 249

  
276 250
/**
277 251
 * @brief   SYNC signal GPIO.
278 252
 */
279
extern apalControlGpio_t moduleSsspGpioSync;
253
#define moduleSsspGpioSync                      moduleGpioSysSync
280 254

  
281 255
/**
282 256
 * @brief   DN signal GPIO.
283 257
 */
284
extern apalControlGpio_t moduleSsspGpioDn;
258
#define moduleSsspGpioDn                        moduleGpioSysUartDn
285 259

  
286 260
/**
287 261
 * @brief   Event flags for PD signal events.

Also available in: Unified diff