Index: kernel/genarch/src/fb/bfb.c
===================================================================
--- kernel/genarch/src/fb/bfb.c	(revision 63e27efdf2fe6d3fa02bbb5ee1da00df5cc07e9d)
+++ kernel/genarch/src/fb/bfb.c	(revision 338d54a7c4a77bbe3bf0bdff3c750bad8bb1ea9a)
@@ -61,5 +61,5 @@
 	    (bfb_bpp == 0) || (bfb_scanline == 0))
 		return false;
-	
+
 	fb_properties_t bfb_props = {
 		.addr = bfb_addr,
@@ -69,5 +69,5 @@
 		.scan = bfb_scanline
 	};
-	
+
 	switch (bfb_bpp) {
 	case 8:
@@ -92,9 +92,9 @@
 		return false;
 	}
-	
+
 	outdev_t *fbdev = fb_init(&bfb_props);
 	if (!fbdev)
 		return false;
-	
+
 	stdout_wire(fbdev);
 	return true;
Index: kernel/genarch/src/fb/fb.c
===================================================================
--- kernel/genarch/src/fb/fb.c	(revision 63e27efdf2fe6d3fa02bbb5ee1da00df5cc07e9d)
+++ kernel/genarch/src/fb/fb.c	(revision 338d54a7c4a77bbe3bf0bdff3c750bad8bb1ea9a)
@@ -84,38 +84,38 @@
 typedef struct {
 	SPINLOCK_DECLARE(lock);
-	
+
 	parea_t parea;
-	
+
 	uint8_t *addr;
 	uint16_t *backbuf;
 	uint8_t *glyphs;
 	uint8_t *bgscan;
-	
+
 	rgb_conv_t rgb_conv;
-	
+
 	unsigned int xres;
 	unsigned int yres;
-	
+
 	/** Number of rows that fit on framebuffer */
 	unsigned int rowtrim;
-	
+
 	unsigned int scanline;
 	unsigned int glyphscanline;
-	
+
 	unsigned int pixelbytes;
 	unsigned int glyphbytes;
 	unsigned int bgscanbytes;
-	
+
 	/** Number of columns in the backbuffer */
 	unsigned int cols;
 	/** Number of rows in the backbuffer */
 	unsigned int rows;
-	
+
 	/** Starting row in the cyclic backbuffer */
 	unsigned int start_row;
-	
+
 	/** Top-most visible row (relative to start_row) */
 	unsigned int offset_row;
-	
+
 	/** Current backbuffer position */
 	unsigned int position;
@@ -236,20 +236,20 @@
 	if (!overlay)
 		instance->backbuf[BB_POS(instance, col, row)] = glyph;
-	
+
 	/* Do not output if the framebuffer is used by user space */
 	if ((instance->parea.mapped) && (!console_override))
 		return;
-	
+
 	/* Check whether the glyph should be visible */
 	if (row < instance->offset_row)
 		return;
-	
+
 	unsigned int rel_row = row - instance->offset_row;
 	if (rel_row >= instance->rowtrim)
 		return;
-	
+
 	unsigned int x = COL2X(col);
 	unsigned int y = ROW2Y(rel_row);
-	
+
 	for (unsigned int yd = 0; yd < FONT_SCANLINES; yd++)
 		memcpy(&instance->addr[FB_POS(instance, x, y + yd)],
@@ -267,22 +267,22 @@
 			unsigned int y = ROW2Y(rel_row);
 			unsigned int row = rel_row + instance->offset_row;
-			
+
 			for (unsigned int yd = 0; yd < FONT_SCANLINES; yd++) {
 				unsigned int x;
 				unsigned int col;
-				
+
 				for (col = 0, x = 0; col < instance->cols;
 				    col++, x += FONT_WIDTH) {
 					uint16_t glyph;
-					
+
 					if (row < instance->rows - 1) {
 						if (instance->backbuf[BB_POS(instance, col, row)] ==
 						    instance->backbuf[BB_POS(instance, col, row + 1)])
 							continue;
-						
+
 						glyph = instance->backbuf[BB_POS(instance, col, row + 1)];
 					} else
 						glyph = 0;
-					
+
 					memcpy(&instance->addr[FB_POS(instance, x, y + yd)],
 					    &instance->glyphs[GLYPH_POS(instance, glyph, yd)],
@@ -292,14 +292,14 @@
 		}
 	}
-	
+
 	/*
 	 * Implement backbuffer scrolling by wrapping around
 	 * the cyclic buffer.
 	 */
-	
+
 	instance->start_row++;
 	if (instance->start_row == instance->rows)
 		instance->start_row = 0;
-	
+
 	memsetw(&instance->backbuf[BB_POS(instance, 0, instance->rows - 1)],
 	    instance->cols, 0);
@@ -310,5 +310,5 @@
 	unsigned int col = instance->position % instance->cols;
 	unsigned int row = instance->position / instance->cols;
-	
+
 	glyph_draw(instance, fb_font_glyph(U_CURSOR), col, row, true);
 }
@@ -318,5 +318,5 @@
 	unsigned int col = instance->position % instance->cols;
 	unsigned int row = instance->position / instance->cols;
-	
+
 	glyph_draw(instance, instance->backbuf[BB_POS(instance, col, row)],
 	    col, row, true);
@@ -333,18 +333,18 @@
 	/* Prerender glyphs */
 	uint16_t glyph;
-	
+
 	for (glyph = 0; glyph < FONT_GLYPHS; glyph++) {
 		uint32_t fg_color;
-		
+
 		if (glyph == FONT_GLYPHS - 1)
 			fg_color = INV_COLOR;
 		else
 			fg_color = FG_COLOR;
-		
+
 		unsigned int y;
-		
+
 		for (y = 0; y < FONT_SCANLINES; y++) {
 			unsigned int x;
-			
+
 			for (x = 0; x < FONT_WIDTH; x++) {
 				void *dst =
@@ -357,8 +357,8 @@
 		}
 	}
-	
+
 	/* Prerender background scanline */
 	unsigned int x;
-	
+
 	for (x = 0; x < instance->xres; x++)
 		instance->rgb_conv(&instance->bgscan[x * instance->pixelbytes], BG_COLOR);
@@ -370,9 +370,9 @@
 		unsigned int y = ROW2Y(rel_row);
 		unsigned int row = rel_row + instance->offset_row;
-		
+
 		for (unsigned int yd = 0; yd < FONT_SCANLINES; yd++) {
 			unsigned int x;
 			unsigned int col;
-			
+
 			for (col = 0, x = 0; col < instance->cols;
 			    col++, x += FONT_WIDTH) {
@@ -385,18 +385,18 @@
 		}
 	}
-	
+
 	if (COL2X(instance->cols) < instance->xres) {
 		unsigned int y;
 		unsigned int size =
 		    (instance->xres - COL2X(instance->cols)) * instance->pixelbytes;
-		
+
 		for (y = 0; y < instance->yres; y++)
 			memcpy(&instance->addr[FB_POS(instance, COL2X(instance->cols), y)],
 			    instance->bgscan, size);
 	}
-	
+
 	if (ROW2Y(instance->rowtrim) < instance->yres) {
 		unsigned int y;
-		
+
 		for (y = ROW2Y(instance->rowtrim); y < instance->yres; y++)
 			memcpy(&instance->addr[FB_POS(instance, 0, y)],
@@ -414,5 +414,5 @@
 	fb_instance_t *instance = (fb_instance_t *) dev->data;
 	spinlock_lock(&instance->lock);
-	
+
 	switch (ch) {
 	case '\n':
@@ -446,12 +446,12 @@
 		instance->position++;
 	}
-	
+
 	if (instance->position >= instance->cols * instance->rows) {
 		instance->position -= instance->cols;
 		screen_scroll(instance);
 	}
-	
+
 	cursor_put(instance);
-	
+
 	spinlock_unlock(&instance->lock);
 }
@@ -464,13 +464,13 @@
 	fb_instance_t *instance = (fb_instance_t *) dev->data;
 	spinlock_lock(&instance->lock);
-	
+
 	if (instance->offset_row >= instance->rowtrim / 2)
 		instance->offset_row -= instance->rowtrim / 2;
 	else
 		instance->offset_row = 0;
-	
+
 	fb_redraw_internal(instance);
 	cursor_put(instance);
-	
+
 	spinlock_unlock(&instance->lock);
 }
@@ -483,5 +483,5 @@
 	fb_instance_t *instance = (fb_instance_t *) dev->data;
 	spinlock_lock(&instance->lock);
-	
+
 	if (instance->offset_row + instance->rowtrim / 2 <=
 	    instance->rows - instance->rowtrim)
@@ -489,8 +489,8 @@
 	else
 		instance->offset_row = instance->rows - instance->rowtrim;
-	
+
 	fb_redraw_internal(instance);
 	cursor_put(instance);
-	
+
 	spinlock_unlock(&instance->lock);
 }
@@ -502,5 +502,5 @@
 {
 	fb_instance_t *instance = (fb_instance_t *) dev->data;
-	
+
 	spinlock_lock(&instance->lock);
 	fb_redraw_internal(instance);
@@ -517,8 +517,8 @@
 	assert(props->y > 0);
 	assert(props->scan > 0);
-	
+
 	rgb_conv_t rgb_conv;
 	unsigned int pixelbytes;
-	
+
 	switch (props->visual) {
 	case VISUAL_INDIRECT_8:
@@ -570,9 +570,9 @@
 		return NULL;
 	}
-	
+
 	outdev_t *fbdev = malloc(sizeof(outdev_t), FRAME_ATOMIC);
 	if (!fbdev)
 		return NULL;
-	
+
 	fb_instance_t *instance = malloc(sizeof(fb_instance_t), FRAME_ATOMIC);
 	if (!instance) {
@@ -580,10 +580,10 @@
 		return NULL;
 	}
-	
+
 	outdev_initialize("fbdev", fbdev, &fbdev_ops);
 	fbdev->data = instance;
-	
+
 	spinlock_initialize(&instance->lock, "*fb.instance.lock");
-	
+
 	instance->rgb_conv = rgb_conv;
 	instance->pixelbytes = pixelbytes;
@@ -591,22 +591,22 @@
 	instance->yres = props->y;
 	instance->scanline = props->scan;
-	
+
 	instance->rowtrim = Y2ROW(instance->yres);
-	
+
 	instance->cols = X2COL(instance->xres);
 	instance->rows = FB_PAGES * instance->rowtrim;
-	
+
 	instance->start_row = instance->rows - instance->rowtrim;
 	instance->offset_row = instance->start_row;
 	instance->position = instance->start_row * instance->cols;
-	
+
 	instance->glyphscanline = FONT_WIDTH * instance->pixelbytes;
 	instance->glyphbytes = ROW2Y(instance->glyphscanline);
 	instance->bgscanbytes = instance->xres * instance->pixelbytes;
-	
+
 	size_t fbsize = instance->scanline * instance->yres;
 	size_t bbsize = instance->cols * instance->rows * sizeof(uint16_t);
 	size_t glyphsize = FONT_GLYPHS * instance->glyphbytes;
-	
+
 	instance->addr = (uint8_t *) km_map((uintptr_t) props->addr, fbsize,
 	    PAGE_WRITE | PAGE_NOT_CACHEABLE);
@@ -617,5 +617,5 @@
 		return NULL;
 	}
-	
+
 	instance->backbuf = (uint16_t *) malloc(bbsize, 0);
 	if (!instance->backbuf) {
@@ -625,5 +625,5 @@
 		return NULL;
 	}
-	
+
 	instance->glyphs = (uint8_t *) malloc(glyphsize, 0);
 	if (!instance->glyphs) {
@@ -634,5 +634,5 @@
 		return NULL;
 	}
-	
+
 	instance->bgscan = malloc(instance->bgscanbytes, 0);
 	if (!instance->bgscan) {
@@ -644,8 +644,8 @@
 		return NULL;
 	}
-	
+
 	memsetw(instance->backbuf, instance->cols * instance->rows, 0);
 	glyphs_render(instance);
-	
+
 	link_initialize(&instance->parea.link);
 	instance->parea.pbase = props->addr;
@@ -654,5 +654,5 @@
 	instance->parea.mapped = false;
 	ddi_parea_register(&instance->parea);
-	
+
 	if (!fb_exported) {
 		/*
@@ -668,8 +668,8 @@
 		sysinfo_set_item_val("fb.visual", NULL, props->visual);
 		sysinfo_set_item_val("fb.address.physical", NULL, props->addr);
-		
+
 		fb_exported = true;
 	}
-	
+
 	fb_redraw(fbdev);
 	return fbdev;
Index: kernel/genarch/src/fb/font-8x16.c
===================================================================
--- kernel/genarch/src/fb/font-8x16.c	(revision 63e27efdf2fe6d3fa02bbb5ee1da00df5cc07e9d)
+++ kernel/genarch/src/fb/font-8x16.c	(revision 338d54a7c4a77bbe3bf0bdff3c750bad8bb1ea9a)
@@ -47,317 +47,317 @@
 	if (ch == 0x0000)
 		return 0;
-	
+
 	if ((ch >= 0x0020) && (ch <= 0x007f))
 		return (ch - 32);
-	
+
 	if ((ch >= 0x00a0) && (ch <= 0x021f))
 		return (ch - 64);
-	
+
 	if ((ch >= 0x0222) && (ch <= 0x0233))
 		return (ch - 66);
-	
+
 	if ((ch >= 0x0250) && (ch <= 0x02ad))
 		return (ch - 94);
-	
+
 	if ((ch >= 0x02b0) && (ch <= 0x02cf))
 		return (ch - 96);
-	
+
 	if ((ch >= 0x02d8) && (ch <= 0x02dd))
 		return (ch - 104);
-	
+
 	if (ch == 0x02ee)
 		return 630;
-	
+
 	if ((ch >= 0x0300) && (ch <= 0x0301))
 		return (ch - 137);
-	
+
 	if (ch == 0x0303)
 		return 633;
-	
+
 	if (ch == 0x0309)
 		return 634;
-	
+
 	if ((ch >= 0x0312) && (ch <= 0x0314))
 		return (ch - 151);
-	
+
 	if (ch == 0x0323)
 		return 638;
-	
+
 	if ((ch >= 0x0340) && (ch <= 0x0341))
 		return (ch - 193);
-	
+
 	if ((ch >= 0x0374) && (ch <= 0x0375))
 		return (ch - 243);
-	
+
 	if (ch == 0x037a)
 		return 643;
-	
+
 	if (ch == 0x037e)
 		return 644;
-	
+
 	if ((ch >= 0x0384) && (ch <= 0x038a))
 		return (ch - 255);
-	
+
 	if (ch == 0x038c)
 		return 652;
-	
+
 	if ((ch >= 0x038e) && (ch <= 0x03a1))
 		return (ch - 257);
-	
+
 	if ((ch >= 0x03a3) && (ch <= 0x03ce))
 		return (ch - 258);
-	
+
 	if ((ch >= 0x03d0) && (ch <= 0x03d7))
 		return (ch - 259);
-	
+
 	if ((ch >= 0x03da) && (ch <= 0x03f3))
 		return (ch - 261);
-	
+
 	if ((ch >= 0x0400) && (ch <= 0x0486))
 		return (ch - 273);
-	
+
 	if ((ch >= 0x0488) && (ch <= 0x04ce))
 		return (ch - 274);
-	
+
 	if ((ch >= 0x04d0) && (ch <= 0x04f5))
 		return (ch - 275);
-	
+
 	if ((ch >= 0x04f8) && (ch <= 0x04f9))
 		return (ch - 277);
-	
+
 	if ((ch >= 0x0500) && (ch <= 0x050f))
 		return (ch - 283);
-	
+
 	if ((ch >= 0x0530) && (ch <= 0x0556))
 		return (ch - 315);
-	
+
 	if ((ch >= 0x0559) && (ch <= 0x055f))
 		return (ch - 317);
-	
+
 	if ((ch >= 0x0561) && (ch <= 0x0587))
 		return (ch - 318);
-	
+
 	if ((ch >= 0x0589) && (ch <= 0x058a))
 		return (ch - 319);
-	
+
 	if ((ch >= 0x0591) && (ch <= 0x05a1))
 		return (ch - 325);
-	
+
 	if ((ch >= 0x05a3) && (ch <= 0x05b9))
 		return (ch - 326);
-	
+
 	if ((ch >= 0x05bb) && (ch <= 0x05c4))
 		return (ch - 327);
-	
+
 	if ((ch >= 0x05d0) && (ch <= 0x05ea))
 		return (ch - 338);
-	
+
 	if ((ch >= 0x05f0) && (ch <= 0x05f4))
 		return (ch - 343);
-	
+
 	if (ch == 0x060c)
 		return 1182;
-	
+
 	if (ch == 0x061b)
 		return 1183;
-	
+
 	if (ch == 0x061f)
 		return 1184;
-	
+
 	if ((ch >= 0x0621) && (ch <= 0x063a))
 		return (ch - 384);
-	
+
 	if ((ch >= 0x0640) && (ch <= 0x0655))
 		return (ch - 389);
-	
+
 	if ((ch >= 0x0660) && (ch <= 0x066d))
 		return (ch - 399);
-	
+
 	if ((ch >= 0x0670) && (ch <= 0x06ed))
 		return (ch - 401);
-	
+
 	if ((ch >= 0x06f0) && (ch <= 0x06fe))
 		return (ch - 403);
-	
+
 	if (ch == 0x10d3)
 		return 1388;
-	
+
 	if (ch == 0x10d7)
 		return 1389;
-	
+
 	if (ch == 0x10da)
 		return 1390;
-	
+
 	if (ch == 0x10dd)
 		return 1391;
-	
+
 	if (ch == 0x10e6)
 		return 1392;
-	
+
 	if ((ch >= 0x1e00) && (ch <= 0x1e9b))
 		return (ch - 6287);
-	
+
 	if ((ch >= 0x1ea0) && (ch <= 0x1ef9))
 		return (ch - 6291);
-	
+
 	if ((ch >= 0x1f00) && (ch <= 0x1f07))
 		return (ch - 6297);
-	
+
 	if ((ch >= 0x2000) && (ch <= 0x2027))
 		return (ch - 6545);
-	
+
 	if ((ch >= 0x2030) && (ch <= 0x2046))
 		return (ch - 6553);
-	
+
 	if ((ch >= 0x2048) && (ch <= 0x204d))
 		return (ch - 6554);
-	
+
 	if (ch == 0x2070)
 		return 1716;
-	
+
 	if ((ch >= 0x2074) && (ch <= 0x208f))
 		return (ch - 6591);
-	
+
 	if ((ch >= 0x20a0) && (ch <= 0x20af))
 		return (ch - 6607);
-	
+
 	if ((ch >= 0x2100) && (ch <= 0x213a))
 		return (ch - 6687);
-	
+
 	if ((ch >= 0x2153) && (ch <= 0x2183))
 		return (ch - 6711);
-	
+
 	if ((ch >= 0x2190) && (ch <= 0x21f3))
 		return (ch - 6723);
-	
+
 	if ((ch >= 0x2200) && (ch <= 0x22f1))
 		return (ch - 6735);
-	
+
 	if (ch == 0x2300)
 		return 2211;
-	
+
 	if (ch == 0x2302)
 		return 2212;
-	
+
 	if ((ch >= 0x2308) && (ch <= 0x230b))
 		return (ch - 6755);
-	
+
 	if (ch == 0x2310)
 		return 2217;
-	
+
 	if (ch == 0x2318)
 		return 2218;
-	
+
 	if ((ch >= 0x231a) && (ch <= 0x231b))
 		return (ch - 6767);
-	
+
 	if ((ch >= 0x2320) && (ch <= 0x2321))
 		return (ch - 6771);
-	
+
 	if ((ch >= 0x2329) && (ch <= 0x232a))
 		return (ch - 6778);
-	
+
 	if ((ch >= 0x239b) && (ch <= 0x23bd))
 		return (ch - 6890);
-	
+
 	if (ch == 0x23ce)
 		return 2260;
-	
+
 	if ((ch >= 0x2409) && (ch <= 0x240d))
 		return (ch - 6964);
-	
+
 	if ((ch >= 0x2423) && (ch <= 0x2424))
 		return (ch - 6985);
-	
+
 	if (ch == 0x2426)
 		return 2268;
-	
+
 	if ((ch >= 0x2500) && (ch <= 0x2595))
 		return (ch - 7203);
-	
+
 	if ((ch >= 0x25a0) && (ch <= 0x25f7))
 		return (ch - 7213);
-	
+
 	if ((ch >= 0x2600) && (ch <= 0x2602))
 		return (ch - 7221);
-	
+
 	if ((ch >= 0x2605) && (ch <= 0x260d))
 		return (ch - 7223);
-	
+
 	if ((ch >= 0x2610) && (ch <= 0x2613))
 		return (ch - 7225);
-	
+
 	if (ch == 0x2620)
 		return 2523;
-	
+
 	if (ch == 0x2622)
 		return 2524;
-	
+
 	if (ch == 0x2626)
 		return 2525;
-	
+
 	if ((ch >= 0x2628) && (ch <= 0x262b))
 		return (ch - 7242);
-	
+
 	if ((ch >= 0x262e) && (ch <= 0x2637))
 		return (ch - 7244);
-	
+
 	if ((ch >= 0x2639) && (ch <= 0x2653))
 		return (ch - 7245);
-	
+
 	if ((ch >= 0x2660) && (ch <= 0x2667))
 		return (ch - 7257);
-	
+
 	if ((ch >= 0x2669) && (ch <= 0x266f))
 		return (ch - 7258);
-	
+
 	if ((ch >= 0xfb00) && (ch <= 0xfb05))
 		return (ch - 61674);
-	
+
 	if ((ch >= 0xfb50) && (ch <= 0xfbb1))
 		return (ch - 61748);
-	
+
 	if ((ch >= 0xfbd3) && (ch <= 0xfbe9))
 		return (ch - 61781);
-	
+
 	if ((ch >= 0xfbfc) && (ch <= 0xfbff))
 		return (ch - 61799);
-	
+
 	if ((ch >= 0xfc5b) && (ch <= 0xfc63))
 		return (ch - 61890);
-	
+
 	if (ch == 0xfc90)
 		return 2722;
-	
+
 	if ((ch >= 0xfcf2) && (ch <= 0xfcf4))
 		return (ch - 62031);
-	
+
 	if ((ch >= 0xfd3c) && (ch <= 0xfd3f))
 		return (ch - 62102);
-	
+
 	if (ch == 0xfdf2)
 		return 2730;
-	
+
 	if ((ch >= 0xfe50) && (ch <= 0xfe52))
 		return (ch - 62373);
-	
+
 	if ((ch >= 0xfe54) && (ch <= 0xfe66))
 		return (ch - 62374);
-	
+
 	if ((ch >= 0xfe68) && (ch <= 0xfe6b))
 		return (ch - 62375);
-	
+
 	if ((ch >= 0xfe70) && (ch <= 0xfe72))
 		return (ch - 62379);
-	
+
 	if (ch == 0xfe74)
 		return 2760;
-	
+
 	if ((ch >= 0xfe76) && (ch <= 0xfefc))
 		return (ch - 62381);
-	
+
 	if (ch == 0xfeff)
 		return 2896;
-	
+
 	return 2898;
 }
@@ -3262,5 +3262,5 @@
 	{0xf1, 0x35, 0x55, 0x8a, 0xe0, 0x06, 0x95, 0xd6, 0xb5, 0x97, 0x00, 0xee, 0x8a, 0xee, 0x28, 0xe8},
 	{0x00, 0x38, 0x7c, 0x7c, 0xc6, 0x92, 0xf2, 0xe6, 0xfe, 0xe6, 0x7c, 0x7c, 0x38, 0x00, 0x00, 0x00},
-	
+
 	/* Special glyph for unknown character */
 	{0x00, 0x00, 0x7c, 0xc6, 0xc6, 0x0c, 0x18, 0x18, 0x18, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00}
