git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@16288 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
parent
4759d8b4a7
commit
3ec158c8b0
|
@ -844,9 +844,14 @@ if (self->cb != NULL) {
|
||||||
<notapi />
|
<notapi />
|
||||||
<implementation><![CDATA[
|
<implementation><![CDATA[
|
||||||
|
|
||||||
if (self->cb) {
|
if (self->cb != NULL) {
|
||||||
|
self->state = HAL_DRV_STATE_ERROR;
|
||||||
self->cb(self);
|
self->cb(self);
|
||||||
|
if (self->state == HAL_DRV_STATE_ERROR) {
|
||||||
|
self->state = HAL_DRV_STATE_READY;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
__spi_wakeup_isr(self, msg);]]></implementation>
|
__spi_wakeup_isr(self, msg);]]></implementation>
|
||||||
</method>
|
</method>
|
||||||
</inline>
|
</inline>
|
||||||
|
|
|
@ -574,9 +574,14 @@ CC_FORCE_INLINE
|
||||||
static inline void __spi_isr_error_code(void *ip, msg_t msg) {
|
static inline void __spi_isr_error_code(void *ip, msg_t msg) {
|
||||||
hal_spi_driver_c *self = (hal_spi_driver_c *)ip;
|
hal_spi_driver_c *self = (hal_spi_driver_c *)ip;
|
||||||
|
|
||||||
if (self->cb) {
|
if (self->cb != NULL) {
|
||||||
|
self->state = HAL_DRV_STATE_ERROR;
|
||||||
self->cb(self);
|
self->cb(self);
|
||||||
|
if (self->state == HAL_DRV_STATE_ERROR) {
|
||||||
|
self->state = HAL_DRV_STATE_READY;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
__spi_wakeup_isr(self, msg);
|
__spi_wakeup_isr(self, msg);
|
||||||
}
|
}
|
||||||
/** @} */
|
/** @} */
|
||||||
|
|
Loading…
Reference in New Issue