Merge branch 'misc.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.git] / net / ncsi / ncsi-manage.c
index 89c7742..7121ce2 100644 (file)
@@ -795,13 +795,36 @@ static int ncsi_oem_smaf_mlx(struct ncsi_cmd_arg *nca)
        return ret;
 }
 
+static int ncsi_oem_gma_handler_intel(struct ncsi_cmd_arg *nca)
+{
+       unsigned char data[NCSI_OEM_INTEL_CMD_GMA_LEN];
+       int ret = 0;
+
+       nca->payload = NCSI_OEM_INTEL_CMD_GMA_LEN;
+
+       memset(data, 0, NCSI_OEM_INTEL_CMD_GMA_LEN);
+       *(unsigned int *)data = ntohl((__force __be32)NCSI_OEM_MFR_INTEL_ID);
+       data[4] = NCSI_OEM_INTEL_CMD_GMA;
+
+       nca->data = data;
+
+       ret = ncsi_xmit_cmd(nca);
+       if (ret)
+               netdev_err(nca->ndp->ndev.dev,
+                          "NCSI: Failed to transmit cmd 0x%x during configure\n",
+                          nca->type);
+
+       return ret;
+}
+
 /* OEM Command handlers initialization */
 static struct ncsi_oem_gma_handler {
        unsigned int    mfr_id;
        int             (*handler)(struct ncsi_cmd_arg *nca);
 } ncsi_oem_gma_handlers[] = {
        { NCSI_OEM_MFR_BCM_ID, ncsi_oem_gma_handler_bcm },
-       { NCSI_OEM_MFR_MLX_ID, ncsi_oem_gma_handler_mlx }
+       { NCSI_OEM_MFR_MLX_ID, ncsi_oem_gma_handler_mlx },
+       { NCSI_OEM_MFR_INTEL_ID, ncsi_oem_gma_handler_intel }
 };
 
 static int ncsi_gma_handler(struct ncsi_cmd_arg *nca, unsigned int mf_id)