diff options
Diffstat (limited to 'platforms/avr')
| -rw-r--r-- | platforms/avr/drivers/i2c_master.c | 12 | ||||
| -rw-r--r-- | platforms/avr/drivers/ps2/ps2_usart.c | 4 | ||||
| -rw-r--r-- | platforms/avr/platform.mk | 2 | 
3 files changed, 9 insertions, 9 deletions
| diff --git a/platforms/avr/drivers/i2c_master.c b/platforms/avr/drivers/i2c_master.c index c1a7b5f72d..524494c99d 100644 --- a/platforms/avr/drivers/i2c_master.c +++ b/platforms/avr/drivers/i2c_master.c @@ -64,7 +64,7 @@ static i2c_status_t i2c_start_impl(uint8_t address, uint16_t timeout) {      uint16_t timeout_timer = timer_read();      while (!(TWCR & (1 << TWINT))) { -        if ((timeout != I2C_TIMEOUT_INFINITE) && ((timer_read() - timeout_timer) >= timeout)) { +        if ((timeout != I2C_TIMEOUT_INFINITE) && (timer_elapsed(timeout_timer) > timeout)) {              return I2C_STATUS_TIMEOUT;          }      } @@ -81,7 +81,7 @@ static i2c_status_t i2c_start_impl(uint8_t address, uint16_t timeout) {      timeout_timer = timer_read();      while (!(TWCR & (1 << TWINT))) { -        if ((timeout != I2C_TIMEOUT_INFINITE) && ((timer_read() - timeout_timer) >= timeout)) { +        if ((timeout != I2C_TIMEOUT_INFINITE) && (timer_elapsed(timeout_timer) > timeout)) {              return I2C_STATUS_TIMEOUT;          }      } @@ -102,7 +102,7 @@ i2c_status_t i2c_start(uint8_t address, uint16_t timeout) {      i2c_status_t status;      do {          status = i2c_start_impl(address, time_slice); -    } while ((status < 0) && ((timeout == I2C_TIMEOUT_INFINITE) || (timer_elapsed(timeout_timer) < timeout))); +    } while ((status < 0) && ((timeout == I2C_TIMEOUT_INFINITE) || (timer_elapsed(timeout_timer) <= timeout)));      return status;  } @@ -114,7 +114,7 @@ i2c_status_t i2c_write(uint8_t data, uint16_t timeout) {      uint16_t timeout_timer = timer_read();      while (!(TWCR & (1 << TWINT))) { -        if ((timeout != I2C_TIMEOUT_INFINITE) && ((timer_read() - timeout_timer) >= timeout)) { +        if ((timeout != I2C_TIMEOUT_INFINITE) && (timer_elapsed(timeout_timer) > timeout)) {              return I2C_STATUS_TIMEOUT;          }      } @@ -132,7 +132,7 @@ int16_t i2c_read_ack(uint16_t timeout) {      uint16_t timeout_timer = timer_read();      while (!(TWCR & (1 << TWINT))) { -        if ((timeout != I2C_TIMEOUT_INFINITE) && ((timer_read() - timeout_timer) >= timeout)) { +        if ((timeout != I2C_TIMEOUT_INFINITE) && (timer_elapsed(timeout_timer) > timeout)) {              return I2C_STATUS_TIMEOUT;          }      } @@ -147,7 +147,7 @@ int16_t i2c_read_nack(uint16_t timeout) {      uint16_t timeout_timer = timer_read();      while (!(TWCR & (1 << TWINT))) { -        if ((timeout != I2C_TIMEOUT_INFINITE) && ((timer_read() - timeout_timer) >= timeout)) { +        if ((timeout != I2C_TIMEOUT_INFINITE) && (timer_elapsed(timeout_timer) > timeout)) {              return I2C_STATUS_TIMEOUT;          }      } diff --git a/platforms/avr/drivers/ps2/ps2_usart.c b/platforms/avr/drivers/ps2/ps2_usart.c index 39ec930d4a..581badac64 100644 --- a/platforms/avr/drivers/ps2/ps2_usart.c +++ b/platforms/avr/drivers/ps2/ps2_usart.c @@ -72,8 +72,8 @@ uint8_t ps2_error = PS2_ERR_NONE;  static inline uint8_t pbuf_dequeue(void);  static inline void    pbuf_enqueue(uint8_t data); -static inline bool    pbuf_has_data(void);  static inline void    pbuf_clear(void); +bool                  pbuf_has_data(void);  void ps2_host_init(void) {      idle(); // without this many USART errors occur when cable is disconnected @@ -212,7 +212,7 @@ static inline uint8_t pbuf_dequeue(void) {      return val;  } -static inline bool pbuf_has_data(void) { +bool pbuf_has_data(void) {      uint8_t sreg = SREG;      cli();      bool has_data = (pbuf_head != pbuf_tail); diff --git a/platforms/avr/platform.mk b/platforms/avr/platform.mk index 978199b385..b51a94c93a 100644 --- a/platforms/avr/platform.mk +++ b/platforms/avr/platform.mk @@ -38,7 +38,7 @@ CFLAGS += -fno-inline-small-functions  CFLAGS += -fno-strict-aliasing  CXXFLAGS += $(COMPILEFLAGS) -CXXFLAGS += -fno-exceptions -std=c++11 +CXXFLAGS += -fno-exceptions $(CXXSTANDARD)  LDFLAGS += -Wl,--gc-sections | 
