diff -Naur linux-2.6.30.4-orig/include/linux/netlink.h linux-2.6.30.4-new/include/linux/netlink.h
--- linux-2.6.30.4-orig/include/linux/netlink.h	2009-07-30 15:34:47.000000000 -0700
+++ linux-2.6.30.4-new/include/linux/netlink.h	2009-08-17 17:59:07.001311000 -0700
@@ -25,7 +25,11 @@
 #define NETLINK_SCSITRANSPORT	18	/* SCSI Transports */
 #define NETLINK_ECRYPTFS	19
 
-#define MAX_LINKS 32		
+#define NETLINK_FF		30
+#define NETLINK_VOP		31
+#define NETLINK_KEY		32
+
+#define MAX_LINKS 33		
 
 struct net;
 
diff -Naur linux-2.6.30.4-orig/include/net/fe.h linux-2.6.30.4-new/include/net/fe.h
--- linux-2.6.30.4-orig/include/net/fe.h	1969-12-31 16:00:00.000000000 -0800
+++ linux-2.6.30.4-new/include/net/fe.h	2009-08-17 18:16:16.645104000 -0700
@@ -0,0 +1,34 @@
+/*
+ *
+ *  Copyright (C) 2007 Mindspeed Technologies, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+#ifndef __FE_H__
+#define __FE_H__
+
+	/*Structure used by upper layer to communicate callback*/
+	typedef struct fe_ops {
+		int (*write_command)(unsigned short fcode, unsigned short len, unsigned short *payload);
+	} t_fe_ops;
+
+
+	int fe_register_ops(struct fe_ops * ops);
+	int fe_deregister_ops(void);
+	int fe_command_parser(unsigned short fc, unsigned short length, unsigned short *data);
+
+	extern struct fe_ops registeredOps;
+#endif
+
