| /******************************************************************************* |
| * Copyright 2016, MARVELL SEMICONDUCTOR, LTD. * |
| * THIS CODE CONTAINS CONFIDENTIAL INFORMATION OF MARVELL. * |
| * NO RIGHTS ARE GRANTED HEREIN UNDER ANY PATENT, MASK WORK RIGHT OR COPYRIGHT * |
| * OF MARVELL OR ANY THIRD PARTY. MARVELL RESERVES THE RIGHT AT ITS SOLE * |
| * DISCRETION TO REQUEST THAT THIS CODE BE IMMEDIATELY RETURNED TO MARVELL. * |
| * THIS CODE IS PROVIDED "AS IS". MARVELL MAKES NO WARRANTIES, EXPRESSED, * |
| * IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, COMPLETENESS OR PERFORMANCE. * |
| * * |
| * MARVELL COMPRISES MARVELL TECHNOLOGY GROUP LTD. (MTGL) AND ITS SUBSIDIARIES, * |
| * MARVELL INTERNATIONAL LTD. (MIL), MARVELL TECHNOLOGY, INC. (MTI), MARVELL * |
| * SEMICONDUCTOR, INC. (MSI), MARVELL ASIA PTE LTD. (MAPL), MARVELL JAPAN K.K. * |
| * (MJKK), MARVELL ISRAEL LTD. (MSIL). * |
| *******************************************************************************/ |
| #ifndef _FLASH_OP_H_ |
| #define _FLASH_OP_H_ |
| |
| #define FLASH_SWITCH_PART_NOEXIST (-1) |
| #define FLASH_OP_ERR (-2) |
| |
| void set_flash_parameters(int blocksize, int pagesize, int addrcycle); |
| inline int get_block_size(); |
| int get_page_size(); |
| int get_addr_cycle(); |
| int get_boot_partition_number(void); |
| void init_flash(); |
| int switch_flash_part(unsigned int part); |
| unsigned int flash_dev_id_inc(unsigned int dev_id); |
| long long read_flash(long long start, unsigned int size, unsigned char *buff); |
| long long read_flash_from_part(unsigned int part, long long start, unsigned int size, unsigned char *buff); |
| long long get_flash_capacity(void); |
| long long write_flash(long long start, unsigned int size, unsigned char *buff); |
| #endif |