From 9e0760fdc48d89488a054a5d5526db10f7709e72 Mon Sep 17 00:00:00 2001 From: Fabio Utzig Date: Sat, 9 Apr 2016 21:47:19 +0000 Subject: [AVR] Let compiler optimized set/clear pad git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@9266 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/hal/ports/AVR/hal_pal_lld.h | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'os/hal') diff --git a/os/hal/ports/AVR/hal_pal_lld.h b/os/hal/ports/AVR/hal_pal_lld.h index b6994d8b4..6a325ca73 100644 --- a/os/hal/ports/AVR/hal_pal_lld.h +++ b/os/hal/ports/AVR/hal_pal_lld.h @@ -299,9 +299,7 @@ typedef volatile avr_gpio_registers_t * ioportid_t; * @notapi */ #define pal_lld_setpad(port, pad) \ -__asm__ __volatile__( \ - "sbi %0,%1\n\t" :: "I" (_SFR_IO_ADDR(port->out)), "I" (pad) \ -) + port->out |= _BV(pad) /** * @brief Clears a pad logical state to @p PAL_LOW. @@ -312,9 +310,7 @@ __asm__ __volatile__( \ * @notapi */ #define pal_lld_clearpad(port, pad) \ -__asm__ __volatile__( \ - "cbi %0,%1\n\t" :: "I" (_SFR_IO_ADDR(port->out)), "I" (pad) \ -) + port->out &= ~_BV(pad) extern ROMCONST PALConfig pal_default_config; -- cgit v1.2.3