Add vts files and driver for light hal.

Bug: 32022457
Test: compiles
Change-Id: I5141d80996d51e41930c7398aa9aa4048b365f9b
This commit is contained in:
Steven Moreland
2016-11-16 09:02:17 -08:00
parent c12157d7e8
commit bf0b586bbc
3 changed files with 234 additions and 0 deletions

48
light/2.0/vts/Android.mk Normal file
View File

@@ -0,0 +1,48 @@
#
# Copyright (C) 2016 The Android Open Source Project
#
# 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.
#
LOCAL_PATH := $(call my-dir)
# build VTS driver for Light v2.0.
include $(CLEAR_VARS)
LOCAL_MODULE := libvts_driver_hidl_light@2.0
LOCAL_SRC_FILES := \
Light.vts \
types.vts \
LOCAL_SHARED_LIBRARIES += \
android.hardware.light@2.0 \
libbase \
libutils \
libcutils \
liblog \
libhidl \
libhwbinder \
libprotobuf-cpp-full \
libvts_common \
libvts_datatype \
libvts_measurement \
libvts_multidevice_proto
LOCAL_CFLAGS += -DENABLE_TREBLE
LOCAL_PROTOC_OPTIMIZE_TYPE := full
LOCAL_MULTILIB := both
include $(BUILD_SHARED_LIBRARY)

37
light/2.0/vts/Light.vts Normal file
View File

@@ -0,0 +1,37 @@
component_class: HAL_HIDL
component_type_version: 2.0
component_name: "ILight"
package: "android.hardware.light"
import: "android.hardware.light@2.0::types"
interface: {
api: {
name: "setLight"
return_type_hidl: {
type: TYPE_ENUM
predefined_type: "::android::hardware::light::V2_0::Status"
}
arg: {
type: TYPE_ENUM
predefined_type: "::android::hardware::light::V2_0::Type"
}
arg: {
type: TYPE_STRUCT
predefined_type: "::android::hardware::light::V2_0::LightState"
}
}
api: {
name: "getSupportedTypes"
return_type_hidl: {
type: TYPE_VECTOR
vector_value: {
type: TYPE_ENUM
predefined_type: "::android::hardware::light::V2_0::Type"
}
}
}
}

149
light/2.0/vts/types.vts Normal file
View File

@@ -0,0 +1,149 @@
component_class: HAL_HIDL
component_type_version: 2.0
component_name: "types"
package: "android.hardware.light"
attribute: {
name: "::android::hardware::light::V2_0::Status"
type: TYPE_ENUM
enum_value: {
scalar_type: "int32_t"
enumerator: "SUCCESS"
scalar_value: {
int32_t: 0
}
enumerator: "LIGHT_NOT_SUPPORTED"
scalar_value: {
int32_t: 1
}
enumerator: "BRIGHTNESS_NOT_SUPPORTED"
scalar_value: {
int32_t: 2
}
enumerator: "UNKNOWN"
scalar_value: {
int32_t: 3
}
}
}
attribute: {
name: "::android::hardware::light::V2_0::Flash"
type: TYPE_ENUM
enum_value: {
scalar_type: "int32_t"
enumerator: "NONE"
scalar_value: {
int32_t: 0
}
enumerator: "TIMED"
scalar_value: {
int32_t: 1
}
enumerator: "HARDWARE"
scalar_value: {
int32_t: 2
}
}
}
attribute: {
name: "::android::hardware::light::V2_0::Brightness"
type: TYPE_ENUM
enum_value: {
scalar_type: "int32_t"
enumerator: "USER"
scalar_value: {
int32_t: 0
}
enumerator: "SENSOR"
scalar_value: {
int32_t: 1
}
enumerator: "LOW_PERSISTENCE"
scalar_value: {
int32_t: 2
}
}
}
attribute: {
name: "::android::hardware::light::V2_0::Type"
type: TYPE_ENUM
enum_value: {
scalar_type: "int32_t"
enumerator: "BACKLIGHT"
scalar_value: {
int32_t: 0
}
enumerator: "KEYBOARD"
scalar_value: {
int32_t: 1
}
enumerator: "BUTTONS"
scalar_value: {
int32_t: 2
}
enumerator: "BATTERY"
scalar_value: {
int32_t: 3
}
enumerator: "NOTIFICATIONS"
scalar_value: {
int32_t: 4
}
enumerator: "ATTENTION"
scalar_value: {
int32_t: 5
}
enumerator: "BLUETOOTH"
scalar_value: {
int32_t: 6
}
enumerator: "WIFI"
scalar_value: {
int32_t: 7
}
enumerator: "COUNT"
scalar_value: {
int32_t: 8
}
}
}
attribute: {
name: "::android::hardware::light::V2_0::LightState"
type: TYPE_STRUCT
struct_value: {
name: "color"
type: TYPE_SCALAR
scalar_type: "uint32_t"
}
struct_value: {
name: "flashMode"
type: TYPE_ENUM
predefined_type: "::android::hardware::light::V2_0::Flash"
}
struct_value: {
name: "flashOnMs"
type: TYPE_SCALAR
scalar_type: "int32_t"
}
struct_value: {
name: "flashOffMs"
type: TYPE_SCALAR
scalar_type: "int32_t"
}
struct_value: {
name: "brightnessMode"
type: TYPE_ENUM
predefined_type: "::android::hardware::light::V2_0::Brightness"
}
}