Files
kernel_common_drivers/include/linux/amlogic/aml_storage.h
T
Feng Chen cf7c866d33 spinor: update spi-nor layer [1/1]
PD#SWPL-164866

Problem:
update spi-nor layer.

Solution:
update spi-nor layer.

Verify:
C3_AW409

Change-Id: Ic93021b04cc0721d57c9c5c88e5f9e0abcdd090e
Signed-off-by: Feng Chen <feng.chen@amlogic.com>
2024-05-30 06:02:50 -07:00

78 lines
2.0 KiB
C

/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
/*
* Copyright (c) 2019 Amlogic, Inc. All rights reserved.
*/
#ifndef __AML_STORAGE_H_
#define __AML_STORAGE_H_
#define BL2E_STORAGE_PARAM_SIZE (0x80)
#define BOOT_FIRST_BLOB_SIZE (254 * 1024)
#define BOOT_FILLER_SIZE (4 * 1024)
#define BOOT_RESERVED_SIZE (4 * 1024)
#define BOOT_RANDOM_NONCE (16)
#define BOOT_BL2E_SIZE (66672) //74864-8K
#define BOOT_EBL2E_SIZE \
(BOOT_FILLER_SIZE + BOOT_RESERVED_SIZE + BOOT_BL2E_SIZE)
#define BOOT_BL2X_SIZE (66672)
#define MAX_BOOT_AREA_ENTRIES (8)
#define BL2_CORE_BASE_OFFSET_EMMC (0x200000)
#define BOOT_AREA_BB1ST (0)
#define BOOT_AREA_BL2E (1)
#define BOOT_AREA_BL2X (2)
#define BOOT_AREA_DDRFIP (3)
#define BOOT_AREA_DEVFIP (4)
#define BOOT_AREA_INVALID (MAX_BOOT_AREA_ENTRIES)
#define BAE_BB1ST "1STBLOB"
#define BAE_BL2E "BL2E"
#define BAE_BL2X "BL2X"
#define BAE_DDRFIP "DDRFIP"
#define BAE_DEVFIP "DEVFIP"
/*cmdline_parser - MTD Master Name*/
#define AML_MTD_NAME "aml-mtd"
struct boot_area_entry {
char name[11];
unsigned char idx;
u64 offset;
u64 size;
};
struct boot_layout {
struct boot_area_entry *boot_entry;
};
struct storage_boot_entry {
unsigned int offset;
unsigned int size;
};
struct nand_startup_parameter {
int page_size;
int block_size;
int layout_reserve_size;
int pages_per_block;
int setup_data;
int page0_disable;
};
union storage_independent_parameter {
struct nand_startup_parameter nsp;
};
struct storage_startup_parameter {
unsigned char boot_device;
unsigned char boot_seq;
unsigned char boot_backups;
unsigned char reserved;
struct storage_boot_entry boot_entry[MAX_BOOT_AREA_ENTRIES];
union storage_independent_parameter sip;
};
extern struct storage_startup_parameter g_ssp;
int aml_nand_param_check_and_layout_init(struct mtd_info *mtd);
/**sc2 new layout**/
#endif /* __AML_STORAGE_H_ */