Subversion Repositories HelenOS-historic

Compare Revisions

Ignore whitespace Rev 1381 → Rev 1382

/kernel/trunk/arch/sparc64/Makefile.inc
65,7 → 65,6
#
 
CONFIG_FB = y
CONFIG_FB_MAP_ARCH = y
 
## Compile with support for i8042 controller.
#
/kernel/trunk/arch/sparc64/src/console.c
71,12 → 71,6
ofw_console_active = 1;
}
 
void fb_map_arch(__address virtaddr, __address physaddr, size_t size)
{
dtlb_insert_mapping(virtaddr, physaddr, PAGESIZE_512K, true, false);
dtlb_insert_mapping(virtaddr + 512*1024, physaddr + 512*1024, PAGESIZE_512K, true, false);
}
 
/** Initialize kernel console to use framebuffer and keyboard directly. */
void standalone_sparc64_console_init(void)
{
/kernel/trunk/arch/sparc64/src/mm/page.c
27,9 → 27,29
*/
 
#include <arch/mm/page.h>
#include <arch/mm/tlb.h>
#include <genarch/mm/page_ht.h>
#include <mm/frame.h>
#include <bitops.h>
 
void page_arch_init(void)
{
page_mapping_operations = &ht_mapping_operations;
}
 
__address hw_map(__address physaddr, size_t size)
{
unsigned int order;
if (size <= FRAME_SIZE)
order = 0;
else
order = (fnzb32(size - 1) + 1) - FRAME_WIDTH;
__address virtaddr = PA2KA(PFN2ADDR(frame_alloc(order, FRAME_KA)));
dtlb_insert_mapping(virtaddr, physaddr, PAGESIZE_512K, true, false);
dtlb_insert_mapping(virtaddr + 512 * 1024, physaddr + 512 * 1024, PAGESIZE_512K, true, false);
return virtaddr;
}