diff --git a/board/sandburst/karef/karef.c b/board/sandburst/karef/karef.c
index 7a98f5b..3856a39 100644
--- a/board/sandburst/karef/karef.c
+++ b/board/sandburst/karef/karef.c
@@ -33,8 +33,6 @@
 #include "../common/sb_common.h"
 #include "../common/ppc440gx_i2c.h"
 
-
-
 void fpga_init (void);
 
 KAREF_BOARD_ID_ST board_id_as[] =
@@ -53,13 +51,11 @@
 	{"Reserved"},
 };
 
-
 /*************************************************************************
  *  board_early_init_f
  *
  *  Setup chip selects, initialize the Opto-FPGA, initialize
  *  interrupt polarity and triggers.
- *
  ************************************************************************/
 int board_early_init_f (void)
 {
@@ -196,7 +192,6 @@
 	mtebc(pb7cr, EBC_BXCR_BAS_ENCODE(0x48500000) |
 	      EBC_BXCR_BS_1MB | EBC_BXCR_BU_RW | EBC_BXCR_BW_32BIT);
 
-
 	/*--------------------------------------------------------------------+
 	 * Setup the interrupt controller polarities, triggers, etc.
 	 +-------------------------------------------------------------------*/
@@ -241,7 +236,6 @@
  *  checkboard
  *
  *  Dump pertinent info to the console
- *
  ************************************************************************/
 int checkboard (void)
 {
@@ -326,12 +320,10 @@
 	return (0);
 }
 
-
 /*************************************************************************
  *  misc_init_f
  *
  *  Initialize I2C bus one to gain access to the fans
- *
  ************************************************************************/
 int misc_init_f (void)
 {
@@ -345,11 +337,11 @@
 
 	return (0);
 }
+
 /*************************************************************************
  *  misc_init_r
  *
  *  Do nothing.
- *
  ************************************************************************/
 int misc_init_r (void)
 {
@@ -409,20 +401,11 @@
 		printf("fakeled is set. use 'setenv fakeled ; setenv bootdelay 5 ; saveenv' to recover\n");
 	}
 
-
-
-
 	return (0);
 }
 
-
-
-
 /*************************************************************************
  *  ide_set_reset
- *
- *
- *
  ************************************************************************/
 #ifdef CONFIG_IDE_RESET
 void ide_set_reset(int on)
@@ -441,9 +424,6 @@
 
 /*************************************************************************
  *  fpga_init
- *
- *
- *
  ************************************************************************/
 void fpga_init(void)
 {
@@ -498,8 +478,6 @@
 	return;
 }
 
-
-
 int karefSetupVars(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
 {
 	unsigned short sernum;
@@ -560,7 +538,6 @@
 	return(1);
 }
 
-
 int karefRecover(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
 {
 	unsigned short sernum;
@@ -593,15 +570,8 @@
 	return(1);
 }
 
-
-
-
-
-
-
 U_BOOT_CMD(kasetup, 1, 1, karefSetupVars,
 	   "kasetup - Set environment to factory defaults\n", NULL);
 
 U_BOOT_CMD(karecover, 1, 1, karefRecover,
 	   "karecover - Set environment to allow for fs recovery\n", NULL);
-
