diff --git a/kernel-headers/sound/wcd-dsp-glink.h b/kernel-headers/sound/wcd-dsp-glink.h
new file mode 100644
index 0000000..d00744c
--- /dev/null
+++ b/kernel-headers/sound/wcd-dsp-glink.h
@@ -0,0 +1,49 @@
+/****************************************************************************
+ ****************************************************************************
+ ***
+ ***   This header was automatically generated from a Linux kernel header
+ ***   of the same name, to make information necessary for userspace to
+ ***   call into the kernel available to libc.  It contains only constants,
+ ***   structures, and macros generated from the original header, and thus,
+ ***   contains no copyrightable information.
+ ***
+ ***   To edit the content of this header, modify the corresponding
+ ***   source file (e.g. under external/kernel-headers/original/) then
+ ***   run bionic/libc/kernel/tools/update_all.py
+ ***
+ ***   Any manual change here will be lost the next time this script will
+ ***   be run. You've been warned!
+ ***
+ ****************************************************************************
+ ****************************************************************************/
+#ifndef _WCD_DSP_GLINK_H
+#define _WCD_DSP_GLINK_H
+#include <linux/types.h>
+#define WDSP_CH_NAME_MAX_LEN 50
+enum {
+  WDSP_REG_PKT = 1,
+  WDSP_CMD_PKT,
+  WDSP_READY_PKT,
+};
+#define WDSP_READY_PKT WDSP_READY_PKT
+struct wdsp_reg_pkt {
+  __u8 no_of_channels;
+  __u8 payload[0];
+};
+struct wdsp_cmd_pkt {
+  char ch_name[WDSP_CH_NAME_MAX_LEN];
+  __u32 payload_size;
+  __u8 payload[0];
+};
+struct wdsp_write_pkt {
+  __u8 pkt_type;
+  __u8 payload[0];
+};
+struct wdsp_glink_ch_cfg {
+  char name[WDSP_CH_NAME_MAX_LEN];
+  __u32 latency_in_us;
+  __u32 no_of_intents;
+  __u32 intents_size[0];
+};
+#endif
+
diff --git a/original-kernel-headers/sound/wcd-dsp-glink.h b/original-kernel-headers/sound/wcd-dsp-glink.h
new file mode 100644
index 0000000..39d128d
--- /dev/null
+++ b/original-kernel-headers/sound/wcd-dsp-glink.h
@@ -0,0 +1,60 @@
+#ifndef _WCD_DSP_GLINK_H
+#define _WCD_DSP_GLINK_H
+
+#include <linux/types.h>
+
+#define WDSP_CH_NAME_MAX_LEN 50
+
+enum {
+	WDSP_REG_PKT = 1,
+	WDSP_CMD_PKT,
+	WDSP_READY_PKT,
+};
+#define WDSP_READY_PKT WDSP_READY_PKT
+
+/*
+ * struct wdsp_reg_pkt -  Glink channel information structure format
+ * @no_of_channels:   Number of glink channels to open
+ * @payload[0]:       Dynamic array contains all the glink channels information
+ */
+struct wdsp_reg_pkt {
+	__u8 no_of_channels;
+	__u8 payload[0];
+};
+
+/*
+ * struct wdsp_cmd_pkt - WDSP command packet format
+ * @ch_name:         Name of the glink channel
+ * @payload_size:    Size of the payload
+ * @payload[0]:      Actual data payload
+ */
+struct wdsp_cmd_pkt {
+	char ch_name[WDSP_CH_NAME_MAX_LEN];
+	__u32 payload_size;
+	__u8 payload[0];
+};
+
+/*
+ * struct wdsp_write_pkt - Format that userspace send the data to driver.
+ * @pkt_type:      Type of the packet(REG or CMD PKT)
+ * @payload[0]:    Payload is either cmd or reg pkt structure based on pkt type
+ */
+struct wdsp_write_pkt {
+	__u8 pkt_type;
+	__u8 payload[0];
+};
+
+/*
+ * struct wdsp_glink_ch_cfg - Defines the glink channel configuration.
+ * @ch_name:           Name of the glink channel
+ * @latency_in_us:     Latency specified in micro seconds for QOS
+ * @no_of_intents:     Number of intents prequeued
+ * @intents_size[0]:   Dynamic array to specify size of each intent
+ */
+struct wdsp_glink_ch_cfg {
+	char name[WDSP_CH_NAME_MAX_LEN];
+	__u32 latency_in_us;
+	__u32 no_of_intents;
+	__u32 intents_size[0];
+};
+#endif /* _WCD_DSP_GLINK_H */
