git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@9523 35acf78f-673a-0410-8e92-d51de3d6d3f4

This commit is contained in:
Giovanni Di Sirio 2016-05-26 07:57:56 +00:00
parent 063a18e344
commit 249d014e0b
2 changed files with 26 additions and 7 deletions

View File

@ -660,9 +660,6 @@ static flash_error_t start_erase_all(void *instance) {
/* Bulk erase command.*/
flash_cmd(devp, M25Q_CMD_BULK_ERASE);
/* Ready state again.*/
devp->state = FLASH_READY;
/* Bus released.*/
flash_bus_release(devp);
@ -694,9 +691,6 @@ static flash_error_t start_erase_sector(void *instance, flash_sector_t sector) {
/* Sector erase command.*/
flash_cmd_addr(devp, M25Q_CMD_SECTOR_ERASE, addr);
/* Ready state again.*/
devp->state = FLASH_READY;
/* Bus released.*/
flash_bus_release(devp);

View File

@ -35,7 +35,21 @@ qspi_command_t cmd_read_id = {
0
};
uint8_t buffer[512];
/*
* Generic buffer.
*/
uint8_t buffer[2048];
const uint8_t pattern[128] = {
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
};
M25QDriver m25q;
@ -92,6 +106,17 @@ int main(void) {
m25qObjectInit(&m25q);
m25qStart(&m25q, &m25qcfg1);
/* Erasing the first sector and waiting for completion.*/
(void) flashStartEraseSector(&m25q, 0);
err = flashWaitErase((BaseFlash *)&m25q);
if (err != FLASH_NO_ERROR)
chSysHalt("erase error");
/* Programming a pattern.*/
err = flashProgram(&m25q, 0, pattern, 128);
if (err != FLASH_NO_ERROR)
chSysHalt("program error");
/* Reading it back.*/
err = flashRead(&m25q, 0, buffer, 128);
if (err != FLASH_NO_ERROR)