mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-28 01:51:33 +00:00
16bit read/write little endian
This commit is contained in:
parent
9d1d6a34d2
commit
0643631aa1
2 changed files with 37 additions and 0 deletions
|
@ -117,3 +117,36 @@ clear_bss:
|
||||||
3: /* jumping to board_init */
|
3: /* jumping to board_init */
|
||||||
brai board_init
|
brai board_init
|
||||||
1: bri 1b
|
1: bri 1b
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Read 16bit little endian
|
||||||
|
*/
|
||||||
|
.text
|
||||||
|
.global in16
|
||||||
|
.ent in16
|
||||||
|
.align 2
|
||||||
|
in16: lhu r3, r0, r5
|
||||||
|
bslli r4, r3, 8
|
||||||
|
bsrli r3, r3, 8
|
||||||
|
andi r4, r4, 0xffff
|
||||||
|
or r3, r3, r4
|
||||||
|
rtsd r15, 8
|
||||||
|
sext16 r3, r3
|
||||||
|
.end in16
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Write 16bit little endian
|
||||||
|
* first parameter(r5) - address, second(r6) - short value
|
||||||
|
*/
|
||||||
|
.text
|
||||||
|
.global out16
|
||||||
|
.ent out16
|
||||||
|
.align 2
|
||||||
|
out16: bslli r3, r6, 8
|
||||||
|
bsrli r6, r6, 8
|
||||||
|
andi r3, r3, 0xffff
|
||||||
|
or r3, r3, r6
|
||||||
|
sh r3, r0, r5
|
||||||
|
rtsd r15, 8
|
||||||
|
or r0, r0, r0
|
||||||
|
.end out16
|
||||||
|
|
|
@ -402,6 +402,10 @@ void ppcDcbi(unsigned long value);
|
||||||
void ppcSync(void);
|
void ppcSync(void);
|
||||||
void ppcDcbz(unsigned long value);
|
void ppcDcbz(unsigned long value);
|
||||||
#endif
|
#endif
|
||||||
|
#if defined (CONFIG_MICROBLAZE)
|
||||||
|
unsigned short in16(unsigned int);
|
||||||
|
void out16(unsigned int, unsigned short value);
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined (CONFIG_MPC83XX)
|
#if defined (CONFIG_MPC83XX)
|
||||||
void ppcDWload(unsigned int *addr, unsigned int *ret);
|
void ppcDWload(unsigned int *addr, unsigned int *ret);
|
||||||
|
|
Loading…
Add table
Reference in a new issue