58#define _PROTECTED_WRITE(reg, value)
77#define _PROTECTED_WRITE_SPM(reg, value)
83#define _PROTECTED_WRITE(reg, value) \
84 __asm__ __volatile__ ("out %i0, %1" "\n\t" \
88 "d" ((uint8_t) 0xd8), \
90 "r" ((uint8_t) (value)))
92#elif defined (__AVR_XMEGA__)
94#define _PROTECTED_WRITE(reg, value) \
95 __asm__ __volatile__ ("out %i0, %1" "\n\t" \
99 "d" ((uint8_t) CCP_IOREG_gc), \
101 "r" ((uint8_t) (value)))
104#if defined(__AVR_TINY__) && defined(CCP_SPM_gc)
106#define _PROTECTED_WRITE_SPM(reg, value) \
107 __asm__ __volatile__ ("out %i0, %1" "\n\t" \
111 "d" ((uint8_t) CCP_SPM_gc), \
113 "r" ((uint8_t) (value)))
115#elif defined(__AVR_XMEGA__)
117#define _PROTECTED_WRITE_SPM(reg, value) \
118 __asm__ __volatile__ ("out %i0, %1" "\n\t" \
122 "d" ((uint8_t) CCP_SPM_gc), \
124 "r" ((uint8_t) (value)))