Pitchumani
2016-11-16 13:04:36 UTC
URL:
<http://savannah.nongnu.org/patch/?9163>
Summary: New eeprom write block function for xmega
Project: AVR C Runtime Library
Submitted by: pitchumani
Submitted on: Wed 16 Nov 2016 01:04:34 PM GMT
Category: None
Priority: 7 - High
Status: Ready For Test
Privacy: Public
Assigned to: pitchumani
Originator Email:
Open/Closed: Open
Discussion Lock: Any
_______________________________________________________
Details:
Xmega's eeprom shall be programmed byte and page-wise. Current eeprom write
block function loads one byte to eeprom at a time. Though it uses
page_erase_and_write command, it doesn't write page-wise.
Attached patch adds new eeprom_write_block function for xmega (written in C)
that loads eeprom with maximum of E2PAGESIZE at a time.
This patch also adds a function named ccp_write_io to write into CCProtected
(CCP) IO registers.
Tested the function with ATxmega128A1 explained board. Seems to work fine.
I tried comparing the cycle count only with simulator. New function shows
better results for writing more than 2 bytes.
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Wed 16 Nov 2016 01:04:34 PM GMT Name: eeprom-write-block-xmega.patch
Size: 7kB By: pitchumani
<http://savannah.nongnu.org/patch/download.php?file_id=38989>
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/patch/?9163>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
<http://savannah.nongnu.org/patch/?9163>
Summary: New eeprom write block function for xmega
Project: AVR C Runtime Library
Submitted by: pitchumani
Submitted on: Wed 16 Nov 2016 01:04:34 PM GMT
Category: None
Priority: 7 - High
Status: Ready For Test
Privacy: Public
Assigned to: pitchumani
Originator Email:
Open/Closed: Open
Discussion Lock: Any
_______________________________________________________
Details:
Xmega's eeprom shall be programmed byte and page-wise. Current eeprom write
block function loads one byte to eeprom at a time. Though it uses
page_erase_and_write command, it doesn't write page-wise.
Attached patch adds new eeprom_write_block function for xmega (written in C)
that loads eeprom with maximum of E2PAGESIZE at a time.
This patch also adds a function named ccp_write_io to write into CCProtected
(CCP) IO registers.
Tested the function with ATxmega128A1 explained board. Seems to work fine.
I tried comparing the cycle count only with simulator. New function shows
better results for writing more than 2 bytes.
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Wed 16 Nov 2016 01:04:34 PM GMT Name: eeprom-write-block-xmega.patch
Size: 7kB By: pitchumani
<http://savannah.nongnu.org/patch/download.php?file_id=38989>
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/patch/?9163>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/