/*
 * \file stm32f10x_sflash.h
 * \brief
 *    Flash read/write functionality for STM32F10x
 *
 * This file is part of the driver project
 *
 * Copyright (C) 2014 Christos Choutouridis <houtouridis.ch@gmail.com>
 * All Rights Reserved.
 *
 * NOTICE:  All information contained herein is, and remains
 * the property of Christos Choutouridis. The intellectual
 * and technical concepts contained herein are proprietary to
 * Christos Choutouridis and are protected by copyright law.
 * Dissemination of this information or reproduction of this material
 * is strictly forbidden unless prior written permission is obtained
 * from Christos Choutouridis.
 *
 * Author:     Christos Choutouridis <houtouridis.ch@gmail.com>
 * Date:       5/2014
 *
 */

#ifndef __stm32f10x_sflash_h__
#define __stm32f10x_sflash_h__

#include "stm32f10x_flash.h"
#include <stdint.h>

#include <tbx_ioctl.h>
#include <tbx_types.h>

/*
 * ========== Data types =============
 */
typedef FLASH_Status    FLASH_status_t;
typedef uint32_t        FLASH_add_t;
typedef uint16_t        FLASH_data_t;


/*
 * ========== Public API ================
 */
drv_status_en FLASH_read (FLASH_add_t address, void *pdata, int size);
drv_status_en FLASH_write (FLASH_add_t address, void *pdata, int size);
drv_status_en FLASH_ioctl (ioctl_cmd_t cmd, ioctl_buf_t buf);

#endif	// #ifndef __stm32f10x_flash_h__
