| 
									
										
										
										
											2005-09-20 14:32:37 -05:00
										 |  |  | #ifndef _ASM_POWERPC_VGA_H_
 | 
					
						
							|  |  |  | #define _ASM_POWERPC_VGA_H_
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef __KERNEL__
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  *	Access to VGA videoram | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  *	(c) 1998 Martin Mares <mj@ucw.cz> | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <asm/io.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #if defined(CONFIG_VGA_CONSOLE) || defined(CONFIG_MDA_CONSOLE)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #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) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     st_le16(addr, val); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | static inline u16 scr_readw(volatile const u16 *addr) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     return ld_le16(addr); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define VT_BUF_HAVE_MEMCPYW
 | 
					
						
							|  |  |  | #define scr_memcpyw	memcpy
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif /* !CONFIG_VGA_CONSOLE && !CONFIG_MDA_CONSOLE */
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-09-20 14:32:37 -05:00
										 |  |  | #ifdef __powerpc64__
 | 
					
						
							| 
									
										
										
											
												[PATCH] vgacon: make VGA_MAP_MEM take size, remove extra use
VGA_MAP_MEM translates to ioremap() on some architectures.  It makes sense
to do this to vga_vram_base, because we're going to access memory between
vga_vram_base and vga_vram_end.
But it doesn't really make sense to map starting at vga_vram_end, because
we aren't going to access memory starting there.  On ia64, which always has
to be different, ioremapping vga_vram_end gives you something completely
incompatible with ioremapped vga_vram_start, so vga_vram_size ends up being
nonsense.
As a bonus, we often know the size up front, so we can use ioremap()
correctly, rather than giving it a zero size.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
											
										 
											2006-06-22 14:47:32 -07:00
										 |  |  | #define VGA_MAP_MEM(x,s) ((unsigned long) ioremap((x), s))
 | 
					
						
							| 
									
										
										
										
											2005-09-20 14:32:37 -05:00
										 |  |  | #else
 | 
					
						
							| 
									
										
										
										
											2014-10-27 20:56:14 +11:00
										 |  |  | #define VGA_MAP_MEM(x,s) (x)
 | 
					
						
							| 
									
										
										
										
											2005-09-20 14:32:37 -05:00
										 |  |  | #endif
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | #define vga_readb(x) (*(x))
 | 
					
						
							|  |  |  | #define vga_writeb(x,y) (*(y) = (x))
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-09-20 14:32:37 -05:00
										 |  |  | #endif	/* __KERNEL__ */
 | 
					
						
							|  |  |  | #endif	/* _ASM_POWERPC_VGA_H_ */
 |