[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[avr-libc-commit] [2500] Patch #8902: Update Xmega' s _PROTECTED_WRITE m
From: |
Pitchumani |
Subject: |
[avr-libc-commit] [2500] Patch #8902: Update Xmega' s _PROTECTED_WRITE macro so that it can allow IO registers whose address is more than one byte |
Date: |
Fri, 05 Feb 2016 06:01:21 +0000 |
Revision: 2500
http://svn.sv.gnu.org/viewvc/?view=rev&root=avr-libc&revision=2500
Author: pitchumani
Date: 2016-02-05 06:01:20 +0000 (Fri, 05 Feb 2016)
Log Message:
-----------
Patch #8902: Update Xmega's _PROTECTED_WRITE macro so that it can allow IO
registers whose address is more than one byte
Ticket Links:
------------
http://savannah.gnu.org/patch/?8902
Modified Paths:
--------------
trunk/avr-libc/ChangeLog
trunk/avr-libc/NEWS
trunk/avr-libc/include/avr/xmega.h
Modified: trunk/avr-libc/ChangeLog
===================================================================
--- trunk/avr-libc/ChangeLog 2016-01-28 14:41:31 UTC (rev 2499)
+++ trunk/avr-libc/ChangeLog 2016-02-05 06:01:20 UTC (rev 2500)
@@ -1,3 +1,11 @@
+2016-02-05 Pitchumani Sivanupandi <address@hidden>
+
+ patch #8902: Xmega's PROTECTED_WRITE is incorrect for IO registers
+ whose address is more than one byte
+ * include/avr/xmega.h (_PROTECTED_WRITE): Update constraint for
+ IO register to allow more than 1 byte address. Cast CCP signature and
+ value to be written to avoid un-optimal load.
+
2016-01-28 Pitchumani Sivanupandi <address@hidden>
Added new devices.
Modified: trunk/avr-libc/NEWS
===================================================================
--- trunk/avr-libc/NEWS 2016-01-28 14:41:31 UTC (rev 2499)
+++ trunk/avr-libc/NEWS 2016-02-05 06:01:20 UTC (rev 2500)
@@ -47,6 +47,8 @@
[#8728] Use __extension__ with long long
[#8556] Fix atexit.c
[#8810] Fix LFUSE_DEFAULT for tiny24a/44a
+ [#8902] Xmega's PROTECTED_WRITE is incorrect for IO registers whose address
+ is more than one byte
* Other changes:
Modified: trunk/avr-libc/include/avr/xmega.h
===================================================================
--- trunk/avr-libc/include/avr/xmega.h 2016-01-28 14:41:31 UTC (rev 2499)
+++ trunk/avr-libc/include/avr/xmega.h 2016-02-05 06:01:20 UTC (rev 2500)
@@ -63,9 +63,9 @@
"sts %[ioreg], %[val]" \
: \
: [ccp] "I" (_SFR_IO_ADDR(CCP)), \
- [ccp_ioreg] "d" (CCP_IOREG_gc), \
- [ioreg] "M" (_SFR_MEM_ADDR(reg)), \
- [val] "r" (value))
+ [ccp_ioreg] "d" ((uint8_t)CCP_IOREG_gc), \
+ [ioreg] "n" (_SFR_MEM_ADDR(reg)), \
+ [val] "r" ((uint8_t)value))
#endif /* DOXYGEN */
#endif /* _AVR_XMEGA_H */
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [avr-libc-commit] [2500] Patch #8902: Update Xmega' s _PROTECTED_WRITE macro so that it can allow IO registers whose address is more than one byte,
Pitchumani <=