diff -ruN orig/arch/arm/boot/dts/Makefile new/arch/arm/boot/dts/Makefile
--- orig/arch/arm/boot/dts/Makefile	2013-11-04 00:41:51.000000000 +0100
+++ new/arch/arm/boot/dts/Makefile	2013-11-11 14:38:07.108808212 +0100
@@ -159,6 +159,7 @@
 	imx28-cfa10057.dtb \
 	imx28-cfa10058.dtb \
 	imx28-evk.dtb \
+	imx28-duckbill.dtb \
 	imx28-m28evk.dtb \
 	imx28-sps1.dtb \
 	imx28-tx28.dtb
diff -ruN orig/arch/arm/mach-mxs/mach-mxs.c new/arch/arm/mach-mxs/mach-mxs.c
--- orig/arch/arm/mach-mxs/mach-mxs.c	2013-11-04 00:41:51.000000000 +0100
+++ new/arch/arm/mach-mxs/mach-mxs.c	2013-11-11 14:40:07.555397389 +0100
@@ -159,6 +159,7 @@
 	OUI_FSL,
 	OUI_DENX,
 	OUI_CRYSTALFONTZ,
+	OUI_I2SE,
 };
 
 static void __init update_fec_mac_prop(enum mac_oui oui)
@@ -213,6 +214,11 @@
 			macaddr[1] = 0xb9;
 			macaddr[2] = 0xe1;
 			break;
+		case OUI_I2SE:
+			macaddr[0] = 0x00;
+			macaddr[1] = 0x01;
+			macaddr[2] = 0x87;
+			break;
 		}
 		val = ocotp[i];
 		macaddr[3] = (val >> 16) & 0xff;
@@ -423,6 +429,11 @@
 	return 0;
 }
 
+static void __init duckbill_init(void)
+{
+	update_fec_mac_prop(OUI_I2SE);
+}
+
 static void __init mxs_machine_init(void)
 {
 	struct device_node *root;
@@ -459,6 +470,8 @@
 		apx4devkit_init();
 	else if (of_machine_is_compatible("crystalfontz,cfa10036"))
 		crystalfontz_init();
+	else if (of_machine_is_compatible("i2se,duckbill"))
+		duckbill_init();
 
 	of_platform_populate(NULL, of_default_bus_match_table,
 			     NULL, parent);
