summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--BoardConfig.mk26
-rw-r--r--EP05120M09.idc25
-rw-r--r--LDC_3001_TouchScreen_Controller.idc25
-rw-r--r--audio/primary/jamr3_mixer_paths.xml52
-rw-r--r--device.mk85
-rw-r--r--fstab.am57xevmboard2
-rw-r--r--full_am57xevm.mk1
-rw-r--r--init.am57xevmboard.rc48
-rw-r--r--init.recovery.am57xevmboard.rc5
-rw-r--r--media_profiles_V1_0.xml (renamed from media_profiles.xml)69
-rw-r--r--overlay/frameworks/base/core/res/res/values/config.xml5
-rw-r--r--sepolicy/device.te3
-rw-r--r--sepolicy/file_contexts17
-rw-r--r--sepolicy/lad_dra7xx.te21
-rw-r--r--sepolicy/mediaserver.te8
-rw-r--r--sepolicy/netd.te4
-rw-r--r--sepolicy/vis.te20
-rw-r--r--system.prop2
18 files changed, 286 insertions, 132 deletions
diff --git a/BoardConfig.mk b/BoardConfig.mk
index cbce6c1..3a30498 100644
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -66,7 +66,7 @@ TARGET_RECOVERY_PIXEL_FORMAT := "BGRA_8888"
66TARGET_RELEASETOOLS_EXTENSIONS := device/ti/am57xevm 66TARGET_RELEASETOOLS_EXTENSIONS := device/ti/am57xevm
67 67
68# Connectivity - Wi-Fi 68# Connectivity - Wi-Fi
69USES_TI_MAC80211 := false 69USES_TI_MAC80211 := true
70ifeq ($(USES_TI_MAC80211),true) 70ifeq ($(USES_TI_MAC80211),true)
71BOARD_WPA_SUPPLICANT_DRIVER := NL80211 71BOARD_WPA_SUPPLICANT_DRIVER := NL80211
72WPA_SUPPLICANT_VERSION := VER_0_8_X 72WPA_SUPPLICANT_VERSION := VER_0_8_X
@@ -80,7 +80,10 @@ BOARD_SOFTAP_DEVICE := wl12xx_mac80211
80endif 80endif
81 81
82BOARD_SEPOLICY_DIRS += \ 82BOARD_SEPOLICY_DIRS += \
83 device/ti/am57xevm/sepolicy \ 83 device/ti/jacinto6evm/sepolicy \
84 packages/services/Car/car_product/sepolicy
85
86BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED := true
84 87
85# lidbrm driver 88# lidbrm driver
86BOARD_GPU_DRIVERS := omapdrm 89BOARD_GPU_DRIVERS := omapdrm
@@ -90,12 +93,14 @@ VSYNC_EVENT_PHASE_OFFSET_NS := 7500000
90SF_VSYNC_EVENT_PHASE_OFFSET_NS := 5000000 93SF_VSYNC_EVENT_PHASE_OFFSET_NS := 5000000
91 94
92BOARD_VENDOR_KERNEL_MODULES := \ 95BOARD_VENDOR_KERNEL_MODULES := \
93# $(KERNELDIR)/drivers/scsi/scsi_mod.ko \ 96 $(KERNELDIR)/drivers/net/wireless/ti/wl18xx/wl18xx.ko \
97 $(KERNELDIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \
98 $(KERNELDIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko\
99 $(KERNELDIR)/drivers/scsi/scsi_mod.ko \
94 $(KERNELDIR)/drivers/scsi/sd_mod.ko \ 100 $(KERNELDIR)/drivers/scsi/sd_mod.ko \
95 $(KERNELDIR)/drivers/usb/storage/usb-storage.ko \ 101 $(KERNELDIR)/drivers/usb/storage/usb-storage.ko \
96 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/connector-hdmi.ko \ 102 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/connector-hdmi.ko \
97 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/dra7-evm-encoder-tpd12s015.ko \ 103 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/dra7-evm-encoder-tpd12s015.ko \
98 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-sii9022.ko \
99 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tc358768.ko \ 104 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tc358768.ko \
100 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.ko \ 105 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.ko \
101 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/panel-dpi.ko \ 106 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/panel-dpi.ko \
@@ -108,13 +113,15 @@ BOARD_VENDOR_KERNEL_MODULES := \
108 $(KERNELDIR)/drivers/input/touchscreen/edt-ft5x06.ko \ 113 $(KERNELDIR)/drivers/input/touchscreen/edt-ft5x06.ko \
109 $(KERNELDIR)/drivers/input/touchscreen/goodix.ko \ 114 $(KERNELDIR)/drivers/input/touchscreen/goodix.ko \
110 $(KERNELDIR)/drivers/input/touchscreen/ldc3001_ts.ko \ 115 $(KERNELDIR)/drivers/input/touchscreen/ldc3001_ts.ko \
111 $(KERNELDIR)/drivers/input/touchscreen/pixcir_i2c_ts.ko 116 $(KERNELDIR)/drivers/input/touchscreen/pixcir_i2c_ts.ko \
112# $(KERNELDIR)/drivers/net/wireless/ti/wl18xx/wl18xx.ko \ 117 $(KERNELDIR)/sound/soc/codecs/snd-soc-tlv320aic3x.ko \
113# $(KERNELDIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \ 118 $(KERNELDIR)/drivers/gpio/gpio-pca953x.ko \
114# $(KERNELDIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko 119 $(KERNELDIR)/drivers/media/i2c/ov1063x.ko \
120 $(KERNELDIR)/drivers/media/i2c/ov490.ko \
121 $(KERNELDIR)/drivers/media/i2c/tvp5158.ko
115 122
116BOARD_RECOVERY_KERNEL_MODULES := \ 123BOARD_RECOVERY_KERNEL_MODULES := \
117# $(KERNELDIR)/drivers/scsi/scsi_mod.ko \ 124 $(KERNELDIR)/drivers/scsi/scsi_mod.ko \
118 $(KERNELDIR)/drivers/scsi/sd_mod.ko \ 125 $(KERNELDIR)/drivers/scsi/sd_mod.ko \
119 $(KERNELDIR)/drivers/usb/storage/usb-storage.ko \ 126 $(KERNELDIR)/drivers/usb/storage/usb-storage.ko \
120 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/connector-hdmi.ko \ 127 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/connector-hdmi.ko \
@@ -122,6 +129,7 @@ BOARD_RECOVERY_KERNEL_MODULES := \
122 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tc358768.ko \ 129 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tc358768.ko \
123 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.ko \ 130 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.ko \
124 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/panel-dpi.ko \ 131 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/panel-dpi.ko \
132 $(KERNELDIR)/drivers/video/serdes/ti-fpd3-serdes.ko \
125 $(KERNELDIR)/drivers/leds/leds-tlc591xx.ko \ 133 $(KERNELDIR)/drivers/leds/leds-tlc591xx.ko \
126 $(KERNELDIR)/drivers/video/backlight/gpio_backlight.ko \ 134 $(KERNELDIR)/drivers/video/backlight/gpio_backlight.ko \
127 $(KERNELDIR)/drivers/video/backlight/led_bl.ko \ 135 $(KERNELDIR)/drivers/video/backlight/led_bl.ko \
diff --git a/EP05120M09.idc b/EP05120M09.idc
new file mode 100644
index 0000000..2d4c26a
--- /dev/null
+++ b/EP05120M09.idc
@@ -0,0 +1,25 @@
1# Copyright (C) 2010 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15#
16# Input Device Configuration File for the Atmel Maxtouch touch screen.
17#
18# These calibration values are derived from empirical measurements
19# and may not be appropriate for use with other touch screens.
20# Refer to the input device configuration documentation for more details.
21#
22
23# Basic Parameters
24touch.deviceType = touchScreen
25touch.orientationAware = 1
diff --git a/LDC_3001_TouchScreen_Controller.idc b/LDC_3001_TouchScreen_Controller.idc
new file mode 100644
index 0000000..2d4c26a
--- /dev/null
+++ b/LDC_3001_TouchScreen_Controller.idc
@@ -0,0 +1,25 @@
1# Copyright (C) 2010 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15#
16# Input Device Configuration File for the Atmel Maxtouch touch screen.
17#
18# These calibration values are derived from empirical measurements
19# and may not be appropriate for use with other touch screens.
20# Refer to the input device configuration documentation for more details.
21#
22
23# Basic Parameters
24touch.deviceType = touchScreen
25touch.orientationAware = 1
diff --git a/audio/primary/jamr3_mixer_paths.xml b/audio/primary/jamr3_mixer_paths.xml
new file mode 100644
index 0000000..1277a32
--- /dev/null
+++ b/audio/primary/jamr3_mixer_paths.xml
@@ -0,0 +1,52 @@
1<mixer>
2
3<!-- Card default routes -->
4
5<!-- JAMR3 board, codec-A input: Line-In -->
6<ctl name="J3A Left PGA Mixer Line1L Switch" value="1" />
7<ctl name="J3A Right PGA Mixer Line1R Switch" value="1" />
8<ctl name="J3A PGA Capture Switch" value="1" />
9<ctl name="J3A PGA Capture Volume" value="0" />
10<ctl name="J3A Left Line1L Mux" value="differential" />
11<ctl name="J3A Right Line1L Mux" value="differential" />
12<ctl name="J3A Left Line1R Mux" value="differential" />
13<ctl name="J3A Right Line1R Mux" value="differential" />
14
15<!-- JAMR3 board, codec-B input: Mic -->
16<ctl name="J3B Left PGA Mixer Line1L Switch" value="1" />
17<ctl name="J3B Right PGA Mixer Line1R Switch" value="1" />
18<ctl name="J3B PGA Capture Switch" value="1" />
19<ctl name="J3B PGA Capture Volume" value="0" />
20<ctl name="J3B Left Line1L Mux" value="differential" />
21<ctl name="J3B Right Line1L Mux" value="differential" />
22<ctl name="J3B Left Line1R Mux" value="differential" />
23<ctl name="J3B Right Line1R Mux" value="differential" />
24
25<!-- JAMR3 board, codec-A output: Line-Out -->
26<ctl name="J3A Left DAC Mux" value="DAC_L1" />
27<ctl name="J3A Right DAC Mux" value="DAC_R1" />
28<ctl name="J3A Left Line Mixer DACL1 Switch" value="1" />
29<ctl name="J3A Right Line Mixer DACR1 Switch" value="1" />
30<ctl name="J3A Line DAC Playback Volume" value="118" />
31<ctl name="J3A Line Playback Switch" value="1" />
32<ctl name="J3A PCM Playback Volume" value="127" />
33
34<!-- JAMR3 board, codec-B Output: Line-Out -->
35<ctl name="J3B Left DAC Mux" value="DAC_L1" />
36<ctl name="J3B Right DAC Mux" value="DAC_R1" />
37<ctl name="J3B Left Line Mixer DACL1 Switch" value="1" />
38<ctl name="J3B Right Line Mixer DACR1 Switch" value="1" />
39<ctl name="J3B Line DAC Playback Volume" value="118" />
40<ctl name="J3B Line Playback Switch" value="1" />
41<ctl name="J3B PCM Playback Volume" value="127" />
42
43<!-- JAMR3 board, codec-C Output: Line-Out -->
44<ctl name="J3C Left DAC Mux" value="DAC_L1" />
45<ctl name="J3C Right DAC Mux" value="DAC_R1" />
46<ctl name="J3C Left Line Mixer DACL1 Switch" value="1" />
47<ctl name="J3C Right Line Mixer DACR1 Switch" value="1" />
48<ctl name="J3C Line DAC Playback Volume" value="118" />
49<ctl name="J3C Line Playback Switch" value="1" />
50<ctl name="J3C PCM Playback Volume" value="127" />
51
52</mixer>
diff --git a/device.mk b/device.mk
index ad3b337..3877003 100644
--- a/device.mk
+++ b/device.mk
@@ -26,6 +26,7 @@ endif
26USE_XML_AUDIO_POLICY_CONF := 1 26USE_XML_AUDIO_POLICY_CONF := 1
27 27
28PRODUCT_PACKAGES += \ 28PRODUCT_PACKAGES += \
29 vehicle.default \
29 android.hardware.wifi@1.0-service \ 30 android.hardware.wifi@1.0-service \
30 android.hardware.graphics.allocator@2.0-impl \ 31 android.hardware.graphics.allocator@2.0-impl \
31 android.hardware.graphics.allocator@2.0-service \ 32 android.hardware.graphics.allocator@2.0-service \
@@ -45,24 +46,27 @@ PRODUCT_PACKAGES += \
45 46
46PRODUCT_COPY_FILES := \ 47PRODUCT_COPY_FILES := \
47 $(LOCAL_KERNEL):kernel \ 48 $(LOCAL_KERNEL):kernel \
48 device/ti/am57xevm/tablet_core_hardware_am57xevm.xml:system/etc/permissions/tablet_core_hardware_am57xevm.xml \ 49 device/ti/am57xevm/tablet_core_hardware_am57xevm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/tablet_core_hardware_am57xevm.xml \
49 device/ti/am57xevm/manifest.xml:vendor/manifest.xml \ 50 device/ti/am57xevm/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/manifest.xml \
50 device/ti/am57xevm/init.am57xevmboard.rc:root/init.am57xevmboard.rc \ 51 device/ti/am57xevm/init.am57xevmboard.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.am57xevmboard.rc \
51 device/ti/am57xevm/init.am57xevmboard.usb.rc:root/init.am57xevmboard.usb.rc \ 52 device/ti/am57xevm/init.am57xevmboard.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.am57xevmboard.usb.rc \
52 device/ti/am57xevm/ueventd.am57xevmboard.rc:root/ueventd.am57xevmboard.rc \ 53 device/ti/am57xevm/ueventd.am57xevmboard.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
53 device/ti/am57xevm/fstab.am57xevmboard:root/fstab.am57xevmboard \ 54 device/ti/am57xevm/fstab.am57xevmboard:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.am57xevmboard \
54 device/ti/am57xevm/media_profiles.xml:system/etc/media_profiles.xml \ 55 device/ti/am57xevm/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
55 device/ti/am57xevm/media_codecs.xml:system/etc/media_codecs.xml \ 56 device/ti/am57xevm/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
56 device/ti/am57xevm/media_codecs_performance.xml:system/etc/media_codecs_performance.xml \ 57 device/ti/am57xevm/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
57 frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml \ 58 frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
58 frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:system/etc/media_codecs_google_video.xml \ 59 frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
59 frameworks/native/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \ 60 frameworks/native/data/etc/android.hardware.type.automotive.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.type.automotive.xml \
60 frameworks/native/data/etc/android.hardware.wifi.direct.xml:system/etc/permissions/android.hardware.wifi.direct.xml \ 61 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
61 frameworks/native/data/etc/android.hardware.usb.host.xml:system/etc/permissions/android.hardware.usb.host.xml \ 62 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
62 frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \ 63 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
63 frameworks/native/data/etc/android.hardware.ethernet.xml:system/etc/permissions/android.hardware.ethernet.xml \ 64 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
64 frameworks/native/data/etc/android.software.freeform_window_management.xml:system/etc/permissions/android.software.freeform_window_management.xml \ 65 frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
65 device/ti/am57xevm/pixcir_tangoc.idc:system/usr/idc/pixcir_tangoc.idc \ 66 frameworks/native/data/etc/android.software.freeform_window_management.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.freeform_window_management.xml \
67 device/ti/am57xevm/pixcir_tangoc.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/pixcir_tangoc.idc \
68 device/ti/am57xevm/EP05120M09.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/EP05120M09.idc \
69 device/ti/am57xevm/LDC_3001_TouchScreen_Controller.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/LDC_3001_TouchScreen_Controller.idc \
66 70
67# init.rc for recovery image 71# init.rc for recovery image
68PRODUCT_COPY_FILES += \ 72PRODUCT_COPY_FILES += \
@@ -74,27 +78,38 @@ PRODUCT_PACKAGES += \
74 78
75# These are the hardware-specific features 79# These are the hardware-specific features
76PRODUCT_COPY_FILES += \ 80PRODUCT_COPY_FILES += \
77 frameworks/native/data/etc/android.hardware.camera.xml:system/etc/permissions/android.hardware.camera.xml 81 frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml
78 82
79# Audio 83# Audio
80PRODUCT_COPY_FILES += \ 84PRODUCT_COPY_FILES += \
81 frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:system/etc/a2dp_audio_policy_configuration.xml \ 85 frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
82 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:system/etc/usb_audio_policy_configuration.xml \ 86 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \
83 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:system/etc/r_submix_audio_policy_configuration.xml \ 87 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
84 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:system/etc/default_volume_tables.xml \ 88 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
85 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:system/etc/audio_policy_volumes.xml \ 89 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml
86 device/ti/am57xevm/audio/primary/mixer_paths.xml:system/etc/mixer_paths.xml \
87 device/ti/am57xevm/audio/primary/audio_policy_configuration.xml:system/etc/primary_audio_policy_configuration.xml \
88 device/ti/am57xevm/audio/audio_policy_configuration.xml:system/etc/audio_policy_configuration.xml
89 90
91ifeq ($(APPE_AUDIO),true)
92PRODUCT_COPY_FILES += \
93 hardware/ti/radio/vis_sdk/packages/android/hal/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
94 hardware/ti/radio/vis_sdk/packages/android/hal/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/primary_audio_policy_configuration.xml \
95 hardware/ti/radio/vis_sdk/packages/android/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml
96
97else
98PRODUCT_COPY_FILES += \
99 device/ti/am57xevm/audio/primary/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
100 device/ti/am57xevm/audio/primary/jamr3_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/jamr3_mixer_paths.xml \
101 device/ti/am57xevm/audio/primary/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/primary_audio_policy_configuration.xml \
102 device/ti/am57xevm/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml
103endif
90 104
91# cpuset configuration 105# cpuset configuration
92PRODUCT_COPY_FILES += \ 106PRODUCT_COPY_FILES += \
93 device/ti/am57xevm/init.am57xevmboard.cpuset.sh:system/bin/init.am57xevmboard.cpuset.sh 107 device/ti/am57xevm/init.am57xevmboard.cpuset.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.am57xevmboard.cpuset.sh
94 108
95 109
96PRODUCT_PROPERTY_OVERRIDES := \ 110PRODUCT_PROPERTY_OVERRIDES := \
97 hwui.render_dirty_regions=false 111 hwui.render_dirty_regions=false \
112 wifi.interface=wlan0
98 113
99PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 114PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
100 persist.sys.usb.config=mtp 115 persist.sys.usb.config=mtp
@@ -114,10 +129,10 @@ PRODUCT_PACKAGES += \
114 com.android.future.usb.accessory 129 com.android.future.usb.accessory
115 130
116PRODUCT_PROPERTY_OVERRIDES += \ 131PRODUCT_PROPERTY_OVERRIDES += \
117 ro.sf.lcd_density=120 132 ro.sf.lcd_density=240
118 133
119# WI-Fi 134# WI-Fi
120# PRODUCT_PACKAGES += \ 135PRODUCT_PACKAGES += \
121 wificond \ 136 wificond \
122 wpa_supplicant \ 137 wpa_supplicant \
123 wpa_supplicant.conf \ 138 wpa_supplicant.conf \
@@ -156,7 +171,7 @@ PRODUCT_PACKAGES += \
156 tinycap 171 tinycap
157 172
158# Radio 173# Radio
159# PRODUCT_PACKAGES += \ 174PRODUCT_PACKAGES += \
160 RadioApp \ 175 RadioApp \
161 lad_dra7xx \ 176 lad_dra7xx \
162 libtiipc \ 177 libtiipc \
@@ -173,6 +188,12 @@ PRODUCT_PACKAGES += Launcher3 \
173PRODUCT_PROPERTY_OVERRIDES += \ 188PRODUCT_PROPERTY_OVERRIDES += \
174 media.aac_51_output_enabled=true 189 media.aac_51_output_enabled=true
175 190
191PRODUCT_PROPERTY_OVERRIDES += \
192 android.car.drawer.unlimited=true \
193 android.car.hvac.demo=true \
194 com.android.car.radio.demo=true \
195 com.android.car.radio.demo.dual=true
196
176$(call inherit-product, frameworks/native/build/tablet-7in-hdpi-1024-dalvik-heap.mk) 197$(call inherit-product, frameworks/native/build/tablet-7in-hdpi-1024-dalvik-heap.mk)
177$(call inherit-product-if-exists, hardware/ti/dra7xx/am57x.mk) 198$(call inherit-product-if-exists, hardware/ti/dra7xx/am57x.mk)
178#$(call inherit-product-if-exists, hardware/ti/wpan/ti-wpan-products.mk) 199#$(call inherit-product-if-exists, hardware/ti/wpan/ti-wpan-products.mk)
diff --git a/fstab.am57xevmboard b/fstab.am57xevmboard
index 120e007..d157407 100644
--- a/fstab.am57xevmboard
+++ b/fstab.am57xevmboard
@@ -3,8 +3,6 @@
3# The filesystem that contains the filesystem checker binary (typically /system) cannot 3# The filesystem that contains the filesystem checker binary (typically /system) cannot
4# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK 4# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK
5 5
6/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/system /system ext4 ro wait
7/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/vendor /vendor ext4 ro wait
8/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/cache /cache ext4 noatime,nosuid,nodev wait,check 6/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/cache /cache ext4 noatime,nosuid,nodev wait,check
9/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/userdata /data ext4 noatime,nosuid,nodev wait,check 7/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/userdata /data ext4 noatime,nosuid,nodev wait,check
10/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/recovery /recovery emmc defaults defaults 8/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/recovery /recovery emmc defaults defaults
diff --git a/full_am57xevm.mk b/full_am57xevm.mk
index e8f44a9..96e851c 100644
--- a/full_am57xevm.mk
+++ b/full_am57xevm.mk
@@ -24,6 +24,7 @@
24# Inherit from those products. Most specific first. 24# Inherit from those products. Most specific first.
25 25
26$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk) 26$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk)
27$(call inherit-product, packages/services/Car/car_product/build/car.mk)
27$(call inherit-product, device/ti/am57xevm/device.mk) 28$(call inherit-product, device/ti/am57xevm/device.mk)
28 29
29PRODUCT_NAME := full_am57xevm 30PRODUCT_NAME := full_am57xevm
diff --git a/init.am57xevmboard.rc b/init.am57xevmboard.rc
index 212e937..d106471 100644
--- a/init.am57xevmboard.rc
+++ b/init.am57xevmboard.rc
@@ -1,13 +1,8 @@
1import /init.am57xevmboard.usb.rc 1import /vendor/etc/init/hw/init.am57xevmboard.usb.rc
2 2
3on early-init 3on early-init
4 mount debugfs /sys/kernel/debug /sys/kernel/debug mode=755 4 mount debugfs /sys/kernel/debug /sys/kernel/debug mode=755
5 5
6on init
7 # Support legacy paths
8 symlink /sdcard /mnt/sdcard
9 symlink /sdcard /storage/sdcard0
10
11on post-fs-data 6on post-fs-data
12 7
13 mkdir /data/media 0770 media_rw media_rw 8 mkdir /data/media 0770 media_rw media_rw
@@ -18,28 +13,36 @@ on post-fs-data
18 mkdir /data/lad 0770 system media 13 mkdir /data/lad 0770 system media
19 mkdir /data/lad/LAD 0770 system media 14 mkdir /data/lad/LAD 0770 system media
20 15
21# enabling thermal zone for mpu 16 #enabling thermal zone for mpu
22 write /sys/class/thermal/thermal_zone0/mode enabled 17 write /sys/class/thermal/thermal_zone0/mode enabled
23 18
24on boot 19on boot
20
25 # execute script to set cpuset configuration 21 # execute script to set cpuset configuration
26 exec - root root system -- /system/bin/init.am57xevmboard.cpuset.sh 22 exec - root root system -- /vendor/bin/init.am57xevmboard.cpuset.sh
23
24 # CMEM for Radio
25 insmod /vendor/lib/modules/cmemk.ko phys_start=0x95400000 phys_end=0x95800000 pools=1x147456,2x131072,25x65536,40x4096 allowOverlap=1
27 26
28 # 2d blitter 27 # 2d blitter
29 insmod /system/lib/modules/galcore.ko physSize=0xc0000000 28 insmod /system/lib/modules/galcore.ko physSize=0xc0000000
30 29
31on fs 30on fs
32 mount_all /fstab.am57xevmboard 31 mount_all /vendor/etc/fstab.am57xevmboard
33 32
34# on late-init 33on late-init
35# Load modules 34 # Load modules
36# exec u:r:modprobe:s0 -- /vendor/bin/modprobe -a -d \ 35 exec u:r:vendor_modprobe:s0 -- /vendor/bin/modprobe -a -d \
37 /vendor/lib/modules scsi_mod.ko usb-storage.ko sd_mod.ko \ 36 /vendor/lib/modules wl18xx.ko wlcore.ko wlcore_sdio.ko \
38 dra7-evm-encoder-tpd12s015.ko encoder-sii9022.ko encoder-tc358768.ko encoder-tpd12s015.ko \ 37 scsi_mod.ko usb-storage.ko sd_mod.ko \
38 dra7-evm-encoder-tpd12s015.ko encoder-tc358768.ko encoder-tpd12s015.ko \
39 ti-fpd3-serdes.ko \ 39 ti-fpd3-serdes.ko \
40 connector-hdmi.ko \ 40 connector-hdmi.ko \
41 panel-dpi.ko leds-tlc591xx.ko gpio_backlight.ko led_bl.ko pwm_bl.ko \ 41 panel-dpi.ko leds-tlc591xx.ko gpio_backlight.ko led_bl.ko pwm_bl.ko \
42 edt-ft5x06.ko goodix.ko input-polldev.ko ldc3001_ts.ko pixcir_i2c_ts.ko 42 edt-ft5x06.ko goodix.ko input-polldev.ko ldc3001_ts.ko pixcir_i2c_ts.ko \
43 ov1063x.ko ov490.ko tvp5158.ko \
44 gpio-pca953x.ko \
45 snd-soc-tlv320aic3x.ko
43 46
44service pvrsrvinit /vendor/bin/pvrsrvinit 47service pvrsrvinit /vendor/bin/pvrsrvinit
45 class core 48 class core
@@ -96,3 +99,16 @@ service dhcpcd_eth1 /system/bin/dhcpcd -ABDKL
96 class main 99 class main
97 disabled 100 disabled
98 oneshot 101 oneshot
102
103service lad_dra7xx /vendor/bin/lad_dra7xx -g
104 class main
105 user system
106 group media
107 oneshot
108
109service vis /vendor/bin/RadioApp -h eth
110 class main
111 user system
112 group media inet
113 disabled
114 oneshot
diff --git a/init.recovery.am57xevmboard.rc b/init.recovery.am57xevmboard.rc
index f47200c..2cec302 100644
--- a/init.recovery.am57xevmboard.rc
+++ b/init.recovery.am57xevmboard.rc
@@ -1,7 +1,8 @@
1#on late-init 1on late-init
2 # Load modules 2 # Load modules
3# exec u:r:modprobe:s0 -- /sbin/modprobe -a -d \ 3 exec u:r:modprobe:s0 -- /sbin/modprobe -a -d \
4 /lib/modules scsi_mod.ko usb-storage.ko sd_mod.ko \ 4 /lib/modules scsi_mod.ko usb-storage.ko sd_mod.ko \
5 dra7-evm-encoder-tpd12s015.ko encoder-sii9022.ko encoder-tc358768.ko encoder-tpd12s015.ko \ 5 dra7-evm-encoder-tpd12s015.ko encoder-sii9022.ko encoder-tc358768.ko encoder-tpd12s015.ko \
6 ti-fpd3-serdes.ko \
6 connector-hdmi.ko \ 7 connector-hdmi.ko \
7 panel-dpi.ko leds-tlc591xx.ko gpio_backlight.ko led_bl.ko pwm_bl.ko 8 panel-dpi.ko leds-tlc591xx.ko gpio_backlight.ko led_bl.ko pwm_bl.ko
diff --git a/media_profiles.xml b/media_profiles_V1_0.xml
index 244476d..aa7abaa 100644
--- a/media_profiles.xml
+++ b/media_profiles_V1_0.xml
@@ -13,74 +13,7 @@
13 See the License for the specific language governing permissions and 13 See the License for the specific language governing permissions and
14 limitations under the License. 14 limitations under the License.
15--> 15-->
16<!DOCTYPE MediaSettings [ 16<!DOCTYPE MediaSettings SYSTEM "/system/etc/media_profiles_V1_0.dtd">
17<!ELEMENT MediaSettings (CamcorderProfiles,
18 EncoderOutputFileFormat+,
19 VideoEncoderCap+,
20 AudioEncoderCap+,
21 VideoDecoderCap,
22 AudioDecoderCap)>
23<!ELEMENT CamcorderProfiles (EncoderProfile+, ImageEncoding+, ImageDecoding, Camera)>
24<!ELEMENT EncoderProfile (Video, Audio)>
25<!ATTLIST EncoderProfile quality (high|low) #REQUIRED>
26<!ATTLIST EncoderProfile fileFormat (mp4|3gp) #REQUIRED>
27<!ATTLIST EncoderProfile duration (30|60) #REQUIRED>
28<!ATTLIST EncoderProfile cameraId (0|1) #REQUIRED>
29<!ELEMENT Video EMPTY>
30<!ATTLIST Video codec (h264|h263|m4v) #REQUIRED>
31<!ATTLIST Video bitRate CDATA #REQUIRED>
32<!ATTLIST Video width CDATA #REQUIRED>
33<!ATTLIST Video height CDATA #REQUIRED>
34<!ATTLIST Video frameRate CDATA #REQUIRED>
35<!ELEMENT Audio EMPTY>
36<!ATTLIST Audio codec (amrnb|amrwb|aac) #REQUIRED>
37<!ATTLIST Audio bitRate CDATA #REQUIRED>
38<!ATTLIST Audio sampleRate CDATA #REQUIRED>
39<!ATTLIST Audio channels (1|2) #REQUIRED>
40<!ELEMENT ImageEncoding EMPTY>
41<!ATTLIST ImageEncoding quality (90|80|70|60|50|40) #REQUIRED>
42<!ELEMENT ImageDecoding EMPTY>
43<!ATTLIST ImageDecoding memCap CDATA #REQUIRED>
44<!ELEMENT Camera EMPTY>
45<!ELEMENT EncoderOutputFileFormat EMPTY>
46<!ATTLIST EncoderOutputFileFormat name (mp4|3gp) #REQUIRED>
47<!ELEMENT VideoEncoderCap EMPTY>
48<!ATTLIST VideoEncoderCap name (h264|h263|m4v|wmv) #REQUIRED>
49<!ATTLIST VideoEncoderCap enabled (true|false) #REQUIRED>
50<!ATTLIST VideoEncoderCap minBitRate CDATA #REQUIRED>
51<!ATTLIST VideoEncoderCap maxBitRate CDATA #REQUIRED>
52<!ATTLIST VideoEncoderCap minFrameWidth CDATA #REQUIRED>
53<!ATTLIST VideoEncoderCap maxFrameWidth CDATA #REQUIRED>
54<!ATTLIST VideoEncoderCap minFrameHeight CDATA #REQUIRED>
55<!ATTLIST VideoEncoderCap maxFrameHeight CDATA #REQUIRED>
56<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED>
57<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED>
58<!ELEMENT AudioEncoderCap EMPTY>
59<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED>
60<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED>
61<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED>
62<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED>
63<!ATTLIST AudioEncoderCap minSampleRate CDATA #REQUIRED>
64<!ATTLIST AudioEncoderCap maxSampleRate CDATA #REQUIRED>
65<!ATTLIST AudioEncoderCap minChannels (1|2) #REQUIRED>
66<!ATTLIST AudioEncoderCap maxChannels (1|2) #REQUIRED>
67<!ELEMENT VideoDecoderCap EMPTY>
68<!ATTLIST VideoDecoderCap name (wmv) #REQUIRED>
69<!ATTLIST VideoDecoderCap enabled (true|false) #REQUIRED>
70<!ELEMENT AudioDecoderCap EMPTY>
71<!ATTLIST AudioDecoderCap name (wma) #REQUIRED>
72<!ATTLIST AudioDecoderCap enabled (true|false) #REQUIRED>
73<!ELEMENT VideoEditorCap EMPTY>
74<!ATTLIST VideoEditorCap maxInputFrameWidth CDATA #REQUIRED>
75<!ATTLIST VideoEditorCap maxInputFrameHeight CDATA #REQUIRED>
76<!ATTLIST VideoEditorCap maxOutputFrameWidth CDATA #REQUIRED>
77<!ATTLIST VideoEditorCap maxOutputFrameHeight CDATA #REQUIRED>
78<!ATTLIST VideoEditorCap maxPrefetchYUVFrames CDATA #REQUIRED>
79<!ELEMENT ExportVideoProfile EMPTY>
80<!ATTLIST ExportVideoProfile name (h264|h263|m4v) #REQUIRED>
81<!ATTLIST ExportVideoProfile profile CDATA #REQUIRED>
82<!ATTLIST ExportVideoProfile level CDATA #REQUIRED>
83]>
84<!-- 17<!--
85 This file is used to declare the multimedia profiles and capabilities 18 This file is used to declare the multimedia profiles and capabilities
86 on an android-powered device. 19 on an android-powered device.
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml
index 6e728a7..da0285a 100644
--- a/overlay/frameworks/base/core/res/res/values/config.xml
+++ b/overlay/frameworks/base/core/res/res/values/config.xml
@@ -26,6 +26,11 @@
26 <!-- Arbitrary max 8 users. --> 26 <!-- Arbitrary max 8 users. -->
27 <integer name="config_multiuserMaximumUsers">8</integer> 27 <integer name="config_multiuserMaximumUsers">8</integer>
28 28
29 <!-- Car Mode -->
30 <integer name="config_defaultUiModeType">3</integer>
31 <!-- Can't leave car mode -->
32 <bool name="config_lockUiMode">true</bool>
33
29 <!-- This device is not "voice capable"; it's data-only. --> 34 <!-- This device is not "voice capable"; it's data-only. -->
30 <bool name="config_voice_capable">false</bool> 35 <bool name="config_voice_capable">false</bool>
31 36
diff --git a/sepolicy/device.te b/sepolicy/device.te
index 1489b07..6fb408e 100644
--- a/sepolicy/device.te
+++ b/sepolicy/device.te
@@ -1,2 +1,5 @@
1type bluetooth_control, dev_type; 1type bluetooth_control, dev_type;
2type rtc, dev_type; 2type rtc, dev_type;
3type hwspinlock_dev, dev_type;
4type uio_dev, dev_type;
5type cmem_dev, dev_type;
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts
index c46e517..25ab3d4 100644
--- a/sepolicy/file_contexts
+++ b/sepolicy/file_contexts
@@ -23,7 +23,22 @@
23/dev/rtc0 u:object_r:rtc:s0 23/dev/rtc0 u:object_r:rtc:s0
24 24
25#cpuset script 25#cpuset script
26/system/bin/init.am57xevmboard.cpuset.sh u:object_r:init-cpuset-sh_exec:s0 26/vendor/bin/init.am57xevmboard.cpuset.sh u:object_r:init-cpuset-sh_exec:s0
27
28#lad_dra7xx
29/vendor/bin/lad_dra7xx u:object_r:lad_dra7xx_exec:s0
30/data/lad(/.*)? u:object_r:lad_data_file:s0
31
32#hwspinlock and uio
33/dev/hwspinlock u:object_r:hwspinlock_dev:s0
34/dev/uio0 u:object_r:uio_dev:s0
35
36#VIS (RadioApp)
37/vendor/bin/RadioApp u:object_r:vis_exec:s0
38
39#CMEM
40/dev/cmem u:object_r:cmem_dev:s0
41
27#Block devices 42#Block devices
28/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/system u:object_r:system_block_device:s0 43/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/system u:object_r:system_block_device:s0
29/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/recovery u:object_r:recovery_block_device:s0 44/dev/block/platform/44000000.ocp/480b4000.mmc/by-name/recovery u:object_r:recovery_block_device:s0
diff --git a/sepolicy/lad_dra7xx.te b/sepolicy/lad_dra7xx.te
new file mode 100644
index 0000000..3b31bf2
--- /dev/null
+++ b/sepolicy/lad_dra7xx.te
@@ -0,0 +1,21 @@
1type lad_dra7xx, domain;
2type lad_dra7xx_exec, exec_type, file_type;
3type lad_data_file, file_type, data_file_type;
4
5# Started by init
6init_daemon_domain(lad_dra7xx)
7
8# Allow access to /data/lad
9allow lad_dra7xx devpts:chr_file {read write ioctl getattr };
10allow lad_dra7xx lad_data_file:dir { create_dir_perms };
11allow lad_dra7xx lad_data_file:fifo_file { create_file_perms };
12allow lad_dra7xx self:socket { create_socket_perms_no_ioctl };
13
14# Allow access to hwspinlock and uio device
15allow lad_dra7xx hwspinlock_dev:chr_file { rw_file_perms };
16allow lad_dra7xx uio_dev:chr_file { rw_file_perms };
17allow lad_dra7xx sysfs:file { r_file_perms };
18
19# Allow signull operation from known client processes
20allow lad_dra7xx mediaserver:process signull;
21allow lad_dra7xx vis:process signull;
diff --git a/sepolicy/mediaserver.te b/sepolicy/mediaserver.te
index 2e9e366..c8e811e 100644
--- a/sepolicy/mediaserver.te
+++ b/sepolicy/mediaserver.te
@@ -2,3 +2,11 @@ allow mediaserver system_server:unix_stream_socket { read write };
2 2
3#Camera 3#Camera
4allow mediaserver device:dir { read open }; 4allow mediaserver device:dir { read open };
5
6#APPE
7allow mediaserver lad_data_file:fifo_file { create_file_perms };
8allow mediaserver hwspinlock_dev:chr_file { rw_file_perms };
9allow mediaserver cmem_dev:chr_file { rw_file_perms };
10allow mediaserver self:socket { create_socket_perms_no_ioctl };
11allow mediaserver self:tcp_socket { create_stream_socket_perms };
12allow mediaserver ctl_default_prop:property_service set;
diff --git a/sepolicy/netd.te b/sepolicy/netd.te
index 6c8303c..143cc61 100644
--- a/sepolicy/netd.te
+++ b/sepolicy/netd.te
@@ -2,3 +2,7 @@
2# Ignore them 2# Ignore them
3dontaudit netd self:capability sys_module; 3dontaudit netd self:capability sys_module;
4dontaudit netd kernel:system module_request; 4dontaudit netd kernel:system module_request;
5
6# VIS
7allow netd vis:fd use;
8allow netd vis:tcp_socket { rw_socket_perms };
diff --git a/sepolicy/vis.te b/sepolicy/vis.te
new file mode 100644
index 0000000..101cf39
--- /dev/null
+++ b/sepolicy/vis.te
@@ -0,0 +1,20 @@
1type vis, domain;
2type vis_exec, exec_type, file_type;
3
4# Started by init
5init_daemon_domain(vis)
6
7# Allow access to IPC related resources
8allow vis devpts:chr_file { read write ioctl getattr };
9allow vis fwmarkd_socket:sock_file write;
10allow vis self:socket { create_socket_perms_no_ioctl };
11allow vis self:tcp_socket { create_stream_socket_perms };
12allow vis netd:unix_stream_socket connectto;
13allow vis node:tcp_socket node_bind;
14allow vis port:tcp_socket name_bind;
15allow vis lad_data_file:fifo_file { rw_file_perms };
16allow vis cmem_dev:chr_file { rw_file_perms };
17allow vis hwspinlock_dev:chr_file { rw_file_perms };
18
19# Allow access to I2C for audio codec configuration
20allow vis i2c_device:chr_file { rw_file_perms };
diff --git a/system.prop b/system.prop
deleted file mode 100644
index 8e0db0d..0000000
--- a/system.prop
+++ /dev/null
@@ -1,2 +0,0 @@
1# wifi.interface=wlan0
2persist.hwc.primary.tv=1