diff --git a/android/androidmk.go b/android/androidmk.go
index f606522..af6608f 100644
--- a/android/androidmk.go
+++ b/android/androidmk.go
@@ -234,6 +234,9 @@
 		if amod.commonProperties.Proprietary {
 			fmt.Fprintln(w, "LOCAL_PROPRIETARY_MODULE := true")
 		}
+		if amod.commonProperties.Vendor {
+			fmt.Fprintln(w, "LOCAL_VENDOR_MODULE := true")
+		}
 		if amod.commonProperties.Owner != "" {
 			fmt.Fprintln(w, "LOCAL_MODULE_OWNER :=", amod.commonProperties.Owner)
 		}
diff --git a/android/module.go b/android/module.go
index 3c09b3e..963d611 100644
--- a/android/module.go
+++ b/android/module.go
@@ -60,7 +60,7 @@
 	Windows() bool
 	Debug() bool
 	PrimaryArch() bool
-	Proprietary() bool
+	Vendor() bool
 	AConfig() Config
 	DeviceConfig() DeviceConfig
 }
@@ -143,6 +143,9 @@
 	// vendor who owns this module
 	Owner string
 
+	// whether this module is device specific and should be installed into /vendor
+	Vendor bool
+
 	// *.logtags files, to combine together in order to generate the /system/etc/event-log-tags
 	// file
 	Logtags []string
@@ -462,7 +465,7 @@
 	return androidBaseContextImpl{
 		target:        a.commonProperties.CompileTarget,
 		targetPrimary: a.commonProperties.CompilePrimary,
-		proprietary:   a.commonProperties.Proprietary,
+		vendor:        a.commonProperties.Proprietary || a.commonProperties.Vendor,
 		config:        ctx.Config().(Config),
 	}
 }
@@ -499,7 +502,7 @@
 	target        Target
 	targetPrimary bool
 	debug         bool
-	proprietary   bool
+	vendor        bool
 	config        Config
 }
 
@@ -632,8 +635,8 @@
 	return DeviceConfig{a.config.deviceConfig}
 }
 
-func (a *androidBaseContextImpl) Proprietary() bool {
-	return a.proprietary
+func (a *androidBaseContextImpl) Vendor() bool {
+	return a.vendor
 }
 
 func (a *androidModuleContext) InstallInData() bool {
diff --git a/android/paths.go b/android/paths.go
index fe639e6..969c753 100644
--- a/android/paths.go
+++ b/android/paths.go
@@ -649,7 +649,7 @@
 	var outPaths []string
 	if ctx.Device() {
 		partition := "system"
-		if ctx.Proprietary() {
+		if ctx.Vendor() {
 			partition = ctx.DeviceConfig().VendorPath()
 		}
 
