diff --git a/Android.bp b/Android.bp
index 1eac394..496dcd2 100644
--- a/Android.bp
+++ b/Android.bp
@@ -141,6 +141,8 @@
         "cc/ndk_sysroot.go",
 
         "cc/llndk_library.go",
+
+        "cc/kernel_headers.go",
     ],
     testSrcs: [
         "cc/cc_test.go",
@@ -308,3 +310,8 @@
         },
     },
 }
+
+kernel_headers {
+    name: "device_kernel_headers",
+    vendor: true,
+}
diff --git a/android/config.go b/android/config.go
index 1b06063..3de1ef1 100644
--- a/android/config.go
+++ b/android/config.go
@@ -516,6 +516,10 @@
 	return String(c.config.ProductVariables.BtConfigIncludeDir)
 }
 
+func (c *deviceConfig) DeviceKernelHeaderDirs() []string {
+	return c.config.ProductVariables.DeviceKernelHeaders
+}
+
 func (c *deviceConfig) NativeCoverageEnabled() bool {
 	return Bool(c.config.ProductVariables.NativeCoverage)
 }
diff --git a/android/variable.go b/android/variable.go
index 1efab47..7ca7a55 100644
--- a/android/variable.go
+++ b/android/variable.go
@@ -162,6 +162,8 @@
 	BtConfigIncludeDir *string `json:",omitempty"`
 
 	Override_rs_driver *string `json:",omitempty"`
+
+	DeviceKernelHeaders []string `json:",omitempty"`
 }
 
 func boolPtr(v bool) *bool {
diff --git a/cc/kernel_headers.go b/cc/kernel_headers.go
new file mode 100644
index 0000000..c66fca6
--- /dev/null
+++ b/cc/kernel_headers.go
@@ -0,0 +1,53 @@
+// Copyright 2017 Google Inc. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package cc
+
+import (
+	"android/soong/android"
+)
+
+type kernelHeadersDecorator struct {
+	*libraryDecorator
+}
+
+func (stub *kernelHeadersDecorator) link(ctx ModuleContext, flags Flags, deps PathDeps, objs Objects) android.Path {
+	if ctx.Device() {
+		f := &stub.libraryDecorator.flagExporter
+		for _, dir := range ctx.DeviceConfig().DeviceKernelHeaderDirs() {
+			f.flags = append(f.flags, "-isystem"+dir)
+		}
+	}
+	return stub.libraryDecorator.linkStatic(ctx, flags, deps, objs)
+}
+
+func kernelHeadersFactory() android.Module {
+	module, library := NewLibrary(android.HostAndDeviceSupported)
+	library.HeaderOnly()
+
+	stub := &kernelHeadersDecorator{
+		libraryDecorator: library,
+	}
+
+	module.compiler = nil
+	module.linker = stub
+	module.installer = nil
+
+	android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibBoth)
+	return module
+}
+
+func init() {
+	android.RegisterModuleType("kernel_headers", kernelHeadersFactory)
+}
