projects
/
pub
/
lufa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
579fbb6
)
Fixed CDC and DFU bootloaders API page erase and write function failures (thanks...
author
Dean Camera
<dean@fourwalledcubicle.com>
Fri, 29 Jun 2012 04:55:44 +0000
(
04:55
+0000)
committer
Dean Camera
<dean@fourwalledcubicle.com>
Fri, 29 Jun 2012 04:55:44 +0000
(
04:55
+0000)
Bootloaders/CDC/BootloaderAPI.c
patch
|
blob
|
blame
|
history
Bootloaders/CDC/makefile
patch
|
blob
|
blame
|
history
Bootloaders/DFU/BootloaderAPI.c
patch
|
blob
|
blame
|
history
Bootloaders/DFU/makefile
patch
|
blob
|
blame
|
history
LUFA/DoxygenPages/ChangeLog.txt
patch
|
blob
|
blame
|
history
diff --git
a/Bootloaders/CDC/BootloaderAPI.c
b/Bootloaders/CDC/BootloaderAPI.c
index
60b2d94
..
bac078f
100644
(file)
--- a/
Bootloaders/CDC/BootloaderAPI.c
+++ b/
Bootloaders/CDC/BootloaderAPI.c
@@
-38,12
+38,14
@@
void BootloaderAPI_ErasePage(const uint32_t Address)
{
boot_page_erase_safe(Address);
void BootloaderAPI_ErasePage(const uint32_t Address)
{
boot_page_erase_safe(Address);
+ boot_spm_busy_wait();
boot_rww_enable();
}
void BootloaderAPI_WritePage(const uint32_t Address)
{
boot_page_write_safe(Address);
boot_rww_enable();
}
void BootloaderAPI_WritePage(const uint32_t Address)
{
boot_page_write_safe(Address);
+ boot_spm_busy_wait();
boot_rww_enable();
}
boot_rww_enable();
}
diff --git
a/Bootloaders/CDC/makefile
b/Bootloaders/CDC/makefile
index
67be6df
..
5ebd8b5
100644
(file)
--- a/
Bootloaders/CDC/makefile
+++ b/
Bootloaders/CDC/makefile
@@
-35,8
+35,8
@@
BOOT_SEC_OFFSET = 0x$(shell echo "obase=16; (($(FLASH_SIZE_KB) * 1024) - $
# Bootloader linker section flags for relocating the API table sections to
# known FLASH addresses - these should not normally be user-edited.
BOOT_SECTION_LD_FLAG = -Wl,--section-start=.apitable_$(strip $(1))=$(call BOOT_SEC_OFFSET, $(3)) -Wl,--undefined=BootloaderAPI_$(strip $(2))
# Bootloader linker section flags for relocating the API table sections to
# known FLASH addresses - these should not normally be user-edited.
BOOT_SECTION_LD_FLAG = -Wl,--section-start=.apitable_$(strip $(1))=$(call BOOT_SEC_OFFSET, $(3)) -Wl,--undefined=BootloaderAPI_$(strip $(2))
-BOOT_API_LD_FLAGS = $(call BOOT_SECTION_LD_FLAG, trampolines, Trampolines,
(48 + 32 + 8)
)
-BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, jumptable, JumpTable,
(32 + 8)
)
+BOOT_API_LD_FLAGS = $(call BOOT_SECTION_LD_FLAG, trampolines, Trampolines,
96
)
+BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, jumptable, JumpTable,
32
)
BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, signatures, Signatures, 8)
# Default target
BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, signatures, Signatures, 8)
# Default target
diff --git
a/Bootloaders/DFU/BootloaderAPI.c
b/Bootloaders/DFU/BootloaderAPI.c
index
f161bad
..
dadab3d
100644
(file)
--- a/
Bootloaders/DFU/BootloaderAPI.c
+++ b/
Bootloaders/DFU/BootloaderAPI.c
@@
-38,12
+38,14
@@
void BootloaderAPI_ErasePage(const uint32_t Address)
{
boot_page_erase_safe(Address);
void BootloaderAPI_ErasePage(const uint32_t Address)
{
boot_page_erase_safe(Address);
+ boot_spm_busy_wait();
boot_rww_enable();
}
void BootloaderAPI_WritePage(const uint32_t Address)
{
boot_page_write_safe(Address);
boot_rww_enable();
}
void BootloaderAPI_WritePage(const uint32_t Address)
{
boot_page_write_safe(Address);
+ boot_spm_busy_wait();
boot_rww_enable();
}
boot_rww_enable();
}
diff --git
a/Bootloaders/DFU/makefile
b/Bootloaders/DFU/makefile
index
cc072f4
..
b4fd268
100644
(file)
--- a/
Bootloaders/DFU/makefile
+++ b/
Bootloaders/DFU/makefile
@@
-35,8
+35,8
@@
BOOT_SEC_OFFSET = 0x$(shell echo "obase=16; (($(FLASH_SIZE_KB) * 1024) - $
# Bootloader linker section flags for relocating the API table sections to
# known FLASH addresses - these should not normally be user-edited.
BOOT_SECTION_LD_FLAG = -Wl,--section-start=.apitable_$(strip $(1))=$(call BOOT_SEC_OFFSET, $(3)) -Wl,--undefined=BootloaderAPI_$(strip $(2))
# Bootloader linker section flags for relocating the API table sections to
# known FLASH addresses - these should not normally be user-edited.
BOOT_SECTION_LD_FLAG = -Wl,--section-start=.apitable_$(strip $(1))=$(call BOOT_SEC_OFFSET, $(3)) -Wl,--undefined=BootloaderAPI_$(strip $(2))
-BOOT_API_LD_FLAGS = $(call BOOT_SECTION_LD_FLAG, trampolines, Trampolines,
(48 + 32 + 8)
)
-BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, jumptable, JumpTable,
(32 + 8)
)
+BOOT_API_LD_FLAGS = $(call BOOT_SECTION_LD_FLAG, trampolines, Trampolines,
96
)
+BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, jumptable, JumpTable,
32
)
BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, signatures, Signatures, 8)
# Default target
BOOT_API_LD_FLAGS += $(call BOOT_SECTION_LD_FLAG, signatures, Signatures, 8)
# Default target
diff --git
a/LUFA/DoxygenPages/ChangeLog.txt
b/LUFA/DoxygenPages/ChangeLog.txt
index
665b164
..
b146973
100644
(file)
--- a/
LUFA/DoxygenPages/ChangeLog.txt
+++ b/
LUFA/DoxygenPages/ChangeLog.txt
@@
-78,6
+78,7
@@
* - Fixed incorrect DFU version number reported to the host in the DFU bootloader descriptors (thanks to Georg Glock)
* - Fixed incorrect version hundredths value encoding in VERSION_BCD() macro (thanks to Georg Glock)
* - Fixed invalid configuration descriptor in the low level KeyboardMouse device demo (thanks to Jun Wako)
* - Fixed incorrect DFU version number reported to the host in the DFU bootloader descriptors (thanks to Georg Glock)
* - Fixed incorrect version hundredths value encoding in VERSION_BCD() macro (thanks to Georg Glock)
* - Fixed invalid configuration descriptor in the low level KeyboardMouse device demo (thanks to Jun Wako)
+ * - Fixed CDC and DFU bootloaders API page erase and write function failures (thanks to Martin Lambert)
*
* \section Sec_ChangeLog120219 Version 120219
* <b>New:</b>
*
* \section Sec_ChangeLog120219 Version 120219
* <b>New:</b>