xref: /rk3399_ARM-atf/drivers/nxp/flexspi/nor/flexspi_nor.c (revision 9719e19a977df3e8bf7567b3c0e1d6b2ebc5b46f)
1*b525a8f0SKuldeep Singh /*
2*b525a8f0SKuldeep Singh  * Copyright 2020 NXP
3*b525a8f0SKuldeep Singh  *
4*b525a8f0SKuldeep Singh  * SPDX-License-Identifier: BSD-3-Clause
5*b525a8f0SKuldeep Singh  *
6*b525a8f0SKuldeep Singh  */
7*b525a8f0SKuldeep Singh 
8*b525a8f0SKuldeep Singh #include <assert.h>
9*b525a8f0SKuldeep Singh 
10*b525a8f0SKuldeep Singh #include <fspi_api.h>
11*b525a8f0SKuldeep Singh #include <lib/mmio.h>
12*b525a8f0SKuldeep Singh #include <lib/xlat_tables/xlat_tables_v2.h>
13*b525a8f0SKuldeep Singh 
flexspi_nor_io_setup(uintptr_t nxp_flexspi_flash_addr,size_t nxp_flexspi_flash_size,uint32_t fspi_base_reg_addr)14*b525a8f0SKuldeep Singh int flexspi_nor_io_setup(uintptr_t nxp_flexspi_flash_addr,
15*b525a8f0SKuldeep Singh 			 size_t nxp_flexspi_flash_size, uint32_t fspi_base_reg_addr)
16*b525a8f0SKuldeep Singh {
17*b525a8f0SKuldeep Singh 	int ret = 0;
18*b525a8f0SKuldeep Singh 
19*b525a8f0SKuldeep Singh 	ret = fspi_init(fspi_base_reg_addr, nxp_flexspi_flash_addr);
20*b525a8f0SKuldeep Singh 	/* Adding NOR Memory Map in XLAT Table */
21*b525a8f0SKuldeep Singh 	mmap_add_region(nxp_flexspi_flash_addr, nxp_flexspi_flash_addr,
22*b525a8f0SKuldeep Singh 			nxp_flexspi_flash_size, MT_MEMORY | MT_RW);
23*b525a8f0SKuldeep Singh 
24*b525a8f0SKuldeep Singh 	return ret;
25*b525a8f0SKuldeep Singh }
26