Skip to content
Snippets Groups Projects
Commit c0ec406c authored by Ralf Baechle's avatar Ralf Baechle
Browse files

Fix endianess bugs.

parent 3ef33e68
No related branches found
No related tags found
No related merge requests found
...@@ -6,6 +6,8 @@ ...@@ -6,6 +6,8 @@
#ifndef _ASM_VGA_H #ifndef _ASM_VGA_H
#define _ASM_VGA_H #define _ASM_VGA_H
#include <asm/byteorder.h>
/* /*
* On the PC, we can just recalculate addresses and then * On the PC, we can just recalculate addresses and then
* access the videoram directly without any black magic. * access the videoram directly without any black magic.
...@@ -16,4 +18,27 @@ ...@@ -16,4 +18,27 @@
#define vga_readb(x) (*(x)) #define vga_readb(x) (*(x))
#define vga_writeb(x,y) (*(y) = (x)) #define vga_writeb(x,y) (*(y) = (x))
#define VT_BUF_HAVE_RW
/*
* These are only needed for supporting VGA or MDA text mode, which use little
* endian byte ordering.
* In other cases, we can optimize by using native byte ordering and
* <linux/vt_buffer.h> has already done the right job for us.
*/
static inline void scr_writew(u16 val, volatile u16 *addr)
{
*addr = cpu_to_le16(val);
}
static inline u16 scr_readw(volatile const u16 *addr)
{
return le16_to_cpu(*addr);
}
#define scr_memcpyw(d, s, c) memcpy(d, s, c)
#define scr_memmovew(d, s, c) memmove(d, s, c)
#define VT_BUF_HAVE_MEMCPYW
#define VT_BUF_HAVE_MEMMOVEW
#endif /* _ASM_VGA_H */ #endif /* _ASM_VGA_H */
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment