From 812c2d1a6666d5649cbb06eba3601423461e741f Mon Sep 17 00:00:00 2001 From: talpachen Date: Mon, 19 Oct 2020 09:35:37 +0800 Subject: [PATCH] fix the critical problem; fix bootloader sp check error --- ...vllink_lite_gd32e103xx_bootloader_12KB.bin | Bin 8078 -> 0 bytes ...vllink_lite_gd32f350xx_bootloader_12KB.bin | Bin 8072 -> 0 bytes .../vllink_lite_gd32e103xx_app.bin | Bin 36308 -> 36566 bytes ...vllink_lite_gd32e103xx_bootloader_12KB.bin | Bin 0 -> 7224 bytes .../vllink_lite_gd32e103xx_full.bin | Bin 49664 -> 49664 bytes .../vllink_lite_gd32f350xx_app.bin | Bin 37617 -> 37387 bytes ...vllink_lite_gd32f350xx_bootloader_12KB.bin | Bin 0 -> 7218 bytes .../vllink_lite_gd32f350xx_full.bin | Bin 50816 -> 50816 bytes .../vllink_lite/EWARM/GD32F350xx_booted.icf | 2 +- .../vllink_lite/EWARM/project.ewp | 4 +- .../config/brd_cfg_vllinklite_gd32e103.h | 1 + .../config/brd_cfg_vllinklite_gd32f350.h | 1 + source/project_vllink_lite/vllink_lite/main.c | 4 +- .../vllink_lite_bootloader/main.c | 2 +- .../usb/driver/otg/dwcotg/vsf_dwcotg_dcd.c | 14 +-- .../driver/GigaDevice/GD32E10X/common/usart.c | 85 +++++++++++++++--- .../driver/GigaDevice/GD32E10X/common/usart.h | 2 +- .../driver/GigaDevice/GD32F3X0/common/usart.c | 85 +++++++++++++++--- .../driver/GigaDevice/GD32F3X0/common/usart.h | 2 +- 19 files changed, 160 insertions(+), 42 deletions(-) delete mode 100644 firmware/20201017/vllink_lite_gd32e103xx_bootloader_12KB.bin delete mode 100644 firmware/20201017/vllink_lite_gd32f350xx_bootloader_12KB.bin rename firmware/{20201017 => 20201018}/vllink_lite_gd32e103xx_app.bin (64%) create mode 100644 firmware/20201018/vllink_lite_gd32e103xx_bootloader_12KB.bin rename firmware/{20201017 => 20201018}/vllink_lite_gd32e103xx_full.bin (61%) rename firmware/{20201017 => 20201018}/vllink_lite_gd32f350xx_app.bin (54%) create mode 100644 firmware/20201018/vllink_lite_gd32f350xx_bootloader_12KB.bin rename firmware/{20201017 => 20201018}/vllink_lite_gd32f350xx_full.bin (53%) diff --git a/firmware/20201017/vllink_lite_gd32e103xx_bootloader_12KB.bin b/firmware/20201017/vllink_lite_gd32e103xx_bootloader_12KB.bin deleted file mode 100644 index 20abc9c11599a8543ab5664abe960e3cbe0176eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8078 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 diff --git a/firmware/20201017/vllink_lite_gd32f350xx_bootloader_12KB.bin b/firmware/20201017/vllink_lite_gd32f350xx_bootloader_12KB.bin deleted file mode 100644 index eed43cea5dd65912ceb48e0134536a160fe6a7e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8072 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 JmK+l5{x6ix2$%o> diff --git a/firmware/20201017/vllink_lite_gd32e103xx_app.bin b/firmware/20201018/vllink_lite_gd32e103xx_app.bin similarity index 64% rename from firmware/20201017/vllink_lite_gd32e103xx_app.bin rename to firmware/20201018/vllink_lite_gd32e103xx_app.bin index afc93d0cf76b679fed53a1a9455c3f0e762b94d7..610d8aeaa9199839f47c0913e452a0ee250082b7 100644 GIT binary patch delta 6123 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 SG%Bv%9vQl?lE3rY%>M_|-W9a~ diff --git a/firmware/20201018/vllink_lite_gd32e103xx_bootloader_12KB.bin b/firmware/20201018/vllink_lite_gd32e103xx_bootloader_12KB.bin new file mode 100644 index 0000000000000000000000000000000000000000..c7624ff53b3e335cf5d046508e9bfb9b87fa2511 GIT binary patch literal 7224 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 MRgm-+xsu5FKbskmoB#j- literal 0 HcmV?d00001 diff --git a/firmware/20201017/vllink_lite_gd32e103xx_full.bin b/firmware/20201018/vllink_lite_gd32e103xx_full.bin similarity index 61% rename from firmware/20201017/vllink_lite_gd32e103xx_full.bin rename to firmware/20201018/vllink_lite_gd32e103xx_full.bin index 8305fb95e51c9d3cb58c99006a24c4700f52019a..420d95218dfd7654f4461cdf3a2d12100a582fc2 100644 GIT binary patch delta 9032 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 delta 8334 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 bm>OH+8XCJ%OW)a0NIs<}H(aZ6tmgj*0`*OJ diff --git a/firmware/20201018/vllink_lite_gd32f350xx_bootloader_12KB.bin b/firmware/20201018/vllink_lite_gd32f350xx_bootloader_12KB.bin new file mode 100644 index 0000000000000000000000000000000000000000..0e1e7e551d99f523d3f975b03d4e6999aae7f203 GIT binary patch literal 7218 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 delta 12106 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 diff --git a/source/project_vllink_lite/vllink_lite/EWARM/GD32F350xx_booted.icf b/source/project_vllink_lite/vllink_lite/EWARM/GD32F350xx_booted.icf index b359d7af..7185ef97 100644 --- a/source/project_vllink_lite/vllink_lite/EWARM/GD32F350xx_booted.icf +++ b/source/project_vllink_lite/vllink_lite/EWARM/GD32F350xx_booted.icf @@ -9,7 +9,7 @@ define symbol __ICFEDIT_region_ROM_end__ = 0x0800FFFF; define symbol __ICFEDIT_region_RAM_start__ = 0x20000004; define symbol __ICFEDIT_region_RAM_end__ = 0x20001FFF; /*-Sizes-*/ -define symbol __ICFEDIT_size_cstack__ = 0x400; +define symbol __ICFEDIT_size_cstack__ = 0x3E0; define symbol __ICFEDIT_size_heap__ = 0x0; /**** End of ICF editor section. ###ICF###*/ diff --git a/source/project_vllink_lite/vllink_lite/EWARM/project.ewp b/source/project_vllink_lite/vllink_lite/EWARM/project.ewp index 15060280..c91cba70 100644 --- a/source/project_vllink_lite/vllink_lite/EWARM/project.ewp +++ b/source/project_vllink_lite/vllink_lite/EWARM/project.ewp @@ -302,11 +302,11 @@