Fixes for STM32L4, Comp and eeprom.
This commit is contained in:
parent
a8bd0ca9da
commit
6736a9099b
|
@ -68,7 +68,7 @@
|
|||
uint16_t pagesize; \
|
||||
/* Time needed by IC for single byte/page writing. */ \
|
||||
systime_t write_time;
|
||||
|
||||
|
||||
typedef uint32_t fileoffset_t;
|
||||
|
||||
typedef struct {
|
||||
|
|
|
@ -34,6 +34,14 @@
|
|||
/* Driver local definitions. */
|
||||
/*===========================================================================*/
|
||||
|
||||
#ifndef COMP_CSR_EN
|
||||
#define COMP_CSR_EN COMP_CSR_COMPxEN
|
||||
#endif
|
||||
|
||||
#ifndef COMP_CSR_POLARITY
|
||||
#define COMP_CSR_POLARITY COMP_CSR_COMPxPOL
|
||||
#endif
|
||||
|
||||
/*===========================================================================*/
|
||||
/* Driver exported variables. */
|
||||
/*===========================================================================*/
|
||||
|
@ -191,6 +199,8 @@ void comp_lld_init(void) {
|
|||
|
||||
}
|
||||
|
||||
#if STM32_COMP_USE_INTERRUPTS
|
||||
|
||||
/**
|
||||
* @brief COMP1, COMP2, COMP3 interrupt handler.
|
||||
*
|
||||
|
@ -369,6 +379,8 @@ void comp_ext_lld_channel_disable(COMPDriver *compp, uint32_t channel) {
|
|||
#endif
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Configures and activates the COMP peripheral.
|
||||
*
|
||||
|
@ -379,11 +391,11 @@ void comp_ext_lld_channel_disable(COMPDriver *compp, uint32_t channel) {
|
|||
void comp_lld_start(COMPDriver *compp) {
|
||||
|
||||
// Apply CSR Execpt the enable bit.
|
||||
compp->reg->CSR = compp->config->csr & ~COMP_CSR_COMPxEN;
|
||||
compp->reg->CSR = compp->config->csr & ~COMP_CSR_EN;
|
||||
|
||||
// Inverted output
|
||||
if (compp->config->output_mode == COMP_OUTPUT_INVERTED)
|
||||
compp->reg->CSR |= COMP_CSR_COMPxPOL;
|
||||
compp->reg->CSR |= COMP_CSR_POLARITY;
|
||||
|
||||
#if STM32_COMP_USE_INTERRUPTS
|
||||
#if STM32_COMP_USE_COMP1
|
||||
|
@ -500,7 +512,7 @@ void comp_lld_stop(COMPDriver *compp) {
|
|||
*/
|
||||
void comp_lld_enable(COMPDriver *compp) {
|
||||
|
||||
compp->reg->CSR |= COMP_CSR_COMPxEN; /* Enable */
|
||||
compp->reg->CSR |= COMP_CSR_EN; /* Enable */
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -512,7 +524,7 @@ void comp_lld_enable(COMPDriver *compp) {
|
|||
*/
|
||||
void comp_lld_disable(COMPDriver *compp) {
|
||||
|
||||
compp->reg->CSR &= ~COMP_CSR_COMPxEN; /* Disable */
|
||||
compp->reg->CSR &= ~COMP_CSR_EN; /* Disable */
|
||||
}
|
||||
|
||||
#endif /* HAL_USE_COMP */
|
||||
|
|
|
@ -198,7 +198,7 @@ static size_t __clamp_size(void *ip, size_t n) {
|
|||
/**
|
||||
* @brief Write data that can be fitted in one page boundary
|
||||
*/
|
||||
static void __fitted_write(void *ip, const uint8_t *data, size_t len, uint32_t *written) {
|
||||
static msg_t __fitted_write(void *ip, const uint8_t *data, size_t len, uint32_t *written) {
|
||||
|
||||
msg_t status = MSG_RESET;
|
||||
|
||||
|
@ -210,6 +210,8 @@ static void __fitted_write(void *ip, const uint8_t *data, size_t len, uint32_t *
|
|||
*written += len;
|
||||
eepfs_lseek(ip, eepfs_getposition(ip) + len);
|
||||
}
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue