162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci#ifdef __ASSEMBLY__ 362306a36Sopenharmony_ci 462306a36Sopenharmony_ci/* EcoVec board specific boot code: 562306a36Sopenharmony_ci * converts the "partner-jet-script.txt" script into assembly 662306a36Sopenharmony_ci * the assembly code is the first code to be executed in the romImage 762306a36Sopenharmony_ci */ 862306a36Sopenharmony_ci 962306a36Sopenharmony_ci#include <asm/romimage-macros.h> 1062306a36Sopenharmony_ci#include <mach/partner-jet-setup.txt> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci /* execute icbi after enabling cache */ 1362306a36Sopenharmony_ci mov.l 1f, r0 1462306a36Sopenharmony_ci icbi @r0 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci /* jump to cached area */ 1762306a36Sopenharmony_ci mova 2f, r0 1862306a36Sopenharmony_ci jmp @r0 1962306a36Sopenharmony_ci nop 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci .align 2 2262306a36Sopenharmony_ci1 : .long 0xa8000000 2362306a36Sopenharmony_ci2 : 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci#else /* __ASSEMBLY__ */ 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci/* Ecovec board specific information: 2862306a36Sopenharmony_ci * 2962306a36Sopenharmony_ci * Set the following to enable MMCIF boot from the MMC card in CN12: 3062306a36Sopenharmony_ci * 3162306a36Sopenharmony_ci * DS1.5 = OFF (SH BOOT pin set to L) 3262306a36Sopenharmony_ci * DS2.6 = OFF (Select MMCIF on CN12 instead of SDHI1) 3362306a36Sopenharmony_ci * DS2.7 = ON (Select MMCIF on CN12 instead of SDHI1) 3462306a36Sopenharmony_ci * 3562306a36Sopenharmony_ci */ 3662306a36Sopenharmony_ci#define HIZCRA 0xa4050158 3762306a36Sopenharmony_ci#define PGDR 0xa405012c 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_cistatic inline void mmcif_update_progress(int nr) 4062306a36Sopenharmony_ci{ 4162306a36Sopenharmony_ci /* disable Hi-Z for LED pins */ 4262306a36Sopenharmony_ci __raw_writew(__raw_readw(HIZCRA) & ~(1 << 1), HIZCRA); 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ci /* update progress on LED4, LED5, LED6 and LED7 */ 4562306a36Sopenharmony_ci __raw_writeb(1 << (nr - 1), PGDR); 4662306a36Sopenharmony_ci} 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci#endif /* __ASSEMBLY__ */ 49