xref: /nrf52832-nimble/rt-thread/components/drivers/spi/spi_flash_sfud.h (revision 104654410c56c573564690304ae786df310c91fc)
1*10465441SEvalZero /*
2*10465441SEvalZero  * Copyright (c) 2006-2018, RT-Thread Development Team
3*10465441SEvalZero  *
4*10465441SEvalZero  * SPDX-License-Identifier: Apache-2.0
5*10465441SEvalZero  *
6*10465441SEvalZero  * Change Logs:
7*10465441SEvalZero  * Date           Author       Notes
8*10465441SEvalZero  * 2016-09-28     armink       first version.
9*10465441SEvalZero  */
10*10465441SEvalZero 
11*10465441SEvalZero #ifndef _SPI_FLASH_SFUD_H_
12*10465441SEvalZero #define _SPI_FLASH_SFUD_H_
13*10465441SEvalZero 
14*10465441SEvalZero #include <rtthread.h>
15*10465441SEvalZero #include <rtdevice.h>
16*10465441SEvalZero #include "./sfud/inc/sfud.h"
17*10465441SEvalZero #include "spi_flash.h"
18*10465441SEvalZero 
19*10465441SEvalZero /**
20*10465441SEvalZero  * Probe SPI flash by SFUD(Serial Flash Universal Driver) driver library and though SPI device.
21*10465441SEvalZero  *
22*10465441SEvalZero  * @param spi_flash_dev_name the name which will create SPI flash device
23*10465441SEvalZero  * @param spi_dev_name using SPI device name
24*10465441SEvalZero  *
25*10465441SEvalZero  * @return probed SPI flash device, probe failed will return RT_NULL
26*10465441SEvalZero  */
27*10465441SEvalZero rt_spi_flash_device_t rt_sfud_flash_probe(const char *spi_flash_dev_name, const char *spi_dev_name);
28*10465441SEvalZero 
29*10465441SEvalZero /**
30*10465441SEvalZero  * Delete SPI flash device
31*10465441SEvalZero  *
32*10465441SEvalZero  * @param spi_flash_dev SPI flash device
33*10465441SEvalZero  *
34*10465441SEvalZero  * @return the operation status, RT_EOK on successful
35*10465441SEvalZero  */
36*10465441SEvalZero rt_err_t rt_sfud_flash_delete(rt_spi_flash_device_t spi_flash_dev);
37*10465441SEvalZero 
38*10465441SEvalZero /**
39*10465441SEvalZero  * Find sfud flash device
40*10465441SEvalZero  *
41*10465441SEvalZero  * @param spi_dev_name using SPI device name
42*10465441SEvalZero  *
43*10465441SEvalZero  * @return sfud flash device if success, otherwise return RT_NULL
44*10465441SEvalZero  */
45*10465441SEvalZero sfud_flash_t rt_sfud_flash_find(const char *spi_dev_name);
46*10465441SEvalZero 
47*10465441SEvalZero #endif /* _SPI_FLASH_SFUD_H_ */
48