diff --git a/src/mainboard/lenovo/t60/devicetree.cb b/src/mainboard/lenovo/t60/devicetree.cb
index 7ecd263..a5a8e52 100644
--- a/src/mainboard/lenovo/t60/devicetree.cb
+++ b/src/mainboard/lenovo/t60/devicetree.cb
@@ -25,7 +25,7 @@ chip northbridge/intel/i945
 	register "gpu_hotplug" = "0x00000220"
 	register "gpu_lvds_use_spread_spectrum_clock" = "1"
 	register "gpu_lvds_is_dual_channel" = "1"
-	register "gpu_backlight" = "0x1280128"
+	register "gpu_backlight" = "0x58BF58BE"
 
 	device cpu_cluster 0 on
 		chip cpu/intel/socket_mFCPGA478
diff --git a/src/mainboard/lenovo/x60/devicetree.cb b/src/mainboard/lenovo/x60/devicetree.cb
index 416c1f8..bc2ad6e 100644
--- a/src/mainboard/lenovo/x60/devicetree.cb
+++ b/src/mainboard/lenovo/x60/devicetree.cb
@@ -25,7 +25,7 @@ chip northbridge/intel/i945
 	register "gpu_hotplug" = "0x00000220"
 	register "gpu_lvds_use_spread_spectrum_clock" = "1"
 	register "gpu_lvds_is_dual_channel" = "0"
-	register "gpu_backlight" = "0x1280128"
+	register "gpu_backlight" = "0x879F879E"
 
 	device cpu_cluster 0 on
 		chip cpu/intel/socket_mFCPGA478
diff --git a/src/northbridge/intel/i945/i945.h b/src/northbridge/intel/i945/i945.h
index 862af2a..d4d35a2 100644
--- a/src/northbridge/intel/i945/i945.h
+++ b/src/northbridge/intel/i945/i945.h
@@ -62,6 +62,8 @@
 #define BOARD_DEVEN ( DEVEN_D0F0 | DEVEN_D2F0 | DEVEN_D2F1 )
 #endif
 
+#define BSM		0x5c
+
 #define PAM0		0x90
 #define PAM1		0x91
 #define PAM2		0x92
diff --git a/src/northbridge/intel/i945/northbridge.c b/src/northbridge/intel/i945/northbridge.c
index 922a819..4904e1b 100644
--- a/src/northbridge/intel/i945/northbridge.c
+++ b/src/northbridge/intel/i945/northbridge.c
@@ -96,7 +96,7 @@ static void pci_domain_set_resources(device_t dev)
 	printk(BIOS_DEBUG, "pci_tolm: 0x%x\n", pci_tolm);
 
 	printk(BIOS_SPEW, "Base of stolen memory: 0x%08x\n",
-		    pci_read_config32(dev_find_slot(0, PCI_DEVFN(2, 0)), 0x5c));
+		    pci_read_config32(dev_find_slot(0, PCI_DEVFN(2, 0)), BSM));
 
 	tolud = pci_read_config8(dev_find_slot(0, PCI_DEVFN(0, 0)), 0x9c);
 	printk(BIOS_SPEW, "Top of Low Used DRAM: 0x%08x\n", tolud << 24);
diff --git a/src/northbridge/intel/i945/ram_calc.c b/src/northbridge/intel/i945/ram_calc.c
index 4ece540..51eb0ff 100644
--- a/src/northbridge/intel/i945/ram_calc.c
+++ b/src/northbridge/intel/i945/ram_calc.c
@@ -30,7 +30,7 @@ unsigned long get_top_of_ram(void)
 
 	if (pci_read_config8(PCI_DEV(0, 0x0, 0), DEVEN) & ((1 << 4) | (1 << 3))) {
 		/* IGD enabled, get top of Memory from BSM register */
-		tom = pci_read_config32(PCI_DEV(0,2,0), 0x5c);
+		tom = pci_read_config32(PCI_DEV(0,2,0), BSM);
 	} else {
 		tom = (pci_read_config8(PCI_DEV(0,0,0), TOLUD) & 0xf7) << 24;
 	}
diff --git a/src/northbridge/intel/i945/raminit.c b/src/northbridge/intel/i945/raminit.c
index 6943fd9..5412d8f 100644
--- a/src/northbridge/intel/i945/raminit.c
+++ b/src/northbridge/intel/i945/raminit.c
@@ -1569,6 +1569,20 @@ static int sdram_program_row_boundaries(struct sys_info *sysinfo)
 
 	pci_write_config16(PCI_DEV(0,0,0), TOM, tom);
 
+	/*
+	 * Set BSM (Base of Stolen Memory)
+	 * 
+	 * Assume a size of 64MB and set the base address of stolen DRAM memory
+	 * to TOLUD -size.
+	 * 
+	 * TODO: This should be made run-time configurable with NVRAM/CMOS 
+	 * 	The size can range from 1MB to 64MB
+	 */
+	printk(BIOS_DEBUG, "BSM = 0x%08x\n", pci_read_config32(PCI_DEV(0,2,0), BSM));
+	pci_write_config32(PCI_DEV(0,2,0), BSM, (tolud * MiB - 64 * MiB) & 0xfff00000);
+
+	printk(BIOS_DEBUG, "BSM = 0x%08x\n", pci_read_config32(PCI_DEV(0,2,0), BSM));
+
 	return 0;
 }
 
diff --git a/util/crossgcc/buildgcc b/util/crossgcc/buildgcc
index c6d7183..5aa98d5 100755
--- a/util/crossgcc/buildgcc
+++ b/util/crossgcc/buildgcc
@@ -105,8 +105,9 @@ searchgnu()
 			fi
 		fi
 	done
-	# A workaround for XxxBSD, whose nongnu patch and tar also work.
-	if [ $UNAME = "FreeBSD" -o $UNAME = "NetBSD" ]; then
+	# A workaround for OSX 10.9 and some BSDs, whose nongnu
+	# patch and tar also work.
+	if [ $UNAME = "Darwin" -o $UNAME = "FreeBSD" -o $UNAME = "NetBSD" ]; then
 		if [ $1 != "make" ]; then
 			if test -x "`which $1 2>/dev/null`"; then
 				echo $1
