summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPraneeth Bajjuri2017-12-07 18:01:35 -0600
committerPraneeth Bajjuri2017-12-07 18:01:35 -0600
commited262d7d502432ae2269dadf61abe4a8547e3959 (patch)
treecb0bbe1bfaba3e59eb98ffceae0bc064ab1ac993
parent402a287d98b533b763a8bd92ca2afd82fcf1611a (diff)
parent07c58d221ebef458cc3ee6102e8dd0bc939fd9a7 (diff)
downloaddevice-ti-am57xevm-ed262d7d502432ae2269dadf61abe4a8547e3959.tar.gz
device-ti-am57xevm-ed262d7d502432ae2269dadf61abe4a8547e3959.tar.xz
device-ti-am57xevm-ed262d7d502432ae2269dadf61abe4a8547e3959.zip
Merge branch 'd-oreo-r6-release' of git://git.omapzoom.org/device/ti/am57xevm into HEAD
* 'd-oreo-r6-release' of git://git.omapzoom.org/device/ti/am57xevm: am57xevm: fastboot.sh: IDK: update script for picking correct dtb am57xevm: Install pru modules am57xevm: Enable general purpose PRU firmwares am57xevm: Enable PRU Ethernet on IDK boards am57xevm: change display density to fit small screen am57xevm: sync with device/ti/jacinto6evm am57xevm: include dalvik definitions audio: Combine the JAMR3 HAL into the primary HAL am57xevm: fastboot.sh: update script to pick right dtb am57xevm: fastboot.sh: update script based on new device names am57xevm: update fastboot script for latest u-boot am57xevm: fastboot: fix board_rev handling am57xevm: make modules builtin Signed-off-by: Praneeth Bajjuri <praneeth@ti.com> Conflicts: BoardConfig.mk init.am57xevmboard.rc init.recovery.am57xevmboard.rc Change-Id: I5e9999cef10384ddd6202a46eafb02b7ea9b66fb
-rw-r--r--BoardConfig.mk26
-rw-r--r--EP05120M09.idc25
-rw-r--r--LDC_3001_TouchScreen_Controller.idc25
-rw-r--r--audio/Android.mk5
-rw-r--r--audio/primary/audio_hw.c38
-rw-r--r--audio/primary/audio_policy_configuration.xml22
-rw-r--r--audio/primary/jamr3_mixer_paths.xml52
-rw-r--r--device.mk91
-rwxr-xr-xfastboot.sh39
-rw-r--r--fstab.am57xevmboard2
-rw-r--r--full_am57xevm.mk1
-rw-r--r--init.am57xevmboard.rc30
-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
21 files changed, 354 insertions, 151 deletions
diff --git a/BoardConfig.mk b/BoardConfig.mk
index cbce6c1..267d058 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
@@ -95,7 +98,6 @@ BOARD_VENDOR_KERNEL_MODULES := \
95 $(KERNELDIR)/drivers/usb/storage/usb-storage.ko \ 98 $(KERNELDIR)/drivers/usb/storage/usb-storage.ko \
96 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/connector-hdmi.ko \ 99 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/connector-hdmi.ko \
97 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/dra7-evm-encoder-tpd12s015.ko \ 100 $(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 \ 101 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tc358768.ko \
100 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.ko \ 102 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.ko \
101 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/panel-dpi.ko \ 103 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/panel-dpi.ko \
@@ -108,10 +110,19 @@ BOARD_VENDOR_KERNEL_MODULES := \
108 $(KERNELDIR)/drivers/input/touchscreen/edt-ft5x06.ko \ 110 $(KERNELDIR)/drivers/input/touchscreen/edt-ft5x06.ko \
109 $(KERNELDIR)/drivers/input/touchscreen/goodix.ko \ 111 $(KERNELDIR)/drivers/input/touchscreen/goodix.ko \
110 $(KERNELDIR)/drivers/input/touchscreen/ldc3001_ts.ko \ 112 $(KERNELDIR)/drivers/input/touchscreen/ldc3001_ts.ko \
111 $(KERNELDIR)/drivers/input/touchscreen/pixcir_i2c_ts.ko 113 $(KERNELDIR)/drivers/input/touchscreen/pixcir_i2c_ts.ko \
112# $(KERNELDIR)/drivers/net/wireless/ti/wl18xx/wl18xx.ko \ 114 $(KERNELDIR)/sound/soc/codecs/snd-soc-tlv320aic3x.ko \
113# $(KERNELDIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \ 115 $(KERNELDIR)/drivers/gpio/gpio-pca953x.ko \
114# $(KERNELDIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko 116 $(KERNELDIR)/drivers/media/i2c/ov1063x.ko \
117 $(KERNELDIR)/drivers/media/i2c/ov490.ko \
118 $(KERNELDIR)/drivers/media/i2c/tvp5158.ko \
119 $(KERNELDIR)/drivers/remoteproc/pruss_intc.ko \
120 $(KERNELDIR)/drivers/remoteproc/pruss.ko \
121 $(KERNELDIR)/drivers/rpmsg/rpmsg_pru.ko \
122 $(KERNELDIR)/drivers/remoteproc/pru_rproc.ko \
123 $(KERNELDIR)/drivers/net/ethernet/ti/prueth.ko
124
125
115 126
116BOARD_RECOVERY_KERNEL_MODULES := \ 127BOARD_RECOVERY_KERNEL_MODULES := \
117# $(KERNELDIR)/drivers/scsi/scsi_mod.ko \ 128# $(KERNELDIR)/drivers/scsi/scsi_mod.ko \
@@ -122,6 +133,7 @@ BOARD_RECOVERY_KERNEL_MODULES := \
122 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tc358768.ko \ 133 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tc358768.ko \
123 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.ko \ 134 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.ko \
124 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/panel-dpi.ko \ 135 $(KERNELDIR)/drivers/gpu/drm/omapdrm/displays/panel-dpi.ko \
136 $(KERNELDIR)/drivers/video/serdes/ti-fpd3-serdes.ko \
125 $(KERNELDIR)/drivers/leds/leds-tlc591xx.ko \ 137 $(KERNELDIR)/drivers/leds/leds-tlc591xx.ko \
126 $(KERNELDIR)/drivers/video/backlight/gpio_backlight.ko \ 138 $(KERNELDIR)/drivers/video/backlight/gpio_backlight.ko \
127 $(KERNELDIR)/drivers/video/backlight/led_bl.ko \ 139 $(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/Android.mk b/audio/Android.mk
index 9e14b16..d73e0c1 100644
--- a/audio/Android.mk
+++ b/audio/Android.mk
@@ -13,4 +13,9 @@
13# limitations under the License. 13# limitations under the License.
14 14
15LOCAL_PATH := $(call my-dir) 15LOCAL_PATH := $(call my-dir)
16
17ifeq ($(APPE_AUDIO),true)
18include $(LOCAL_PATH)/hdmi/Android.mk
19else
16include $(call all-makefiles-under,$(LOCAL_PATH)) 20include $(call all-makefiles-under,$(LOCAL_PATH))
21endif
diff --git a/audio/primary/audio_hw.c b/audio/primary/audio_hw.c
index 0ae1f54..13dca21 100644
--- a/audio/primary/audio_hw.c
+++ b/audio/primary/audio_hw.c
@@ -94,6 +94,7 @@ struct j6_audio_device {
94 struct j6_stream_out *out; 94 struct j6_stream_out *out;
95 struct j6_voice voice; 95 struct j6_voice voice;
96 struct audio_route *route; 96 struct audio_route *route;
97 struct audio_route *jamr_route;
97 audio_devices_t in_device; 98 audio_devices_t in_device;
98 audio_devices_t out_device; 99 audio_devices_t out_device;
99 pthread_mutex_t lock; 100 pthread_mutex_t lock;
@@ -102,6 +103,8 @@ struct j6_audio_device {
102 unsigned int out_port; 103 unsigned int out_port;
103 unsigned int bt_card; 104 unsigned int bt_card;
104 unsigned int bt_port; 105 unsigned int bt_port;
106 unsigned int jamr_card;
107 unsigned int jamr_port;
105 bool mic_mute; 108 bool mic_mute;
106 bool in_call; 109 bool in_call;
107 audio_mode_t mode; 110 audio_mode_t mode;
@@ -120,6 +123,8 @@ struct j6_stream_in {
120 size_t hw_frame_size; 123 size_t hw_frame_size;
121 unsigned int requested_rate; 124 unsigned int requested_rate;
122 unsigned int requested_channels; 125 unsigned int requested_channels;
126 unsigned int card;
127 unsigned int port;
123 int read_status; 128 int read_status;
124 pthread_mutex_t lock; 129 pthread_mutex_t lock;
125 bool standby; 130 bool standby;
@@ -147,10 +152,15 @@ static const char *supported_bt_cards[] = {
147 "DRA7xxWiLink", 152 "DRA7xxWiLink",
148}; 153};
149 154
155static const char *supported_jamr_cards[] = {
156 "DRA7xx-JAMR3",
157};
158
150#define MAX_CARD_COUNT 10 159#define MAX_CARD_COUNT 10
151 160
152#define SUPPORTED_IN_DEVICES (AUDIO_DEVICE_IN_BUILTIN_MIC | \ 161#define SUPPORTED_IN_DEVICES (AUDIO_DEVICE_IN_BUILTIN_MIC | \
153 AUDIO_DEVICE_IN_WIRED_HEADSET | \ 162 AUDIO_DEVICE_IN_WIRED_HEADSET | \
163 AUDIO_DEVICE_IN_LINE | \
154 AUDIO_DEVICE_IN_DEFAULT) 164 AUDIO_DEVICE_IN_DEFAULT)
155#define SUPPORTED_OUT_DEVICES (AUDIO_DEVICE_OUT_SPEAKER | \ 165#define SUPPORTED_OUT_DEVICES (AUDIO_DEVICE_OUT_SPEAKER | \
156 AUDIO_DEVICE_OUT_WIRED_HEADSET | \ 166 AUDIO_DEVICE_OUT_WIRED_HEADSET | \
@@ -173,6 +183,7 @@ static const char *supported_bt_cards[] = {
173#define BT_BUFFER_SIZE (BT_PERIOD_SIZE * BT_PERIOD_COUNT) 183#define BT_BUFFER_SIZE (BT_PERIOD_SIZE * BT_PERIOD_COUNT)
174 184
175#define MIXER_XML_PATH "/vendor/etc/mixer_paths.xml" 185#define MIXER_XML_PATH "/vendor/etc/mixer_paths.xml"
186#define JAMR_MIXER_XML_PATH "/vendor/etc/jamr3_mixer_paths.xml"
176 187
177struct pcm_config pcm_config_capture = { 188struct pcm_config pcm_config_capture = {
178 .channels = 2, 189 .channels = 2,
@@ -1295,8 +1306,8 @@ static ssize_t in_read(struct audio_stream_in *stream, void* buffer,
1295 if (in->standby) { 1306 if (in->standby) {
1296 select_input_device(adev); 1307 select_input_device(adev);
1297 1308
1298 ALOGI("in_read() open card %u port %u", adev->card, adev->in_port); 1309 ALOGI("in_read() open card %u port %u", in->card, in->port);
1299 in->pcm = pcm_open(adev->card, adev->in_port, 1310 in->pcm = pcm_open(in->card, in->port,
1300 PCM_IN | PCM_MONOTONIC, 1311 PCM_IN | PCM_MONOTONIC,
1301 &in->config); 1312 &in->config);
1302 if (!pcm_is_ready(in->pcm)) { 1313 if (!pcm_is_ready(in->pcm)) {
@@ -1624,6 +1635,8 @@ static int adev_open_input_stream(struct audio_hw_device *dev,
1624 in->remix = NULL; 1635 in->remix = NULL;
1625 in->resampler = NULL; 1636 in->resampler = NULL;
1626 in->buffer = NULL; 1637 in->buffer = NULL;
1638 in->card = (devices == AUDIO_DEVICE_IN_LINE) ? adev->jamr_card : adev->card;
1639 in->port = 0;
1627 adev->in = in; 1640 adev->in = in;
1628 1641
1629 /* in-place stereo-to-mono remix since capture stream is stereo */ 1642 /* in-place stereo-to-mono remix since capture stream is stereo */
@@ -1721,6 +1734,7 @@ static int adev_close(hw_device_t *device)
1721 ALOGI("adev_close()"); 1734 ALOGI("adev_close()");
1722 1735
1723 audio_route_free(adev->route); 1736 audio_route_free(adev->route);
1737 audio_route_free(adev->jamr_route);
1724 free(device); 1738 free(device);
1725 1739
1726 return 0; 1740 return 0;
@@ -1778,6 +1792,11 @@ static int adev_open(const hw_module_t* module, const char* name,
1778 adev->bt_port = 0; 1792 adev->bt_port = 0;
1779 ALOGI("Bluetooth SCO card is hw:%d\n", adev->bt_card); 1793 ALOGI("Bluetooth SCO card is hw:%d\n", adev->bt_card);
1780 1794
1795 adev->jamr_card = find_card_index(supported_jamr_cards,
1796 ARRAY_SIZE(supported_jamr_cards));
1797 adev->jamr_port = 0;
1798 ALOGI("JAMR card is hw:%d\n", adev->jamr_card);
1799
1781 adev->mic_mute = false; 1800 adev->mic_mute = false;
1782 adev->in_call = false; 1801 adev->in_call = false;
1783 adev->mode = AUDIO_MODE_NORMAL; 1802 adev->mode = AUDIO_MODE_NORMAL;
@@ -1785,13 +1804,24 @@ static int adev_open(const hw_module_t* module, const char* name,
1785 adev->route = audio_route_init(adev->card, MIXER_XML_PATH); 1804 adev->route = audio_route_init(adev->card, MIXER_XML_PATH);
1786 if (!adev->route) { 1805 if (!adev->route) {
1787 ALOGE("Unable to initialize audio routes"); 1806 ALOGE("Unable to initialize audio routes");
1788 free(adev); 1807 goto err1;
1789 return -EINVAL; 1808 }
1809
1810 adev->jamr_route = audio_route_init(adev->jamr_card, JAMR_MIXER_XML_PATH);
1811 if (!adev->jamr_route) {
1812 ALOGE("Unable to initialize JAMR audio routes");
1813 goto err2;
1790 } 1814 }
1791 1815
1792 *device = &adev->device.common; 1816 *device = &adev->device.common;
1793 1817
1794 return 0; 1818 return 0;
1819
1820 err2:
1821 audio_route_free(adev->route);
1822 err1:
1823 free(adev);
1824 return -ENODEV;
1795} 1825}
1796 1826
1797static struct hw_module_methods_t hal_module_methods = { 1827static struct hw_module_methods_t hal_module_methods = {
diff --git a/audio/primary/audio_policy_configuration.xml b/audio/primary/audio_policy_configuration.xml
index f13d1bb..c5fb06e 100644
--- a/audio/primary/audio_policy_configuration.xml
+++ b/audio/primary/audio_policy_configuration.xml
@@ -4,6 +4,7 @@
4 <attachedDevices> 4 <attachedDevices>
5 <item>Speaker</item> 5 <item>Speaker</item>
6 <item>Built-In Mic</item> 6 <item>Built-In Mic</item>
7 <item>Line In</item>
7 </attachedDevices> 8 </attachedDevices>
8 9
9 <defaultOutputDevice>Speaker</defaultOutputDevice> 10 <defaultOutputDevice>Speaker</defaultOutputDevice>
@@ -19,7 +20,11 @@
19 channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/> 20 channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
20 </mixPort> 21 </mixPort>
21 </mixPorts> 22 </mixPorts>
22 23 <mixPort name="line input" role="sink">
24 <profile name="" format="AUDIO_FORMAT_PCM_16_BIT"
25 samplingRates="8000,11025,12000,16000,22050,24000,32000,44100,48000"
26 channelMasks="AUDIO_CHANNEL_IN_MONO,AUDIO_CHANNEL_IN_STEREO"/>
27 </mixPort>
23 <devicePorts> 28 <devicePorts>
24 <devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink"> 29 <devicePort tagName="Speaker" type="AUDIO_DEVICE_OUT_SPEAKER" role="sink">
25 </devicePort> 30 </devicePort>
@@ -30,18 +35,17 @@
30 35
31 <devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source"> 36 <devicePort tagName="Built-In Mic" type="AUDIO_DEVICE_IN_BUILTIN_MIC" role="source">
32 </devicePort> 37 </devicePort>
38 <devicePort tagName="Line In" type="AUDIO_DEVICE_IN_LINE" role="source">
39 </devicePort>
33 </devicePorts> 40 </devicePorts>
34 41
35 <routes> 42 <routes>
36 <route type="mux" sink="Speaker" 43 <route type="mux" sink="Speaker" sources="primary output"/>
37 sources="primary output"/> 44 <route type="mux" sink="Wired Headset" sources="primary output"/>
38 <route type="mux" sink="Wired Headset" 45 <route type="mux" sink="Wired Headphones" sources="primary output"/>
39 sources="primary output"/>
40 <route type="mux" sink="Wired Headphones"
41 sources="primary output"/>
42 46
43 <route type="mix" sink="primary input" 47 <route type="mix" sink="primary input" sources="Built-In Mic"/>
44 sources="Built-In Mic"/> 48 <route type="mix" sink="line input" sources="Line In"/>
45 </routes> 49 </routes>
46</module> 50</module>
47 51
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 d7d78ef..0134c80 100644
--- a/device.mk
+++ b/device.mk
@@ -14,6 +14,9 @@
14# limitations under the License. 14# limitations under the License.
15# 15#
16 16
17# Audio Post Processing Engine (APPE)
18APPE_AUDIO := false
19
17ifeq ($(TARGET_PREBUILT_KERNEL),) 20ifeq ($(TARGET_PREBUILT_KERNEL),)
18LOCAL_KERNEL := $(KERNELDIR)/arch/arm/boot/zImage 21LOCAL_KERNEL := $(KERNELDIR)/arch/arm/boot/zImage
19else 22else
@@ -23,6 +26,7 @@ endif
23USE_XML_AUDIO_POLICY_CONF := 1 26USE_XML_AUDIO_POLICY_CONF := 1
24 27
25PRODUCT_PACKAGES += \ 28PRODUCT_PACKAGES += \
29 vehicle.default \
26 android.hardware.wifi@1.0-service \ 30 android.hardware.wifi@1.0-service \
27 android.hardware.graphics.allocator@2.0-impl \ 31 android.hardware.graphics.allocator@2.0-impl \
28 android.hardware.graphics.allocator@2.0-service \ 32 android.hardware.graphics.allocator@2.0-service \
@@ -42,24 +46,27 @@ PRODUCT_PACKAGES += \
42 46
43PRODUCT_COPY_FILES := \ 47PRODUCT_COPY_FILES := \
44 $(LOCAL_KERNEL):kernel \ 48 $(LOCAL_KERNEL):kernel \
45 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 \
46 device/ti/am57xevm/manifest.xml:vendor/manifest.xml \ 50 device/ti/am57xevm/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/manifest.xml \
47 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 \
48 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 \
49 device/ti/am57xevm/ueventd.am57xevmboard.rc:root/ueventd.am57xevmboard.rc \ 53 device/ti/am57xevm/ueventd.am57xevmboard.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
50 device/ti/am57xevm/fstab.am57xevmboard:root/fstab.am57xevmboard \ 54 device/ti/am57xevm/fstab.am57xevmboard:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.am57xevmboard \
51 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 \
52 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 \
53 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 \
54 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 \
55 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 \
56 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 \
57 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 \
58 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 \
59 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 \
60 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 \
61 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 \
62 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 \
63 70
64# init.rc for recovery image 71# init.rc for recovery image
65PRODUCT_COPY_FILES += \ 72PRODUCT_COPY_FILES += \
@@ -71,26 +78,38 @@ PRODUCT_PACKAGES += \
71 78
72# These are the hardware-specific features 79# These are the hardware-specific features
73PRODUCT_COPY_FILES += \ 80PRODUCT_COPY_FILES += \
74 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
75 82
76# Audio 83# Audio
77PRODUCT_COPY_FILES += \ 84PRODUCT_COPY_FILES += \
78 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 \
79 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 \
80 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 \
81 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 \
82 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
83 device/ti/am57xevm/audio/primary/mixer_paths.xml:system/etc/mixer_paths.xml \ 90
84 device/ti/am57xevm/audio/primary/audio_policy_configuration.xml:system/etc/primary_audio_policy_configuration.xml \ 91ifeq ($(APPE_AUDIO),true)
85 device/ti/am57xevm/audio/audio_policy_configuration.xml:system/etc/audio_policy_configuration.xml 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
86 104
87# cpuset configuration 105# cpuset configuration
88PRODUCT_COPY_FILES += \ 106PRODUCT_COPY_FILES += \
89 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
90 108
91 109
92PRODUCT_PROPERTY_OVERRIDES := \ 110PRODUCT_PROPERTY_OVERRIDES := \
93 hwui.render_dirty_regions=false 111 hwui.render_dirty_regions=false \
112 wifi.interface=wlan0
94 113
95PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 114PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
96 persist.sys.usb.config=mtp 115 persist.sys.usb.config=mtp
@@ -113,7 +132,7 @@ PRODUCT_PROPERTY_OVERRIDES += \
113 ro.sf.lcd_density=120 132 ro.sf.lcd_density=120
114 133
115# WI-Fi 134# WI-Fi
116# PRODUCT_PACKAGES += \ 135PRODUCT_PACKAGES += \
117 wificond \ 136 wificond \
118 wpa_supplicant \ 137 wpa_supplicant \
119 wpa_supplicant.conf \ 138 wpa_supplicant.conf \
@@ -152,7 +171,7 @@ PRODUCT_PACKAGES += \
152 tinycap 171 tinycap
153 172
154# Radio 173# Radio
155# PRODUCT_PACKAGES += \ 174PRODUCT_PACKAGES += \
156 RadioApp \ 175 RadioApp \
157 lad_dra7xx \ 176 lad_dra7xx \
158 libtiipc \ 177 libtiipc \
@@ -169,10 +188,18 @@ PRODUCT_PACKAGES += Launcher3 \
169PRODUCT_PROPERTY_OVERRIDES += \ 188PRODUCT_PROPERTY_OVERRIDES += \
170 media.aac_51_output_enabled=true 189 media.aac_51_output_enabled=true
171 190
172#$(call inherit-product, frameworks/native/build/tablet-7in-hdpi-1024-dalvik-heap.mk) 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
197$(call inherit-product, frameworks/native/build/tablet-7in-hdpi-1024-dalvik-heap.mk)
173$(call inherit-product-if-exists, hardware/ti/dra7xx/am57x.mk) 198$(call inherit-product-if-exists, hardware/ti/dra7xx/am57x.mk)
174#$(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)
175$(call inherit-product-if-exists, device/ti/proprietary-open/jacinto6/ti-jacinto6-vendor.mk) 200$(call inherit-product-if-exists, device/ti/proprietary-open/jacinto6/ti-jacinto6-vendor.mk)
176$(call inherit-product-if-exists, device/ti/proprietary-open/jacinto6/ducati-full_jacinto6evm.mk) 201$(call inherit-product-if-exists, device/ti/proprietary-open/jacinto6/ducati-full_jacinto6evm.mk)
177$(call inherit-product-if-exists, device/ti/proprietary-open/wl12xx/wlan/wl12xx-wlan-fw-products.mk) 202$(call inherit-product-if-exists, device/ti/proprietary-open/wl12xx/wlan/wl12xx-wlan-fw-products.mk)
178$(call inherit-product-if-exists, device/ti/proprietary-open/wl12xx/wpan/wl12xx-wpan-fw-products.mk) 203$(call inherit-product-if-exists, device/ti/proprietary-open/wl12xx/wpan/wl12xx-wpan-fw-products.mk)
204$(call inherit-product-if-exists, device/ti/proprietary-open/jacinto6/prueth-full_am57xevm.mk)
205$(call inherit-product-if-exists, device/ti/proprietary-open/jacinto6/pru-icss-full_am57xevm.mk)
diff --git a/fastboot.sh b/fastboot.sh
index 0d7776a..b2bd25a 100755
--- a/fastboot.sh
+++ b/fastboot.sh
@@ -63,13 +63,13 @@ fi
63#product=`${FASTBOOT} getvar product 2>&1 | grep product | awk '{print$2}'` 63#product=`${FASTBOOT} getvar product 2>&1 | grep product | awk '{print$2}'`
64cpu=`${FASTBOOT} getvar cpu 2>&1 | grep cpu | awk '{print$2}'` 64cpu=`${FASTBOOT} getvar cpu 2>&1 | grep cpu | awk '{print$2}'`
65cputype=`${FASTBOOT} getvar secure 2>&1 | grep secure | awk '{print$2}'` 65cputype=`${FASTBOOT} getvar secure 2>&1 | grep secure | awk '{print$2}'`
66boardrev=`${FASTBOOT} getvar board_rev 2>&1 | grep board_rev | awk '{print$2}'` 66boardrev=`${FASTBOOT} getvar board_rev 2>&1 | grep board_rev | awk '{print$2}' | cut -b 1`
67 67
68 68
69# Make EMU = HS 69# Make EMU = HS
70if [ ${cputype} = "EMU" ] || [ ${cputype} = "HS" ]; then 70if [ ${cputype} = "EMU" ] || [ ${cputype} = "HS" ]; then
71 cputype="HS" 71 cputype="HS"
72 xloader="${PRODUCT_OUT}${cputype}_QSPI_MLO" 72 xloader="${PRODUCT_OUT}u-boot-spl_HS_X-LOADER"
73 uboot="${PRODUCT_OUT}${cputype}_u-boot.img" 73 uboot="${PRODUCT_OUT}${cputype}_u-boot.img"
74# If fastboot does not support getvar default to GP 74# If fastboot does not support getvar default to GP
75elif [ ${cputype} = "" ] || [ ${cputype} = "GP" ]; then 75elif [ ${cputype} = "" ] || [ ${cputype} = "GP" ]; then
@@ -79,30 +79,35 @@ elif [ ${cputype} = "" ] || [ ${cputype} = "GP" ]; then
79fi 79fi
80 80
81# Based on cpu, decide the dtb to flash, default fall back to J6 and LCD 10 81# Based on cpu, decide the dtb to flash, default fall back to J6 and LCD 10
82if [ ${cpu} = "J6ECO" ]; then 82
83if [ ${cpu} = "DRA722" ]; then
83 if [ ${boardrev} = "C" ]; then 84 if [ ${boardrev} = "C" ]; then
84 environment="${PRODUCT_OUT}dra72-evm-lcd-osd.dtb" 85 environment="${PRODUCT_OUT}dra72-evm-revc-lcd-osd101t2045.dtb"
85 elif [ ${boardrev} = "1.3A" ] || [ ${boardrev} = "1.3B" ]; then 86 elif [ ${boardrev} = "A" ]; then
87 environment="${PRODUCT_OUT}dra71-evm-lcd-auo-g101evn01.0.dtb"
88 elif [ ${boardrev} = "1" ]; then
86 environment="${PRODUCT_OUT}am571x-idk-lcd-osd101t2587.dtb" 89 environment="${PRODUCT_OUT}am571x-idk-lcd-osd101t2587.dtb"
87 else 90 else
88 environment="${PRODUCT_OUT}dra72-evm-lcd10.dtb" 91 environment="${PRODUCT_OUT}am571x-idk-lcd-osd101t2587.dtb"
89 fi 92 fi
90else 93elif [ ${cpu} = "DRA752" ]; then
91 if [ ${boardrev} = "H" ]; then 94 if [ ${boardrev} = "H" ]; then
92 environment="${PRODUCT_OUT}dra7-evm-lcd-osd.dtb" 95 environment="${PRODUCT_OUT}dra7-evm-lcd-osd.dtb"
96 elif [ ${boardrev} = "A" ]; then
97 environment="${PRODUCT_OUT}am57xx-evm-reva3.dtb"
93 else 98 else
94 environment="${PRODUCT_OUT}am57xx-evm-reva3.dtb" 99 environment="${PRODUCT_OUT}am57xx-evm-reva3.dtb"
95 fi 100 fi
96fi 101elif [ ${cpu} = "DRA762" ]; then
97 102 if [ ${boardrev} = "1" ]; then
98if [ ${cpu} = "J6" ]; then 103 environment="${PRODUCT_OUT}am574x-idk-lcd-osd101t2587.dtb"
99 if [ ${boardrev} = "A.30" ]; then 104 else
100 environment="${PRODUCT_OUT}am57xx-evm-reva3.dtb" 105 environment="${PRODUCT_OUT}am574-idk.dtb"
101 elif [ ${boardrev} = "1.3A" ] || [ ${boardrev} = "1.3B" ]; then
102 environment="${PRODUCT_OUT}am572x-idk-lcd-osd101t2587.dtb"
103 elif [ ${boardrev} = "B.10" ]; then
104 environment="${PRODUCT_OUT}am57xx-beagle-x15-revb1.dtb"
105 fi 106 fi
107else
108 echo "CPU not detected, no matching dtb file found"
109 echo "flashing default dtb, Review and Reflash correct dtb"
110 environment="${PRODUCT_OUT}dra7-evm-lcd-osd.dtb"
106fi 111fi
107 112
108# Create the filename 113# Create the filename
@@ -159,7 +164,7 @@ fi
159echo "Create GPT partition table" 164echo "Create GPT partition table"
160${FASTBOOT} oem format 165${FASTBOOT} oem format
161 166
162if [ ${boardrev} = "1.3A" ] || [ ${boardrev} = "1.3B" ]; then 167if [ ${boardrev} = "1" ]; then
163 echo "Setting target for bootloader to spi" 168 echo "Setting target for bootloader to spi"
164 ${FASTBOOT} oem spi 169 ${FASTBOOT} oem spi
165else 170else
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 4c398c4..9f9f50c 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,18 +13,22 @@ 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 33#on late-init
35# Load modules 34# Load modules
@@ -96,3 +95,16 @@ service dhcpcd_eth1 /system/bin/dhcpcd -ABDKL
96 class main 95 class main
97 disabled 96 disabled
98 oneshot 97 oneshot
98
99service lad_dra7xx /vendor/bin/lad_dra7xx -g
100 class main
101 user system
102 group media
103 oneshot
104
105service vis /vendor/bin/RadioApp -h eth
106 class main
107 user system
108 group media inet
109 disabled
110 oneshot
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