mirror of
https://github.com/stnolting/neorv32.git
synced 2025-04-23 13:47:33 -04:00
update bootloader
This commit is contained in:
parent
00dcf3b40e
commit
2c40f42f30
2 changed files with 191 additions and 187 deletions
|
@ -1,8 +1,8 @@
|
|||
-- The NEORV32 RISC-V Processor: https://github.com/stnolting/neorv32
|
||||
-- Auto-generated memory initialization file (for BOOTLOADER) from source file <bootloader/main.bin>
|
||||
-- Size: 3996 bytes
|
||||
-- Size: 4012 bytes
|
||||
-- MARCH: default
|
||||
-- Built: 02.03.2023 18:14:21
|
||||
-- Built: 04.03.2023 12:03:06
|
||||
|
||||
-- prototype defined in 'neorv32_package.vhd'
|
||||
package body neorv32_bootloader_image is
|
||||
|
@ -40,7 +40,7 @@ x"00000e93",
|
|||
x"00000f13",
|
||||
x"00000f93",
|
||||
x"00001597",
|
||||
x"f2058593",
|
||||
x"f3058593",
|
||||
x"80010617",
|
||||
x"f7c60613",
|
||||
x"80010697",
|
||||
|
@ -104,14 +104,14 @@ x"03812423",
|
|||
x"03912223",
|
||||
x"03a12023",
|
||||
x"01b12e23",
|
||||
x"7a078793",
|
||||
x"7ac78793",
|
||||
x"30579073",
|
||||
x"fe802783",
|
||||
x"00080737",
|
||||
x"00e7f7b3",
|
||||
x"00078863",
|
||||
x"fa002423",
|
||||
x"40100793",
|
||||
x"10100793",
|
||||
x"faf02423",
|
||||
x"fe802783",
|
||||
x"40000737",
|
||||
|
@ -158,11 +158,11 @@ x"ffff7637",
|
|||
x"00000713",
|
||||
x"5ff78793",
|
||||
x"a0060613",
|
||||
x"1ed7e463",
|
||||
x"1ed7e663",
|
||||
x"000016b7",
|
||||
x"00000793",
|
||||
x"ffe68693",
|
||||
x"1ee6e663",
|
||||
x"1ee6e863",
|
||||
x"fff70713",
|
||||
x"01879793",
|
||||
x"00e7e7b3",
|
||||
|
@ -184,65 +184,65 @@ x"30479073",
|
|||
x"00800793",
|
||||
x"3007a073",
|
||||
x"ffff1537",
|
||||
x"d9850513",
|
||||
x"428000ef",
|
||||
x"da850513",
|
||||
x"434000ef",
|
||||
x"f1302573",
|
||||
x"3ac000ef",
|
||||
x"ffff1537",
|
||||
x"dd050513",
|
||||
x"414000ef",
|
||||
x"fe402503",
|
||||
x"398000ef",
|
||||
x"ffff1537",
|
||||
x"dd850513",
|
||||
x"400000ef",
|
||||
x"fe002503",
|
||||
x"384000ef",
|
||||
x"3b8000ef",
|
||||
x"ffff1537",
|
||||
x"de050513",
|
||||
x"3ec000ef",
|
||||
x"30102573",
|
||||
x"370000ef",
|
||||
x"420000ef",
|
||||
x"fe402503",
|
||||
x"3a4000ef",
|
||||
x"ffff1537",
|
||||
x"de850513",
|
||||
x"3d8000ef",
|
||||
x"fc002573",
|
||||
x"35c000ef",
|
||||
x"40c000ef",
|
||||
x"fe002503",
|
||||
x"390000ef",
|
||||
x"ffff1537",
|
||||
x"dec50513",
|
||||
x"3c4000ef",
|
||||
x"df050513",
|
||||
x"3f8000ef",
|
||||
x"30102573",
|
||||
x"37c000ef",
|
||||
x"ffff1537",
|
||||
x"df850513",
|
||||
x"3e4000ef",
|
||||
x"fc002573",
|
||||
x"368000ef",
|
||||
x"ffff1537",
|
||||
x"dfc50513",
|
||||
x"3d0000ef",
|
||||
x"fe802503",
|
||||
x"ffff1437",
|
||||
x"ffff1937",
|
||||
x"340000ef",
|
||||
x"34c000ef",
|
||||
x"ffff1537",
|
||||
x"df450513",
|
||||
x"3a8000ef",
|
||||
x"e0450513",
|
||||
x"3b4000ef",
|
||||
x"ff802503",
|
||||
x"32c000ef",
|
||||
x"dfc40513",
|
||||
x"398000ef",
|
||||
x"338000ef",
|
||||
x"e0c40513",
|
||||
x"3a4000ef",
|
||||
x"ff002503",
|
||||
x"31c000ef",
|
||||
x"328000ef",
|
||||
x"ffff1537",
|
||||
x"e0850513",
|
||||
x"384000ef",
|
||||
x"e1850513",
|
||||
x"390000ef",
|
||||
x"ffc02503",
|
||||
x"308000ef",
|
||||
x"dfc40513",
|
||||
x"374000ef",
|
||||
x"314000ef",
|
||||
x"e0c40513",
|
||||
x"380000ef",
|
||||
x"ff402503",
|
||||
x"2f8000ef",
|
||||
x"d9490513",
|
||||
x"364000ef",
|
||||
x"304000ef",
|
||||
x"da490513",
|
||||
x"370000ef",
|
||||
x"fe802783",
|
||||
x"00020737",
|
||||
x"00e7f7b3",
|
||||
x"04078c63",
|
||||
x"ffff1537",
|
||||
x"e1050513",
|
||||
x"348000ef",
|
||||
x"2a4000ef",
|
||||
x"e2050513",
|
||||
x"354000ef",
|
||||
x"2b0000ef",
|
||||
x"fe002403",
|
||||
x"00040a37",
|
||||
x"00002ab7",
|
||||
|
@ -252,30 +252,31 @@ x"0089b433",
|
|||
x"00b40433",
|
||||
x"fe802783",
|
||||
x"0147f7b3",
|
||||
x"0a078463",
|
||||
x"0a078663",
|
||||
x"fa002783",
|
||||
x"0157f7b3",
|
||||
x"08079e63",
|
||||
x"0a079063",
|
||||
x"ffff1537",
|
||||
x"fa402783",
|
||||
x"e3c50513",
|
||||
x"300000ef",
|
||||
x"e4c50513",
|
||||
x"30c000ef",
|
||||
x"ffff1a37",
|
||||
x"e48a0513",
|
||||
x"2f4000ef",
|
||||
x"e58a0513",
|
||||
x"300000ef",
|
||||
x"06c00a93",
|
||||
x"07300b93",
|
||||
x"06500c13",
|
||||
x"06800c93",
|
||||
x"ffff17b7",
|
||||
x"ec878513",
|
||||
x"2dc000ef",
|
||||
x"ed878513",
|
||||
x"2e4000ef",
|
||||
x"fa402403",
|
||||
x"fe045ee3",
|
||||
x"0ff47413",
|
||||
x"00040513",
|
||||
x"23c000ef",
|
||||
x"d9490513",
|
||||
x"2c0000ef",
|
||||
x"244000ef",
|
||||
x"da490513",
|
||||
x"2c8000ef",
|
||||
x"07200793",
|
||||
x"06f41663",
|
||||
x"ffff02b7",
|
||||
|
@ -284,133 +285,135 @@ x"00170713",
|
|||
x"01071713",
|
||||
x"00c686b3",
|
||||
x"01075713",
|
||||
x"e09ff06f",
|
||||
x"e05ff06f",
|
||||
x"ffe78613",
|
||||
x"0fd67613",
|
||||
x"00061a63",
|
||||
x"00375713",
|
||||
x"00178793",
|
||||
x"0ff7f793",
|
||||
x"dfdff06f",
|
||||
x"df9ff06f",
|
||||
x"00175713",
|
||||
x"ff1ff06f",
|
||||
x"1d4000ef",
|
||||
x"f485e6e3",
|
||||
x"1dc000ef",
|
||||
x"f485e4e3",
|
||||
x"00b41463",
|
||||
x"f53562e3",
|
||||
x"f53560e3",
|
||||
x"00100513",
|
||||
x"65c000ef",
|
||||
x"d9490513",
|
||||
x"258000ef",
|
||||
x"668000ef",
|
||||
x"da490513",
|
||||
x"260000ef",
|
||||
x"00000513",
|
||||
x"041000ef",
|
||||
x"17540e63",
|
||||
x"04d000ef",
|
||||
x"19540263",
|
||||
x"028ae263",
|
||||
x"17840e63",
|
||||
x"e48a0513",
|
||||
x"05940063",
|
||||
x"19840263",
|
||||
x"e58a0513",
|
||||
x"03940e63",
|
||||
x"03f00793",
|
||||
x"18f40463",
|
||||
x"18f40863",
|
||||
x"ffff1537",
|
||||
x"f6c50513",
|
||||
x"02c0006f",
|
||||
x"f7c50513",
|
||||
x"0280006f",
|
||||
x"07500793",
|
||||
x"02f40663",
|
||||
x"02f40463",
|
||||
x"07800793",
|
||||
x"16f40263",
|
||||
x"07300793",
|
||||
x"fef410e3",
|
||||
x"16f40663",
|
||||
x"ff7412e3",
|
||||
x"0044a403",
|
||||
x"02041063",
|
||||
x"ffff1537",
|
||||
x"ed050513",
|
||||
x"1fc000ef",
|
||||
x"f15ff06f",
|
||||
x"ee050513",
|
||||
x"208000ef",
|
||||
x"f19ff06f",
|
||||
x"00000513",
|
||||
x"5ec000ef",
|
||||
x"f09ff06f",
|
||||
x"5fc000ef",
|
||||
x"f0dff06f",
|
||||
x"ffff1537",
|
||||
x"eec50513",
|
||||
x"1e0000ef",
|
||||
x"efc50513",
|
||||
x"1ec000ef",
|
||||
x"00040513",
|
||||
x"164000ef",
|
||||
x"170000ef",
|
||||
x"ffff1537",
|
||||
x"ef450513",
|
||||
x"1cc000ef",
|
||||
x"f0450513",
|
||||
x"1d8000ef",
|
||||
x"00400537",
|
||||
x"150000ef",
|
||||
x"15c000ef",
|
||||
x"ffff1537",
|
||||
x"f0c50513",
|
||||
x"1b8000ef",
|
||||
x"f1c50513",
|
||||
x"1c4000ef",
|
||||
x"fa402983",
|
||||
x"fe09dee3",
|
||||
x"0ff9f993",
|
||||
x"00098513",
|
||||
x"118000ef",
|
||||
x"124000ef",
|
||||
x"07900793",
|
||||
x"eaf99ce3",
|
||||
x"550000ef",
|
||||
x"eaf99ee3",
|
||||
x"560000ef",
|
||||
x"00050663",
|
||||
x"00300513",
|
||||
x"1e4000ef",
|
||||
x"1f0000ef",
|
||||
x"ffff1537",
|
||||
x"f1850513",
|
||||
x"180000ef",
|
||||
x"01045b93",
|
||||
x"f2850513",
|
||||
x"18c000ef",
|
||||
x"01045b13",
|
||||
x"004009b7",
|
||||
x"00010db7",
|
||||
x"fff00d13",
|
||||
x"4d0000ef",
|
||||
x"400000ef",
|
||||
x"4e0000ef",
|
||||
x"410000ef",
|
||||
x"0d800513",
|
||||
x"3a8000ef",
|
||||
x"00098513",
|
||||
x"3b4000ef",
|
||||
x"388000ef",
|
||||
x"4d4000ef",
|
||||
x"00157b13",
|
||||
x"fe0b1ce3",
|
||||
x"fffb8b93",
|
||||
x"00098513",
|
||||
x"3c4000ef",
|
||||
x"394000ef",
|
||||
x"4e4000ef",
|
||||
x"00157513",
|
||||
x"fe051ce3",
|
||||
x"fffb0b13",
|
||||
x"01b989b3",
|
||||
x"fdab98e3",
|
||||
x"fdab18e3",
|
||||
x"ff002683",
|
||||
x"004009b7",
|
||||
x"00000d13",
|
||||
x"00c98d93",
|
||||
x"00000d93",
|
||||
x"00c98793",
|
||||
x"00dd0733",
|
||||
x"00072583",
|
||||
x"01bd0533",
|
||||
x"00fd0533",
|
||||
x"00d12623",
|
||||
x"00bb0b33",
|
||||
x"00bd8db3",
|
||||
x"67c000ef",
|
||||
x"004007b7",
|
||||
x"004d0d13",
|
||||
x"66c000ef",
|
||||
x"00c12683",
|
||||
x"fe8d60e3",
|
||||
x"00c78793",
|
||||
x"fc8d6ce3",
|
||||
x"4788d5b7",
|
||||
x"afe58593",
|
||||
x"00400537",
|
||||
x"654000ef",
|
||||
x"658000ef",
|
||||
x"00040593",
|
||||
x"00498513",
|
||||
x"648000ef",
|
||||
x"64c000ef",
|
||||
x"00898513",
|
||||
x"416005b3",
|
||||
x"63c000ef",
|
||||
x"41b005b3",
|
||||
x"640000ef",
|
||||
x"ffff1537",
|
||||
x"d7c50513",
|
||||
x"ed9ff06f",
|
||||
x"d8c50513",
|
||||
x"ecdff06f",
|
||||
x"00100513",
|
||||
x"eddff06f",
|
||||
x"ed1ff06f",
|
||||
x"0044a783",
|
||||
x"e60798e3",
|
||||
x"ffff1537",
|
||||
x"f2850513",
|
||||
x"ebdff06f",
|
||||
x"00100513",
|
||||
x"e61ff06f",
|
||||
x"e60794e3",
|
||||
x"ffff1537",
|
||||
x"f3850513",
|
||||
x"ea9ff06f",
|
||||
x"eb1ff06f",
|
||||
x"00100513",
|
||||
x"e59ff06f",
|
||||
x"ffff1537",
|
||||
x"f4850513",
|
||||
x"e9dff06f",
|
||||
x"f9402583",
|
||||
x"f9002503",
|
||||
x"f9402783",
|
||||
|
@ -435,7 +438,7 @@ x"07800513",
|
|||
x"ffff14b7",
|
||||
x"fbdff0ef",
|
||||
x"01c00413",
|
||||
x"f7848493",
|
||||
x"f8848493",
|
||||
x"ffc00993",
|
||||
x"008957b3",
|
||||
x"00f7f793",
|
||||
|
@ -477,13 +480,13 @@ x"ff010113",
|
|||
x"00812423",
|
||||
x"00050413",
|
||||
x"ffff1537",
|
||||
x"d3450513",
|
||||
x"d4450513",
|
||||
x"00112623",
|
||||
x"f91ff0ef",
|
||||
x"00241793",
|
||||
x"ffff1537",
|
||||
x"008787b3",
|
||||
x"f8850513",
|
||||
x"f9850513",
|
||||
x"00f50533",
|
||||
x"f79ff0ef",
|
||||
x"00800793",
|
||||
|
@ -574,7 +577,7 @@ x"00040737",
|
|||
x"00e7f7b3",
|
||||
x"04078263",
|
||||
x"ffff1537",
|
||||
x"d3c50513",
|
||||
x"d4c50513",
|
||||
x"e11ff0ef",
|
||||
x"00048513",
|
||||
x"d95ff0ef",
|
||||
|
@ -587,20 +590,21 @@ x"d65ff0ef",
|
|||
x"34302573",
|
||||
x"d75ff0ef",
|
||||
x"ffff1537",
|
||||
x"d9450513",
|
||||
x"da450513",
|
||||
x"dddff0ef",
|
||||
x"00440413",
|
||||
x"34141073",
|
||||
x"f39ff06f",
|
||||
x"fa800713",
|
||||
x"00072783",
|
||||
x"eff7f793",
|
||||
x"fbf7f793",
|
||||
x"00f72023",
|
||||
x"00008067",
|
||||
x"faa02623",
|
||||
x"fa802783",
|
||||
x"fe07cee3",
|
||||
x"fac02503",
|
||||
x"0ff57513",
|
||||
x"00008067",
|
||||
x"ff010113",
|
||||
x"00812423",
|
||||
|
@ -608,19 +612,19 @@ x"00050413",
|
|||
x"01055513",
|
||||
x"0ff57513",
|
||||
x"00112623",
|
||||
x"fd5ff0ef",
|
||||
x"fd1ff0ef",
|
||||
x"00845513",
|
||||
x"0ff57513",
|
||||
x"fc9ff0ef",
|
||||
x"fc5ff0ef",
|
||||
x"0ff47513",
|
||||
x"00812403",
|
||||
x"00c12083",
|
||||
x"01010113",
|
||||
x"fb5ff06f",
|
||||
x"fb1ff06f",
|
||||
x"fa800713",
|
||||
x"00072783",
|
||||
x"e1f7f793",
|
||||
x"1007e793",
|
||||
x"f877f793",
|
||||
x"0407e793",
|
||||
x"00f72023",
|
||||
x"00008067",
|
||||
x"fd010113",
|
||||
|
@ -655,13 +659,13 @@ x"00008067",
|
|||
x"f75ff0ef",
|
||||
x"00300513",
|
||||
x"012404b3",
|
||||
x"f19ff0ef",
|
||||
x"f15ff0ef",
|
||||
x"00048513",
|
||||
x"f25ff0ef",
|
||||
x"00000513",
|
||||
x"f09ff0ef",
|
||||
x"f05ff0ef",
|
||||
x"00050493",
|
||||
x"eedff0ef",
|
||||
x"ee9ff0ef",
|
||||
x"00c10793",
|
||||
x"008787b3",
|
||||
x"00978023",
|
||||
|
@ -672,19 +676,19 @@ x"ff010113",
|
|||
x"00112623",
|
||||
x"f2dff0ef",
|
||||
x"00600513",
|
||||
x"ed5ff0ef",
|
||||
x"ed1ff0ef",
|
||||
x"00c12083",
|
||||
x"01010113",
|
||||
x"eb5ff06f",
|
||||
x"eb1ff06f",
|
||||
x"fe010113",
|
||||
x"00112e23",
|
||||
x"f0dff0ef",
|
||||
x"00500513",
|
||||
x"eb5ff0ef",
|
||||
x"eb1ff0ef",
|
||||
x"00000513",
|
||||
x"eadff0ef",
|
||||
x"ea9ff0ef",
|
||||
x"00a12623",
|
||||
x"e91ff0ef",
|
||||
x"e8dff0ef",
|
||||
x"01c12083",
|
||||
x"00c12503",
|
||||
x"02010113",
|
||||
|
@ -698,8 +702,8 @@ x"fff00513",
|
|||
x"02078063",
|
||||
x"ec5ff0ef",
|
||||
x"00400513",
|
||||
x"e6dff0ef",
|
||||
x"e55ff0ef",
|
||||
x"e69ff0ef",
|
||||
x"e51ff0ef",
|
||||
x"fa1ff0ef",
|
||||
x"01e51513",
|
||||
x"41f55513",
|
||||
|
@ -723,8 +727,8 @@ x"00fb2023",
|
|||
x"00050413",
|
||||
x"02051863",
|
||||
x"ffff1537",
|
||||
x"d4850513",
|
||||
x"bbdff0ef",
|
||||
x"d5850513",
|
||||
x"bb9ff0ef",
|
||||
x"004005b7",
|
||||
x"00040513",
|
||||
x"e61ff0ef",
|
||||
|
@ -734,19 +738,19 @@ x"04f50863",
|
|||
x"00000513",
|
||||
x"0380006f",
|
||||
x"ffff1537",
|
||||
x"d6850513",
|
||||
x"b91ff0ef",
|
||||
x"d7850513",
|
||||
x"b8dff0ef",
|
||||
x"00400537",
|
||||
x"b15ff0ef",
|
||||
x"b11ff0ef",
|
||||
x"ffff1537",
|
||||
x"d7450513",
|
||||
x"b7dff0ef",
|
||||
x"d8450513",
|
||||
x"b79ff0ef",
|
||||
x"fe802783",
|
||||
x"00080737",
|
||||
x"00e7f7b3",
|
||||
x"00079663",
|
||||
x"00300513",
|
||||
x"bbdff0ef",
|
||||
x"bb9ff0ef",
|
||||
x"f19ff0ef",
|
||||
x"fa0502e3",
|
||||
x"ff1ff06f",
|
||||
|
@ -770,8 +774,8 @@ x"015484b3",
|
|||
x"00200513",
|
||||
x"fa0494e3",
|
||||
x"ffff1537",
|
||||
x"d7c50513",
|
||||
x"b01ff0ef",
|
||||
x"d8c50513",
|
||||
x"afdff0ef",
|
||||
x"02c12083",
|
||||
x"02812403",
|
||||
x"800007b7",
|
||||
|
@ -811,13 +815,13 @@ x"0007ca03",
|
|||
x"dd1ff0ef",
|
||||
x"d01ff0ef",
|
||||
x"00200513",
|
||||
x"ca9ff0ef",
|
||||
x"ca5ff0ef",
|
||||
x"00848933",
|
||||
x"00090513",
|
||||
x"cb1ff0ef",
|
||||
x"000a0513",
|
||||
x"c95ff0ef",
|
||||
x"c7dff0ef",
|
||||
x"c91ff0ef",
|
||||
x"c79ff0ef",
|
||||
x"dc9ff0ef",
|
||||
x"00157513",
|
||||
x"fe051ce3",
|
||||
|
@ -840,13 +844,13 @@ x"ff002403",
|
|||
x"00050463",
|
||||
x"40400437",
|
||||
x"ffff1537",
|
||||
x"d8050513",
|
||||
x"9e9ff0ef",
|
||||
x"00040513",
|
||||
x"96dff0ef",
|
||||
x"ffff1537",
|
||||
x"d9050513",
|
||||
x"9d5ff0ef",
|
||||
x"9e5ff0ef",
|
||||
x"00040513",
|
||||
x"969ff0ef",
|
||||
x"ffff1537",
|
||||
x"da050513",
|
||||
x"9d1ff0ef",
|
||||
x"00010737",
|
||||
x"fa002783",
|
||||
x"fe07cee3",
|
||||
|
@ -888,7 +892,7 @@ x"0a3e3e20",
|
|||
x"444c420a",
|
||||
x"4d203a56",
|
||||
x"20207261",
|
||||
x"30322032",
|
||||
x"30322034",
|
||||
x"480a3332",
|
||||
x"203a5657",
|
||||
x"00000020",
|
||||
|
|
|
@ -235,25 +235,25 @@ volatile uint32_t getting_exe;
|
|||
/**********************************************************************//**
|
||||
* Function prototypes
|
||||
**************************************************************************/
|
||||
void __attribute__((__interrupt__)) bootloader_trap_handler(void);
|
||||
void print_help(void);
|
||||
void start_app(int boot_xip);
|
||||
void get_exe(int src);
|
||||
void save_exe(void);
|
||||
void __attribute__((__interrupt__)) bootloader_trap_handler(void);
|
||||
void print_help(void);
|
||||
void start_app(int boot_xip);
|
||||
void get_exe(int src);
|
||||
void save_exe(void);
|
||||
uint32_t get_exe_word(int src, uint32_t addr);
|
||||
void system_error(uint8_t err_code);
|
||||
void print_hex_word(uint32_t num);
|
||||
void system_error(uint8_t err_code);
|
||||
void print_hex_word(uint32_t num);
|
||||
|
||||
// SPI flash driver functions
|
||||
int spi_flash_check(void);
|
||||
int spi_flash_check(void);
|
||||
uint8_t spi_flash_read_byte(uint32_t addr);
|
||||
void spi_flash_write_byte(uint32_t addr, uint8_t wdata);
|
||||
void spi_flash_write_word(uint32_t addr, uint32_t wdata);
|
||||
void spi_flash_erase_sector(uint32_t addr);
|
||||
void spi_flash_write_enable(void);
|
||||
void spi_flash_write_disable(void);
|
||||
uint32_t spi_flash_read_status(void);
|
||||
void spi_flash_write_addr(uint32_t addr);
|
||||
void spi_flash_write_byte(uint32_t addr, uint8_t wdata);
|
||||
void spi_flash_write_word(uint32_t addr, uint32_t wdata);
|
||||
void spi_flash_erase_sector(uint32_t addr);
|
||||
void spi_flash_write_enable(void);
|
||||
void spi_flash_write_disable(void);
|
||||
uint8_t spi_flash_read_status(void);
|
||||
void spi_flash_write_addr(uint32_t addr);
|
||||
|
||||
|
||||
/**********************************************************************//**
|
||||
|
@ -276,9 +276,9 @@ int main(void) {
|
|||
neorv32_cpu_csr_write(CSR_MTVEC, (uint32_t)(&bootloader_trap_handler));
|
||||
|
||||
#if (SPI_EN != 0)
|
||||
// setup SPI for 8-bit, clock-mode 0
|
||||
// setup SPI for clock-mode 0
|
||||
if (neorv32_spi_available()) {
|
||||
neorv32_spi_setup(SPI_FLASH_CLK_PRSC, 0, 0, 0, 0, 0);
|
||||
neorv32_spi_setup(SPI_FLASH_CLK_PRSC, 0, 0, 0, 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -781,7 +781,7 @@ uint8_t spi_flash_read_byte(uint32_t addr) {
|
|||
|
||||
neorv32_spi_trans(SPI_FLASH_CMD_READ);
|
||||
spi_flash_write_addr(addr);
|
||||
uint8_t rdata = (uint8_t)neorv32_spi_trans(0);
|
||||
uint8_t rdata = neorv32_spi_trans(0);
|
||||
|
||||
neorv32_spi_cs_dis();
|
||||
|
||||
|
@ -902,13 +902,13 @@ void spi_flash_write_disable(void) {
|
|||
*
|
||||
* @return SPI flash status register (32-bit zero-extended).
|
||||
**************************************************************************/
|
||||
uint32_t spi_flash_read_status(void) {
|
||||
uint8_t spi_flash_read_status(void) {
|
||||
|
||||
#if (SPI_EN != 0)
|
||||
neorv32_spi_cs_en(SPI_FLASH_CS);
|
||||
|
||||
neorv32_spi_trans(SPI_FLASH_CMD_READ_STATUS);
|
||||
uint32_t res = neorv32_spi_trans(0);
|
||||
uint8_t res = neorv32_spi_trans(0);
|
||||
|
||||
neorv32_spi_cs_dis();
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue