GNU Linux-libre 4.14.332-gnu1
[releases.git] / arch / sh / include / mach-ecovec24 / mach / romimage.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifdef __ASSEMBLY__
3
4 /* EcoVec board specific boot code:
5  * converts the "partner-jet-script.txt" script into assembly
6  * the assembly code is the first code to be executed in the romImage
7  */
8
9 #include <asm/romimage-macros.h>
10 #include <mach/partner-jet-setup.txt>
11
12         /* execute icbi after enabling cache */
13         mov.l   1f, r0
14         icbi    @r0
15
16         /* jump to cached area */
17         mova    2f, r0
18         jmp     @r0
19         nop
20
21         .align 2
22 1 :     .long 0xa8000000
23 2 :
24
25 #else /* __ASSEMBLY__ */
26
27 /* Ecovec board specific information:
28  *
29  * Set the following to enable MMCIF boot from the MMC card in CN12:
30  *
31  * DS1.5 = OFF (SH BOOT pin set to L)
32  * DS2.6 = OFF (Select MMCIF on CN12 instead of SDHI1)
33  * DS2.7 = ON  (Select MMCIF on CN12 instead of SDHI1)
34  *
35  */
36 #define HIZCRA          0xa4050158
37 #define PGDR            0xa405012c
38
39 static inline void mmcif_update_progress(int nr)
40 {
41         /* disable Hi-Z for LED pins */
42         __raw_writew(__raw_readw(HIZCRA) & ~(1 << 1), HIZCRA);
43
44         /* update progress on LED4, LED5, LED6 and LED7 */
45         __raw_writeb(1 << (nr - 1), PGDR);
46 }
47
48 #endif /* __ASSEMBLY__ */