cancel
Showing results for 
Search instead for 
Did you mean: 
Newbie
Newbie
10,414 Views
Registered: ‎03-07-2016

How to add support for Macronix QSPI flash, 128Mb?

Our application is used Zynq-7000series,  XC7Z035-2FFG900I, and there is an external QSPI flash, Macronix MX25L12835F, needed to program. However, I checked the Answer#50991, Xilinx Unverified this QSPI Flash Device, didn't support it, even I installed the latest Vivado version, 2015.4.

 

I found an AR#65425 - "2015.3 SDK FSBL: How to add support for Macronix QSPI flash in FSBL?", and there is a zip attach that included qspi.c and qspi.h. These two files shown the codes had added 128Mb in one of optionals.

 

  1. 	/* file: qspi.c
    	 * Deduce flash Size
    	 */
    	if (ReadBuffer[3] == FLASH_SIZE_ID_128M) {
    		QspiFlashSize = FLASH_SIZE_128M;
    		fsbl_printf(DEBUG_INFO, "128M Bits\r\n");
    	} else if (ReadBuffer[3] == FLASH_SIZE_ID_256M) {
    		QspiFlashSize = FLASH_SIZE_256M;
    		fsbl_printf(DEBUG_INFO, "256M Bits\r\n");
    	} else if (ReadBuffer[3] == FLASH_SIZE_ID_512M) {
    		QspiFlashSize = FLASH_SIZE_512M;
    		fsbl_printf(DEBUG_INFO, "512M Bits\r\n");
    	} else if (ReadBuffer[3] == FLASH_SIZE_ID_1G) {
    		QspiFlashSize = FLASH_SIZE_1G;
    		fsbl_printf(DEBUG_INFO, "1G Bits\r\n");
    	} else if (ReadBuffer[3] == FLASH_SIZE_IDM_512M) {
    		QspiFlashSize = FLASH_SIZE_512M;
    		fsbl_printf(DEBUG_INFO, "512M Bits\r\n");
    	}

 

2.

/*
* file: qspi.h
*
*/

#define MICRON_ID		0x20
#define SPANSION_ID		0x01
#define WINBOND_ID		0xEF
#define MACRONIX_ID		0xC2

#define FLASH_SIZE_ID_128M		0x18
#define FLASH_SIZE_ID_256M		0x19
#define FLASH_SIZE_IDM_512M		0x1A
#define FLASH_SIZE_ID_512M		0x20
#define FLASH_SIZE_ID_1G		0x21

/*
 * Size in bytes
 */
#define FLASH_SIZE_128M			0x1000000
#define FLASH_SIZE_256M			0x2000000
#define FLASH_SIZE_512M			0x4000000
#define FLASH_SIZE_1G			0x8000000

 

My question is how can we use 128Mb option for Macronix MX25L12835F in FSBL? 

 

Another question is if I just want to program this flash via JTGA, how do I imprement this request used by hardware manager of Vivado SDK?

 

 

Thanks

David

 

0 Kudos
2 Replies
Highlighted
Community Manager
Community Manager
10,166 Views
Registered: ‎07-23-2012

Re: How to add support for Macronix QSPI flash, 128Mb?

You can refer to http://www.xilinx.com/Attachment/QSPI_FLASH_support_guide_rev1.0.pdf for additional help.
-----------------------------------------------------------------------------------------------
Please mark the post as "Accept as solution" if the information provided answers your query/resolves your issue.

Give Kudos to a post which you think is helpful.
0 Kudos
Highlighted
Newbie
Newbie
10,064 Views
Registered: ‎03-07-2016

Re: How to add support for Macronix QSPI flash, 128Mb?

No, no one could help me to solve my request..... still waiting....

 

 

0 Kudos