am 5f567f13: Merge "Panda: Add media codecs for Audio"

* commit '5f567f13b76dc6b2e1bfe3d279fbac0427704a09':
  Panda: Add media codecs for Audio
diff --git a/BoardConfig.mk b/BoardConfig.mk
index 6f4ed80..4211588 100644
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -19,6 +19,10 @@
 BOARD_USES_GENERIC_AUDIO := false
 USE_CAMERA_STUB := true
 
+# Default values, possibly overridden by BoardConfigVendor.mk
+TARGET_BOARD_INFO_FILE := device/ti/panda/board-info.txt
+BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR := device/ti/panda/bluetooth
+
 # Use the non-open-source parts, if they're present
 -include vendor/ti/panda/BoardConfigVendor.mk
 
diff --git a/audio/audio_hw.c b/audio/audio_hw.c
index 10574d7..d290d66 100644
--- a/audio/audio_hw.c
+++ b/audio/audio_hw.c
@@ -1506,21 +1506,21 @@
     return size * audio_stream_frame_size((struct audio_stream *)stream);
 }
 
-static uint32_t out_get_channels(const struct audio_stream *stream)
+static audio_channel_mask_t out_get_channels(const struct audio_stream *stream)
 {
     LOGFUNC("%s(%p)", __FUNCTION__, stream);
 
     return AUDIO_CHANNEL_OUT_STEREO;
 }
 
-static int out_get_format(const struct audio_stream *stream)
+static audio_format_t out_get_format(const struct audio_stream *stream)
 {
     LOGFUNC("%s(%p)", __FUNCTION__, stream);
 
     return AUDIO_FORMAT_PCM_16_BIT;
 }
 
