xref: /rk3399_rockchip-uboot/board/micronas/vct/ebi.c (revision 326ea986ac150acdc7656d57fca647db80b50158)
150752790SStefan Roese /*
250752790SStefan Roese  * (C) Copyright 2008 Stefan Roese <sr@denx.de>, DENX Software Engineering
350752790SStefan Roese  *
450752790SStefan Roese  * Copyright (C) 2006 Micronas GmbH
550752790SStefan Roese  *
6*1a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
750752790SStefan Roese  */
850752790SStefan Roese 
950752790SStefan Roese #include <common.h>
1050752790SStefan Roese #include <asm/io.h>
1150752790SStefan Roese #include "vct.h"
1250752790SStefan Roese 
ebi_initialize(void)1350752790SStefan Roese int ebi_initialize(void)
1450752790SStefan Roese {
1550752790SStefan Roese #if defined(CONFIG_VCT_NOR)
1650752790SStefan Roese 	if (ebi_init_nor_flash())
1750752790SStefan Roese 		return -1;
1850752790SStefan Roese #endif
1950752790SStefan Roese 
2050752790SStefan Roese #if defined(CONFIG_VCT_ONENAND)
2150752790SStefan Roese 	if (ebi_init_onenand())
2250752790SStefan Roese 		return -1;
2350752790SStefan Roese #endif
2450752790SStefan Roese 
2550752790SStefan Roese #if defined(CONFIG_DRIVER_SMC911X)
2650752790SStefan Roese 	if (ebi_init_smc911x())
2750752790SStefan Roese 		return -1;
2850752790SStefan Roese #endif
2950752790SStefan Roese 
3050752790SStefan Roese 	reg_write(EBI_CTRL_SIG_ACTLV(EBI_BASE), 0x00004100);
3150752790SStefan Roese 
3250752790SStefan Roese 	ebi_wait();
3350752790SStefan Roese 
3450752790SStefan Roese 	return 0;
3550752790SStefan Roese }
36