-static int out_set_format(struct audio_stream *stream, int format)
+static int out_set_format(struct audio_stream *stream, audio_format_t format)
 {
     LOGFUNC("%s(%p)", __FUNCTION__, stream);
 
@@ -1694,15 +1694,7 @@
 
     /* only use resampler if required */
     if (out->config.rate != DEFAULT_OUT_SAMPLING_RATE) {
-        if (out->resampler) {
-            out->resampler->resample_from_input(out->resampler,
-                    (int16_t *)buffer,
-                    &in_frames,
-                    (int16_t *)out->buffer,
-                    &out_frames);
-            buf = out->buffer;
-        }
-        else {
+        if (!out->resampler) {
             ret = create_resampler(DEFAULT_OUT_SAMPLING_RATE,
                     MM_FULL_POWER_SAMPLING_RATE,
                     2,
@@ -1713,7 +1705,12 @@
                 goto exit;
             out->buffer = malloc(RESAMPLER_BUFFER_SIZE); /* todo: allow for reallocing */
         }
-
+        out->resampler->resample_from_input(out->resampler,
+                (int16_t *)buffer,
+                &in_frames,
+                (int16_t *)out->buffer,
+                &out_frames);
+        buf = out->buffer;
     } else {
         out_frames = in_frames;
         buf = (void *)buffer;
@@ -1868,7 +1865,7 @@
                                  in->config.channels);
 }
 
-static uint32_t in_get_channels(const struct audio_stream *stream)
+static audio_channel_mask_t in_get_channels(const struct audio_stream *stream)
 {
     struct omap4_stream_in *in = (struct omap4_stream_in *)stream;
 
@@ -1881,14 +1878,14 @@
     }
 }
 
-static int in_get_format(const struct audio_stream *stream)
+static audio_format_t in_get_format(const struct audio_stream *stream)
 {
     LOGFUNC("%s(%p)", __FUNCTION__, stream);
 
     return AUDIO_FORMAT_PCM_16_BIT;
 }
 
-static int in_set_format(struct audio_stream *stream, int format)
+static int in_set_format(struct audio_stream *stream, audio_format_t format)
 {
     LOGFUNC("%s(%p, %d)", __FUNCTION__, stream, format);
 
diff --git a/bluetooth/bdroid_buildcfg.h b/bluetooth/bdroid_buildcfg.h
new file mode 100644
index 0000000..aa5d012
--- /dev/null
+++ b/bluetooth/bdroid_buildcfg.h
@@ -0,0 +1,22 @@
+/*
+ * Copyright (C) 2012 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.
+ */
+
+#ifndef _BDROID_BUILDCFG_H
+#define _BDROID_BUILDCFG_H
+
+#define BTM_DEF_LOCAL_NAME   "Panda Nexus"
+
+#endif
diff --git a/device.mk b/device.mk
index 637778d..400fc1c 100644
--- a/device.mk
+++ b/device.mk
@@ -35,7 +35,6 @@
 	frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml
 
 PRODUCT_PACKAGES := \
-        make_ext4fs \
 	com.android.future.usb.accessory
 
 PRODUCT_PROPERTY_OVERRIDES := \
@@ -72,7 +71,6 @@
 
 # Filesystem management tools
 PRODUCT_PACKAGES += \
-	make_ext4fs \
 	setup_fs
 
 # BlueZ test tools
diff --git a/init.omap4pandaboard.rc b/init.omap4pandaboard.rc
index 967aad9..fe5b9ca 100644
--- a/init.omap4pandaboard.rc
+++ b/init.omap4pandaboard.rc
@@ -1,17 +1,23 @@
 import init.omap4pandaboard.usb.rc
 
-on early-init
-    export EXTERNAL_STORAGE /storage/sdcard0
-    mkdir /storage 0050 system sdcard_r
-    mkdir /storage/sdcard0 0000 system system
-    # for backwards compatibility
-    symlink /storage/sdcard0 /sdcard
-    symlink /storage/sdcard0 /mnt/sdcard
+on init
+    # See storage config details at http://source.android.com/tech/storage/
+    mkdir /mnt/shell/emulated 0700 shell shell
+    mkdir /storage/emulated 0555 root root
+
+    export EXTERNAL_STORAGE /storage/emulated/legacy
+    export EMULATED_STORAGE_SOURCE /mnt/shell/emulated
+    export EMULATED_STORAGE_TARGET /storage/emulated
+
+    # Support legacy paths
+    symlink /storage/emulated/legacy /sdcard
+    symlink /storage/emulated/legacy /mnt/sdcard
+    symlink /storage/emulated/legacy /storage/sdcard0
+    symlink /mnt/shell/emulated/0 /storage/emulated/legacy
 
 on post-fs-data
-    # we will remap this as /storage/sdcard0 with the sdcard fuse tool
     mkdir /data/media 0770 media_rw media_rw
-    chown media_rw media_rw /data/media
+
     setprop vold.post_fs_data_done 1
     mkdir /data/misc/dhcp 0770 dhcp dhcp
     chown dhcp dhcp /data/misc/dhcp
@@ -63,10 +69,8 @@
 	user bluetooth
 	group bluetooth net_bt_admin
 
-# create virtual SD card at /storage/sdcard0, based on the /data/media directory
-# daemon will drop to user/group system/media_rw after initializing
-# underlying files in /data/media will be created with user and group media_rw (1023)
-service sdcard /system/bin/sdcard /data/media 1023 1023
+# virtual sdcard daemon running as media_rw (1023)
+service sdcard /system/bin/sdcard /data/media /mnt/shell/sdcard0 1023 1023
     class late_start
 
 service wpa_supplicant /system/bin/wpa_supplicant -Dnl80211 -iwlan0 -c/data/misc/wifi/wpa_supplicant.conf -dd
diff --git a/proprietary-blobs.txt b/proprietary-blobs.txt
index a6b0c7d..46f7fa9 100644
--- a/proprietary-blobs.txt
+++ b/proprietary-blobs.txt
@@ -14,7 +14,7 @@
 
 # This file is generated by device/common/generate-blob-lists.sh - DO NOT EDIT
 
-/system/vendor/bin/pvrsrvinit
+/system/vendor/bin/pvrsrvctl
 /system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so
 /system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so
 /system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so