Created
July 24, 2012 04:13
-
-
Save drewis/3167995 to your computer and use it in GitHub Desktop.
crespo git diff android-4.0.4_r2..android-4.1.1_r3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/BoardConfig.mk b/BoardConfig.mk | |
index 2927c72..ac7f5db 100755 | |
--- a/BoardConfig.mk | |
+++ b/BoardConfig.mk | |
@@ -20,5 +20,9 @@ | |
# Use the non-open-source parts, if they're present | |
-include vendor/samsung/crespo/BoardConfigVendor.mk | |
+# Use the open-source board-info file if none was set by the vendor | |
+# config. | |
+TARGET_BOARD_INFO_FILE ?= device/samsung/crespo/board-info.txt | |
+ | |
# Use the parts that are common between all crespos | |
include device/samsung/crespo/BoardConfigCommon.mk | |
diff --git a/BoardConfigCommon.mk b/BoardConfigCommon.mk | |
index 61d04a4..69ef4ba 100755 | |
--- a/BoardConfigCommon.mk | |
+++ b/BoardConfigCommon.mk | |
@@ -66,14 +66,25 @@ BOARD_USERDATAIMAGE_PARTITION_SIZE := 1073741824 | |
BOARD_FLASH_BLOCK_SIZE := 4096 | |
# Connectivity - Wi-Fi | |
-WPA_SUPPLICANT_VERSION := VER_0_8_X | |
-BOARD_WPA_SUPPLICANT_DRIVER := WEXT | |
-BOARD_WLAN_DEVICE := bcm4329 | |
-BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_wext | |
-WIFI_DRIVER_MODULE_PATH := "/system/modules/bcm4329.ko" | |
-WIFI_DRIVER_FW_PATH_STA := "/vendor/firmware/fw_bcm4329.bin" | |
-WIFI_DRIVER_FW_PATH_AP := "/vendor/firmware/fw_bcm4329_apsta.bin" | |
-WIFI_DRIVER_MODULE_NAME := "bcm4329" | |
-WIFI_DRIVER_MODULE_ARG := "iface_name=wlan0 firmware_path=/vendor/firmware/fw_bcm4329.bin nvram_path=/vendor/firmware/nvram_net.txt" | |
+WPA_SUPPLICANT_VERSION := VER_0_8_X | |
+BOARD_WPA_SUPPLICANT_DRIVER := NL80211 | |
+BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_bcmdhd | |
+BOARD_HOSTAPD_DRIVER := NL80211 | |
+BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_bcmdhd | |
+BOARD_WLAN_DEVICE := bcmdhd | |
+#WIFI_DRIVER_MODULE_PATH := "/system/lib/modules/bcm4329.ko" | |
+WIFI_DRIVER_FW_PATH_PARAM := "/sys/module/bcmdhd/parameters/firmware_path" | |
+WIFI_DRIVER_FW_PATH_STA := "/vendor/firmware/fw_bcmdhd.bin" | |
+WIFI_DRIVER_FW_PATH_AP := "/vendor/firmware/fw_bcmdhd_apsta.bin" | |
+WIFI_DRIVER_FW_PATH_P2P := "/vendor/firmware/fw_bcmdhd_p2p.bin" | |
USE_OPENGL_RENDERER := true | |
+ | |
+# TARGET_DISABLE_TRIPLE_BUFFERING can be used to disable triple buffering | |
+# on per target basis. On crespo it is possible to do so in theory | |
+# to save memory, however, there are currently some limitations in the | |
+# OpenGL ES driver that in conjunction with disable triple-buffering | |
+# would hurt performance significantly (see b/6016711) | |
+TARGET_DISABLE_TRIPLE_BUFFERING := false | |
+ | |
+BOARD_ALLOW_EGL_HIBERNATION := true | |
diff --git a/bcm4329.ko b/bcm4329.ko | |
deleted file mode 100644 | |
index 21fc101..0000000 | |
Binary files a/bcm4329.ko and /dev/null differ | |
diff --git a/board-info.txt b/board-info.txt | |
index 0edd050..d7d97b8 100644 | |
--- a/board-info.txt | |
+++ b/board-info.txt | |
@@ -1,3 +1 @@ | |
require board=herring | |
-require version-bootloader=I9020XXJK1|I9020XXKA3|I9020XXKI1|I9020XXKL1 | |
-require version-baseband=I9020XXJK8|I9020XXKB1|I9020XXKD1|I9020XXKF1|I9020XXKI1|I9020UCKB2|I9020UCKD1|I9020UCKF1|I9020UCKJ1|I9020KRKB3|M200KRKC1 | |
diff --git a/cypress-touchkey.kl b/cypress-touchkey.kl | |
index c884476..386bcab 100644 | |
--- a/cypress-touchkey.kl | |
+++ b/cypress-touchkey.kl | |
@@ -15,4 +15,4 @@ | |
key 139 MENU VIRTUAL | |
key 102 HOME VIRTUAL | |
key 158 BACK VIRTUAL | |
-key 217 SEARCH VIRTUAL | |
+key 217 ASSIST VIRTUAL | |
diff --git a/device.mk b/device.mk | |
index b028f3c..cd50597 100644 | |
--- a/device.mk | |
+++ b/device.mk | |
@@ -36,7 +36,7 @@ | |
# These are the hardware-specific features | |
PRODUCT_COPY_FILES := \ | |
- frameworks/base/data/etc/android.hardware.telephony.gsm.xml:system/etc/permissions/android.hardware.telephony.gsm.xml | |
+ frameworks/native/data/etc/android.hardware.telephony.gsm.xml:system/etc/permissions/android.hardware.telephony.gsm.xml | |
# GPS config | |
PRODUCT_COPY_FILES += \ | |
diff --git a/device_base.mk b/device_base.mk | |
index 4d0f2d5..968e09d 100644 | |
--- a/device_base.mk | |
+++ b/device_base.mk | |
@@ -50,6 +50,7 @@ PRODUCT_COPY_FILES := \ | |
PRODUCT_COPY_FILES += \ | |
device/samsung/crespo/init.herring.rc:root/init.herring.rc \ | |
device/samsung/crespo/init.herring.usb.rc:root/init.herring.usb.rc \ | |
+ device/samsung/crespo/fstab.herring:root/fstab.herring \ | |
device/samsung/crespo/ueventd.herring.rc:root/ueventd.herring.rc | |
# Prebuilt kl and kcm keymaps | |
@@ -90,13 +91,13 @@ PRODUCT_COPY_FILES += \ | |
# file that declares the MIFARE NFC constant | |
PRODUCT_COPY_FILES += \ | |
- device/sample/nxp/com.nxp.mifare.xml:system/etc/permissions/com.nxp.mifare.xml | |
+ frameworks/native/data/etc/com.nxp.mifare.xml:system/etc/permissions/com.nxp.mifare.xml | |
# NFC EXTRAS add-on API | |
PRODUCT_PACKAGES += \ | |
com.android.nfc_extras | |
PRODUCT_COPY_FILES += \ | |
- frameworks/base/nfc-extras/com.android.nfc_extras.xml:system/etc/permissions/com.android.nfc_extras.xml | |
+ frameworks/native/data/etc/com.android.nfc_extras.xml:system/etc/permissions/com.android.nfc_extras.xml | |
# NFCEE access control | |
ifeq ($(TARGET_BUILD_VARIANT),user) | |
@@ -122,7 +123,8 @@ PRODUCT_CHARACTERISTICS := nosdcard | |
# These are the OpenMAX IL configuration files | |
PRODUCT_COPY_FILES += \ | |
device/samsung/crespo/sec_mm/sec_omx/sec_omx_core/secomxregistry:system/etc/secomxregistry \ | |
- device/samsung/crespo/media_profiles.xml:system/etc/media_profiles.xml | |
+ device/samsung/crespo/media_profiles.xml:system/etc/media_profiles.xml \ | |
+ device/samsung/crespo/media_codecs.xml:system/etc/media_codecs.xml | |
# These are the OpenMAX IL modules | |
@@ -148,7 +150,10 @@ PRODUCT_PACKAGES += \ | |
audio_policy.herring \ | |
audio.primary.herring \ | |
audio.a2dp.default \ | |
- libaudioutils | |
+ audio.usb.default | |
+ | |
+PRODUCT_COPY_FILES += \ | |
+ device/samsung/crespo/libaudio/audio_policy.conf:system/etc/audio_policy.conf | |
# NFC | |
PRODUCT_PACKAGES += \ | |
@@ -172,18 +177,18 @@ PRODUCT_COPY_FILES += \ | |
# These are the hardware-specific features | |
PRODUCT_COPY_FILES += \ | |
- frameworks/base/data/etc/handheld_core_hardware.xml:system/etc/permissions/handheld_core_hardware.xml \ | |
- frameworks/base/data/etc/android.hardware.camera.flash-autofocus.xml:system/etc/permissions/android.hardware.camera.flash-autofocus.xml \ | |
- frameworks/base/data/etc/android.hardware.camera.front.xml:system/etc/permissions/android.hardware.camera.front.xml \ | |
- frameworks/base/data/etc/android.hardware.location.gps.xml:system/etc/permissions/android.hardware.location.gps.xml \ | |
- frameworks/base/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \ | |
- frameworks/base/data/etc/android.hardware.sensor.proximity.xml:system/etc/permissions/android.hardware.sensor.proximity.xml \ | |
- frameworks/base/data/etc/android.hardware.sensor.light.xml:system/etc/permissions/android.hardware.sensor.light.xml \ | |
- frameworks/base/data/etc/android.hardware.sensor.gyroscope.xml:system/etc/permissions/android.hardware.sensor.gyroscope.xml \ | |
- frameworks/base/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:system/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \ | |
- frameworks/base/data/etc/android.hardware.nfc.xml:system/etc/permissions/android.hardware.nfc.xml \ | |
- frameworks/base/data/etc/android.software.sip.voip.xml:system/etc/permissions/android.software.sip.voip.xml \ | |
- frameworks/base/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \ | |
+ frameworks/native/data/etc/handheld_core_hardware.xml:system/etc/permissions/handheld_core_hardware.xml \ | |
+ frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:system/etc/permissions/android.hardware.camera.flash-autofocus.xml \ | |
+ frameworks/native/data/etc/android.hardware.camera.front.xml:system/etc/permissions/android.hardware.camera.front.xml \ | |
+ frameworks/native/data/etc/android.hardware.location.gps.xml:system/etc/permissions/android.hardware.location.gps.xml \ | |
+ frameworks/native/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \ | |
+ frameworks/native/data/etc/android.hardware.sensor.proximity.xml:system/etc/permissions/android.hardware.sensor.proximity.xml \ | |
+ frameworks/native/data/etc/android.hardware.sensor.light.xml:system/etc/permissions/android.hardware.sensor.light.xml \ | |
+ frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:system/etc/permissions/android.hardware.sensor.gyroscope.xml \ | |
+ frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:system/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \ | |
+ frameworks/native/data/etc/android.hardware.nfc.xml:system/etc/permissions/android.hardware.nfc.xml \ | |
+ frameworks/native/data/etc/android.software.sip.voip.xml:system/etc/permissions/android.software.sip.voip.xml \ | |
+ frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \ | |
packages/wallpapers/LivePicker/android.software.live_wallpaper.xml:system/etc/permissions/android.software.live_wallpaper.xml | |
# The OpenGL ES API level that is natively supported by this device. | |
@@ -195,14 +200,13 @@ PRODUCT_PROPERTY_OVERRIDES := \ | |
# Note that the only such settings should be the ones that are too low-level to | |
# be reachable from resources or other mechanisms. | |
PRODUCT_PROPERTY_OVERRIDES += \ | |
- wifi.interface=wlan0 \ | |
- wifi.supplicant_scan_interval=15 | |
+ wifi.interface=wlan0 | |
# Set default USB interface | |
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ | |
persist.sys.usb.config=mass_storage | |
-include frameworks/base/build/phone-hdpi-512-dalvik-heap.mk | |
+include frameworks/native/build/phone-hdpi-512-dalvik-heap.mk | |
# we have enough storage space to hold precise GC data | |
PRODUCT_TAGS += dalvik.gc.type-precise | |
@@ -216,9 +220,6 @@ else | |
LOCAL_WIFI_MODULE := $(TARGET_PREBUILT_WIFI_MODULE) | |
endif | |
-PRODUCT_COPY_FILES += \ | |
- $(LOCAL_WIFI_MODULE):system/modules/bcm4329.ko | |
- | |
ifeq ($(TARGET_PREBUILT_KERNEL),) | |
LOCAL_KERNEL := device/samsung/crespo/kernel | |
else | |
@@ -229,3 +230,6 @@ PRODUCT_COPY_FILES += \ | |
$(LOCAL_KERNEL):kernel | |
$(call inherit-product-if-exists, vendor/nxp/pn544/nxp-pn544-fw-vendor.mk) | |
+ | |
+WIFI_BAND := 802_11_BG | |
+$(call inherit-product-if-exists, hardware/broadcom/wlan/bcmdhd/firmware/bcm4329/device-bcm.mk) | |
diff --git a/egl.cfg b/egl.cfg | |
index 45af426..edf6a25 100644 | |
--- a/egl.cfg | |
+++ b/egl.cfg | |
@@ -1,2 +1 @@ | |
-0 0 android | |
-0 1 POWERVR_SGX540_120 | |
+0 0 POWERVR_SGX540_120 | |
diff --git a/extract-files.sh b/extract-files.sh | |
deleted file mode 100755 | |
index 4e026bb..0000000 | |
--- a/extract-files.sh | |
+++ /dev/null | |
@@ -1,119 +0,0 @@ | |
-#!/bin/sh | |
- | |
-# Copyright (C) 2010 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. | |
- | |
-# This file is generated by device/common/generate-blob-scripts.sh - DO NOT EDIT | |
- | |
-DEVICE=crespo | |
-MANUFACTURER=samsung | |
- | |
-mkdir -p ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-adb pull /system/lib/libsecril-client.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libsecril-client.so | |
-adb pull /system/vendor/bin/gpsd ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/gpsd | |
-chmod 755 ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/gpsd | |
-adb pull /system/vendor/bin/pvrsrvinit ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/pvrsrvinit | |
-chmod 755 ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/pvrsrvinit | |
-adb pull /system/vendor/firmware/bcm4329.hcd ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/bcm4329.hcd | |
-adb pull /system/vendor/firmware/cypress-touchkey.bin ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/cypress-touchkey.bin | |
-adb pull /system/vendor/firmware/libpn544_fw.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libpn544_fw.so | |
-adb pull /system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libEGL_POWERVR_SGX540_120.so | |
-adb pull /system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libGLESv1_CM_POWERVR_SGX540_120.so | |
-adb pull /system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libGLESv2_POWERVR_SGX540_120.so | |
-adb pull /system/vendor/lib/hw/gps.s5pc110.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/gps.s5pc110.so | |
-adb pull /system/vendor/lib/hw/gralloc.s5pc110.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/gralloc.s5pc110.so | |
-adb pull /system/vendor/lib/libakm.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libakm.so | |
-adb pull /system/vendor/lib/libglslcompiler.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libglslcompiler.so | |
-adb pull /system/vendor/lib/libIMGegl.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libIMGegl.so | |
-adb pull /system/vendor/lib/libpvr2d.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libpvr2d.so | |
-adb pull /system/vendor/lib/libpvrANDROID_WSEGL.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libpvrANDROID_WSEGL.so | |
-adb pull /system/vendor/lib/libPVRScopeServices.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libPVRScopeServices.so | |
-adb pull /system/vendor/lib/libsec-ril.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libsec-ril.so | |
-adb pull /system/vendor/lib/libsrv_init.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libsrv_init.so | |
-adb pull /system/vendor/lib/libsrv_um.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libsrv_um.so | |
-adb pull /system/vendor/lib/libusc.so ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/libusc.so | |
- | |
-(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/device-vendor-blobs.mk | |
-# Copyright (C) 2010 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. | |
- | |
-# This file is generated by device/__MANUFACTURER__/__DEVICE__/extract-files.sh - DO NOT EDIT | |
- | |
-# Prebuilt libraries that are needed to build open-source libraries | |
-PRODUCT_COPY_FILES := \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsecril-client.so:obj/lib/libsecril-client.so | |
- | |
-# All the blobs necessary for crespo | |
-PRODUCT_COPY_FILES += \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsecril-client.so:system/lib/libsecril-client.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/gpsd:system/vendor/bin/gpsd \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/pvrsrvinit:system/vendor/bin/pvrsrvinit \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/bcm4329.hcd:system/vendor/firmware/bcm4329.hcd \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/cypress-touchkey.bin:system/vendor/firmware/cypress-touchkey.bin \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libpn544_fw.so:system/vendor/firmware/libpn544_fw.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libEGL_POWERVR_SGX540_120.so:system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libGLESv1_CM_POWERVR_SGX540_120.so:system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libGLESv2_POWERVR_SGX540_120.so:system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/gps.s5pc110.so:system/vendor/lib/hw/gps.s5pc110.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/gralloc.s5pc110.so:system/vendor/lib/hw/gralloc.s5pc110.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libakm.so:system/vendor/lib/libakm.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libglslcompiler.so:system/vendor/lib/libglslcompiler.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libIMGegl.so:system/vendor/lib/libIMGegl.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libpvr2d.so:system/vendor/lib/libpvr2d.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libpvrANDROID_WSEGL.so:system/vendor/lib/libpvrANDROID_WSEGL.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libPVRScopeServices.so:system/vendor/lib/libPVRScopeServices.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsec-ril.so:system/vendor/lib/libsec-ril.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsrv_init.so:system/vendor/lib/libsrv_init.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsrv_um.so:system/vendor/lib/libsrv_um.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libusc.so:system/vendor/lib/libusc.so | |
- | |
- | |
-EOF | |
- | |
-(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/Android.mk | |
-# Copyright (C) 2011 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. | |
- | |
-# This file is generated by device/__MANUFACTURER__/__DEVICE__/extract-files.sh - DO NOT EDIT | |
- | |
-ifeq (\$(TARGET_DEVICE),crespo) | |
-LOCAL_PATH:=\$(call my-dir) | |
- | |
-endif | |
- | |
-EOF | |
- | |
-./setup-makefiles.sh | |
diff --git a/factory-images/generate-factory-images-package.sh b/factory-images/generate-factory-images-package.sh | |
new file mode 100755 | |
index 0000000..031f2fa | |
--- /dev/null | |
+++ b/factory-images/generate-factory-images-package.sh | |
@@ -0,0 +1,48 @@ | |
+#!/bin/sh | |
+ | |
+# Copyright (C) 2011 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. | |
+ | |
+# 189904 = GRK39F | |
+# 299849 = IMM76D | |
+ | |
+PRODUCT=soju | |
+DEVICE=crespo | |
+BUILD=299849 | |
+VERSION=imm76d | |
+RADIOSRC=radio.xx.img | |
+BOOTLOADER=i9020xxkl1 | |
+RADIO=i9020xxki1 | |
+ | |
+source ../../../common/generate-factory-images-common.sh | |
+ | |
+PRODUCT=sojua | |
+DEVICE=crespo | |
+BUILD=299849 | |
+VERSION=imm76d | |
+RADIOSRC=radio.uc.img | |
+BOOTLOADER=i9020xxkl1 | |
+RADIO=i9020uckj1 | |
+ | |
+source ../../../common/generate-factory-images-common.sh | |
+ | |
+PRODUCT=sojuk | |
+DEVICE=crespo | |
+BUILD=189904 | |
+VERSION=grk39f | |
+RADIOSRC=radio.kr.img | |
+BOOTLOADER=i9020xxka3 | |
+RADIO=m200krkc1 | |
+ | |
+source ../../../common/generate-factory-images-common.sh | |
diff --git a/fstab.herring b/fstab.herring | |
new file mode 100644 | |
index 0000000..0eca316 | |
--- /dev/null | |
+++ b/fstab.herring | |
@@ -0,0 +1,9 @@ | |
+# Android fstab file. | |
+#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags> | |
+# The filesystem that contains the filesystem checker binary (typically /system) cannot | |
+# specify MF_CHECK, and must come before any filesystems that do specify MF_CHECK | |
+ | |
+ | |
+/dev/block/platform/s3c-sdhci.0/by-name/system /system ext4 ro wait | |
+/dev/block/platform/s3c-sdhci.0/by-name/userdata /data ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait,encryptable=/efs/userdata_footer | |
+ | |
diff --git a/full_crespo.mk b/full_crespo.mk | |
index a6b7cd3..13f9020 100644 | |
--- a/full_crespo.mk | |
+++ b/full_crespo.mk | |
@@ -22,10 +22,6 @@ | |
# Get the long list of APNs | |
PRODUCT_COPY_FILES := device/sample/etc/apns-full-conf.xml:system/etc/apns-conf.xml | |
-# Camera | |
-PRODUCT_PACKAGES := \ | |
- Camera | |
- | |
# Live Wallpapers | |
PRODUCT_PACKAGES += \ | |
LiveWallpapers \ | |
diff --git a/gps.conf b/gps.conf | |
index bd431a6..e3fb1df 100644 | |
--- a/gps.conf | |
+++ b/gps.conf | |
@@ -1,4 +1,3 @@ | |
-NTP_SERVER=north-america.pool.ntp.org | |
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin | |
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin | |
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin | |
diff --git a/include/sec_lcd.h b/include/sec_lcd.h | |
index b5451b7..6a3a34a 100755 | |
--- a/include/sec_lcd.h | |
+++ b/include/sec_lcd.h | |
@@ -33,7 +33,7 @@ struct secfb_user_window { | |
#define FBIO_WAITFORVSYNC _IO ('F', 32) | |
#define SECFB_WIN_POSITION _IOW ('F', 203, struct secfb_user_window) | |
- | |
+#define S3CFB_SET_VSYNC_INT _IOW ('F', 206, uint32_t) | |
#define DEFAULT_LCD_WIDTH (480) | |
#define DEFAULT_LCD_HEIGHT (800) | |
diff --git a/include/sec_utils.h b/include/sec_utils.h | |
index 80b4493..3e41afe 100644 | |
--- a/include/sec_utils.h | |
+++ b/include/sec_utils.h | |
@@ -130,7 +130,7 @@ inline int HAL_PIXEL_FORMAT_2_V4L2_PIX(int HAL_PIXEL_FORMAT) | |
break; | |
default: | |
- LOGE("%s::unmatched HAL_PIXEL_FORMAT color_space(0x%x)\n", | |
+ ALOGE("%s::unmatched HAL_PIXEL_FORMAT color_space(0x%x)\n", | |
__func__, HAL_PIXEL_FORMAT); | |
break; | |
} | |
@@ -219,7 +219,7 @@ inline int V4L2_PIX_2_HAL_PIXEL_FORMAT(int V4L2_PIX) | |
break; | |
default: | |
- LOGE("%s::unmatched V4L2_PIX color_space(%d)\n", | |
+ ALOGE("%s::unmatched V4L2_PIX color_space(%d)\n", | |
__func__, V4L2_PIX); | |
break; | |
} | |
@@ -320,7 +320,7 @@ inline unsigned int FRAME_SIZE(int HAL_PIXEL_FORMAT, int w, int h) | |
break; | |
default: | |
- LOGD("%s::no matching source colorformat(0x%x), w(%d), h(%d) fail\n", | |
+ ALOGD("%s::no matching source colorformat(0x%x), w(%d), h(%d) fail\n", | |
__func__, HAL_PIXEL_FORMAT, w, h); | |
break; | |
} | |
diff --git a/init.herring.rc b/init.herring.rc | |
index 45ae2d2..4a1ee38 100755 | |
--- a/init.herring.rc | |
+++ b/init.herring.rc | |
@@ -8,8 +8,6 @@ on boot | |
setprop ro.radio.noril yes | |
setprop ro.bt.bdaddr_path "/efs/bluetooth/bt_addr" | |
- setprop ro.crypto.keyfile.userdata /efs/userdata_footer | |
- | |
# fake some battery state | |
setprop status.battery.state Slow | |
setprop status.battery.level 5 | |
@@ -37,12 +35,13 @@ on fs | |
mount yaffs2 mtd@efs /efs noatime nosuid nodev | |
chmod 770 /efs/bluetooth | |
chmod 770 /efs/imei | |
- mount ext4 /dev/block/platform/s3c-sdhci.0/by-name/system /system wait ro | |
- mount ext4 /dev/block/platform/s3c-sdhci.0/by-name/userdata /data wait noatime nosuid nodev nomblk_io_submit | |
+ mount_all /fstab.herring | |
- export EXTERNAL_STORAGE /mnt/sdcard | |
- mkdir /mnt/sdcard 0000 system system | |
- symlink /mnt/sdcard /sdcard | |
+ export EXTERNAL_STORAGE /storage/sdcard0 | |
+ mkdir /storage 0050 system sdcard_r | |
+ mkdir /storage/sdcard0 0000 system system | |
+ symlink /storage/sdcard0 /sdcard | |
+ symlink /storage/sdcard0 /mnt/sdcard | |
# permissions for bluetooth. | |
chown bluetooth bluetooth /efs/bluetooth | |
@@ -65,6 +64,11 @@ on fs | |
# Permissions for System Server and daemons. | |
chown system system /sys/class/backlight/s5p_bl/brightness | |
+# Configure and enable KSM | |
+ write /sys/kernel/mm/ksm/pages_to_scan 100 | |
+ write /sys/kernel/mm/ksm/sleep_millisecs 500 | |
+ write /sys/kernel/mm/ksm/run 1 | |
+ | |
on post-fs-data | |
# wi-fi | |
mkdir /data/misc/wifi/sockets 0770 wifi wifi | |
@@ -96,7 +100,7 @@ service pvrsrvinit /system/vendor/bin/pvrsrvinit | |
group root | |
oneshot | |
-service wpa_supplicant /system/bin/wpa_supplicant -Dwext -iwlan0 | |
+service wpa_supplicant /system/bin/wpa_supplicant -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -e/data/misc/wifi/entropy.bin | |
class main | |
socket wpa_wlan0 dgram 0660 wifi wifi | |
disabled | |
@@ -104,7 +108,7 @@ service wpa_supplicant /system/bin/wpa_supplicant -Dwext -iwlan0 | |
# DHCPCD | |
# wi-fi | |
-service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL | |
+service dhcpcd_wlan0 /system/bin/dhcpcd -aABKL | |
class main | |
disabled | |
oneshot | |
diff --git a/init.herring.usb.rc b/init.herring.usb.rc | |
index b06a46e..20424d6 100644 | |
--- a/init.herring.usb.rc | |
+++ b/init.herring.usb.rc | |
@@ -1,7 +1,7 @@ | |
on boot | |
- write /sys/class/android_usb/android0/iManufacturer $ro.product.manufacturer | |
- write /sys/class/android_usb/android0/iProduct $ro.product.model | |
- write /sys/class/android_usb/android0/iSerial $ro.serialno | |
+ write /sys/class/android_usb/android0/iManufacturer ${ro.product.manufacturer} | |
+ write /sys/class/android_usb/android0/iProduct ${ro.product.model} | |
+ write /sys/class/android_usb/android0/iSerial ${ro.serialno} | |
write /sys/class/android_usb/android0/f_mass_storage/inquiry_string "Google Nexus S 0100" | |
write /sys/class/android_usb/android0/f_rndis/manufacturer Samsung | |
write /sys/class/android_usb/android0/f_rndis/vendorID 18d1 | |
@@ -11,34 +11,34 @@ on property:sys.usb.config=mass_storage | |
write /sys/class/android_usb/android0/enable 0 | |
write /sys/class/android_usb/android0/idVendor 18d1 | |
write /sys/class/android_usb/android0/idProduct 4e21 | |
- write /sys/class/android_usb/android0/functions $sys.usb.config | |
+ write /sys/class/android_usb/android0/functions ${sys.usb.config} | |
write /sys/class/android_usb/android0/enable 1 | |
- setprop sys.usb.state $sys.usb.config | |
+ setprop sys.usb.state ${sys.usb.config} | |
on property:sys.usb.config=mass_storage,adb | |
write /sys/class/android_usb/android0/enable 0 | |
write /sys/class/android_usb/android0/idVendor 18d1 | |
write /sys/class/android_usb/android0/idProduct 4e22 | |
- write /sys/class/android_usb/android0/functions $sys.usb.config | |
+ write /sys/class/android_usb/android0/functions ${sys.usb.config} | |
write /sys/class/android_usb/android0/enable 1 | |
start adbd | |
- setprop sys.usb.state $sys.usb.config | |
+ setprop sys.usb.state ${sys.usb.config} | |
on property:sys.usb.config=rndis | |
write /sys/class/android_usb/android0/enable 0 | |
write /sys/class/android_usb/android0/idVendor 18d1 | |
write /sys/class/android_usb/android0/idProduct 4e23 | |
- write /sys/class/android_usb/android0/functions $sys.usb.config | |
+ write /sys/class/android_usb/android0/functions ${sys.usb.config} | |
write /sys/class/android_usb/android0/bDeviceClass 224 | |
write /sys/class/android_usb/android0/enable 1 | |
- setprop sys.usb.state $sys.usb.config | |
+ setprop sys.usb.state ${sys.usb.config} | |
on property:sys.usb.config=rndis,adb | |
write /sys/class/android_usb/android0/enable 0 | |
write /sys/class/android_usb/android0/idVendor 18d1 | |
write /sys/class/android_usb/android0/idProduct 4e24 | |
- write /sys/class/android_usb/android0/functions $sys.usb.config | |
+ write /sys/class/android_usb/android0/functions ${sys.usb.config} | |
write /sys/class/android_usb/android0/bDeviceClass 224 | |
write /sys/class/android_usb/android0/enable 1 | |
start adbd | |
- setprop sys.usb.state $sys.usb.config | |
+ setprop sys.usb.state ${sys.usb.config} | |
diff --git a/kernel b/kernel | |
index 4b94ec0..0766072 100644 | |
Binary files a/kernel and b/kernel differ | |
diff --git a/libaudio/Android.mk b/libaudio/Android.mk | |
index cbb925c..06dcf0d 100644 | |
--- a/libaudio/Android.mk | |
+++ b/libaudio/Android.mk | |
@@ -19,23 +19,19 @@ LOCAL_MODULE_TAGS := optional | |
LOCAL_SHARED_LIBRARIES += libdl | |
LOCAL_C_INCLUDES += \ | |
external/tinyalsa/include \ | |
- system/media/audio_effects/include \ | |
- system/media/audio_utils/include | |
+ $(call include-path-for, audio-effects) \ | |
+ $(call include-path-for, audio-utils) | |
include $(BUILD_SHARED_LIBRARY) | |
include $(CLEAR_VARS) | |
LOCAL_SRC_FILES := AudioPolicyManager.cpp | |
-LOCAL_SHARED_LIBRARIES := libcutils libutils libmedia | |
+LOCAL_SHARED_LIBRARIES := libcutils libutils | |
LOCAL_STATIC_LIBRARIES := libmedia_helper | |
LOCAL_WHOLE_STATIC_LIBRARIES := libaudiopolicy_legacy | |
LOCAL_MODULE := audio_policy.herring | |
LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw | |
LOCAL_MODULE_TAGS := optional | |
-ifeq ($(BOARD_HAVE_BLUETOOTH),true) | |
- LOCAL_CFLAGS += -DWITH_A2DP | |
-endif | |
- | |
include $(BUILD_SHARED_LIBRARY) | |
diff --git a/libaudio/AudioHardware.cpp b/libaudio/AudioHardware.cpp | |
index a189510..2169c60 100644 | |
--- a/libaudio/AudioHardware.cpp | |
+++ b/libaudio/AudioHardware.cpp | |
@@ -32,7 +32,6 @@ | |
#include <fcntl.h> | |
#include "AudioHardware.h" | |
-#include <media/AudioRecord.h> | |
#include <audio_effects/effect_aec.h> | |
extern "C" { | |
@@ -124,10 +123,10 @@ AudioHardware::~AudioHardware() | |
if (mSecRilLibHandle) { | |
if (disconnectRILD(mRilClient) != RIL_CLIENT_ERR_SUCCESS) | |
- LOGE("Disconnect_RILD() error"); | |
+ ALOGE("Disconnect_RILD() error"); | |
if (closeClientRILD(mRilClient) != RIL_CLIENT_ERR_SUCCESS) | |
- LOGE("CloseClient_RILD() error"); | |
+ ALOGE("CloseClient_RILD() error"); | |
mRilClient = 0; | |
@@ -148,7 +147,7 @@ void AudioHardware::loadRILD(void) | |
mSecRilLibHandle = dlopen("libsecril-client.so", RTLD_NOW); | |
if (mSecRilLibHandle) { | |
- LOGV("libsecril-client.so is loaded"); | |
+ ALOGV("libsecril-client.so is loaded"); | |
openClientRILD = (HRilClient (*)(void)) | |
dlsym(mSecRilLibHandle, "OpenClient_RILD"); | |
@@ -170,28 +169,28 @@ void AudioHardware::loadRILD(void) | |
if (!openClientRILD || !disconnectRILD || !closeClientRILD || | |
!isConnectedRILD || !connectRILD || | |
!setCallVolume || !setCallAudioPath || !setCallClockSync) { | |
- LOGE("Can't load all functions from libsecril-client.so"); | |
+ ALOGE("Can't load all functions from libsecril-client.so"); | |
dlclose(mSecRilLibHandle); | |
mSecRilLibHandle = NULL; | |
} else { | |
mRilClient = openClientRILD(); | |
if (!mRilClient) { | |
- LOGE("OpenClient_RILD() error"); | |
+ ALOGE("OpenClient_RILD() error"); | |
dlclose(mSecRilLibHandle); | |
mSecRilLibHandle = NULL; | |
} | |
} | |
} else { | |
- LOGE("Can't load libsecril-client.so"); | |
+ ALOGE("Can't load libsecril-client.so"); | |
} | |
} | |
status_t AudioHardware::connectRILDIfRequired(void) | |
{ | |
if (!mSecRilLibHandle) { | |
- LOGE("connectIfRequired() lib is not loaded"); | |
+ ALOGE("connectIfRequired() lib is not loaded"); | |
return INVALID_OPERATION; | |
} | |
@@ -200,7 +199,7 @@ status_t AudioHardware::connectRILDIfRequired(void) | |
} | |
if (connectRILD(mRilClient) != RIL_CLIENT_ERR_SUCCESS) { | |
- LOGE("Connect_RILD() error"); | |
+ ALOGE("Connect_RILD() error"); | |
return INVALID_OPERATION; | |
} | |
@@ -251,7 +250,7 @@ void AudioHardware::closeOutputStream(AudioStreamOut* out) { | |
{ | |
Mutex::Autolock lock(mLock); | |
if (mOutput == 0 || mOutput.get() != out) { | |
- LOGW("Attempt to close invalid output stream"); | |
+ ALOGW("Attempt to close invalid output stream"); | |
return; | |
} | |
spOut = mOutput; | |
@@ -304,7 +303,7 @@ AudioStreamIn* AudioHardware::openInputStream( | |
*status = rc; | |
} | |
- LOGV("AudioHardware::openInputStream()%p", in.get()); | |
+ ALOGV("AudioHardware::openInputStream()%p", in.get()); | |
return in.get(); | |
} | |
@@ -316,13 +315,13 @@ void AudioHardware::closeInputStream(AudioStreamIn* in) { | |
ssize_t index = mInputs.indexOf((AudioStreamInALSA *)in); | |
if (index < 0) { | |
- LOGW("Attempt to close invalid input stream"); | |
+ ALOGW("Attempt to close invalid input stream"); | |
return; | |
} | |
spIn = mInputs[index]; | |
mInputs.removeAt(index); | |
} | |
- LOGV("AudioHardware::closeInputStream()%p", in); | |
+ ALOGV("AudioHardware::closeInputStream()%p", in); | |
spIn.clear(); | |
} | |
@@ -374,7 +373,7 @@ status_t AudioHardware::setMode(int mode) | |
int prevMode = mMode; | |
status = AudioHardwareBase::setMode(mode); | |
- LOGV("setMode() : new %d, old %d", mMode, prevMode); | |
+ ALOGV("setMode() : new %d, old %d", mMode, prevMode); | |
if (status == NO_ERROR) { | |
bool modeNeedsCPActive = mMode == AudioSystem::MODE_IN_CALL || | |
mMode == AudioSystem::MODE_RINGTONE; | |
@@ -389,15 +388,15 @@ status_t AudioHardware::setMode(int mode) | |
if (mMode == AudioSystem::MODE_IN_CALL && !mInCallAudioMode) { | |
if (spOut != 0) { | |
- LOGV("setMode() in call force output standby"); | |
+ ALOGV("setMode() in call force output standby"); | |
spOut->doStandby_l(); | |
} | |
if (spIn != 0) { | |
- LOGV("setMode() in call force input standby"); | |
+ ALOGV("setMode() in call force input standby"); | |
spIn->doStandby_l(); | |
} | |
- LOGV("setMode() openPcmOut_l()"); | |
+ ALOGV("setMode() openPcmOut_l()"); | |
openPcmOut_l(); | |
openMixer_l(); | |
setInputSource_l(AUDIO_SOURCE_DEFAULT); | |
@@ -411,22 +410,22 @@ status_t AudioHardware::setMode(int mode) | |
struct mixer_ctl *ctl= mixer_get_ctl_by_name(mMixer, "Playback Path"); | |
TRACE_DRIVER_OUT | |
if (ctl != NULL) { | |
- LOGV("setMode() reset Playback Path to RCV"); | |
+ ALOGV("setMode() reset Playback Path to RCV"); | |
TRACE_DRIVER_IN(DRV_MIXER_SEL) | |
mixer_ctl_set_enum_by_string(ctl, "RCV"); | |
TRACE_DRIVER_OUT | |
} | |
} | |
- LOGV("setMode() closePcmOut_l()"); | |
+ ALOGV("setMode() closePcmOut_l()"); | |
closeMixer_l(); | |
closePcmOut_l(); | |
if (spOut != 0) { | |
- LOGV("setMode() off call force output standby"); | |
+ ALOGV("setMode() off call force output standby"); | |
spOut->doStandby_l(); | |
} | |
if (spIn != 0) { | |
- LOGV("setMode() off call force input standby"); | |
+ ALOGV("setMode() off call force input standby"); | |
spIn->doStandby_l(); | |
} | |
@@ -451,7 +450,7 @@ status_t AudioHardware::setMode(int mode) | |
status_t AudioHardware::setMicMute(bool state) | |
{ | |
- LOGV("setMicMute(%d) mMicMute %d", state, mMicMute); | |
+ ALOGV("setMicMute(%d) mMicMute %d", state, mMicMute); | |
sp<AudioStreamInALSA> spIn; | |
{ | |
AutoMutex lock(mLock); | |
@@ -496,7 +495,7 @@ status_t AudioHardware::setParameters(const String8& keyValuePairs) | |
mBluetoothNrec = true; | |
} else { | |
mBluetoothNrec = false; | |
- LOGD("Turning noise reduction and echo cancellation off for BT " | |
+ ALOGD("Turning noise reduction and echo cancellation off for BT " | |
"headset"); | |
} | |
param.remove(String8(BT_NREC_KEY)); | |
@@ -518,7 +517,7 @@ status_t AudioHardware::setParameters(const String8& keyValuePairs) | |
} | |
if (ttyMode != mTTYMode) { | |
- LOGV("new tty mode %d", ttyMode); | |
+ ALOGV("new tty mode %d", ttyMode); | |
mTTYMode = ttyMode; | |
if (mOutput != 0 && mMode == AudioSystem::MODE_IN_CALL) { | |
setIncallPath_l(mOutput->device()); | |
@@ -535,7 +534,7 @@ String8 AudioHardware::getParameters(const String8& keys) | |
AudioParameter request = AudioParameter(keys); | |
AudioParameter reply = AudioParameter(); | |
- LOGV("getParameters() %s", keys.string()); | |
+ ALOGV("getParameters() %s", keys.string()); | |
return reply.toString(); | |
} | |
@@ -543,16 +542,16 @@ String8 AudioHardware::getParameters(const String8& keys) | |
size_t AudioHardware::getInputBufferSize(uint32_t sampleRate, int format, int channelCount) | |
{ | |
if (format != AudioSystem::PCM_16_BIT) { | |
- LOGW("getInputBufferSize bad format: %d", format); | |
+ ALOGW("getInputBufferSize bad format: %d", format); | |
return 0; | |
} | |
if (channelCount < 1 || channelCount > 2) { | |
- LOGW("getInputBufferSize bad channel count: %d", channelCount); | |
+ ALOGW("getInputBufferSize bad channel count: %d", channelCount); | |
return 0; | |
} | |
if (sampleRate != getInputSampleRate(sampleRate)) { | |
- LOGW("getInputBufferSize bad sample rate: %d", sampleRate); | |
+ ALOGW("getInputBufferSize bad sample rate: %d", sampleRate); | |
return 0; | |
} | |
@@ -570,7 +569,7 @@ status_t AudioHardware::setVoiceVolume(float volume) | |
void AudioHardware::setVoiceVolume_l(float volume) | |
{ | |
- LOGD("### setVoiceVolume_l"); | |
+ ALOGD("### setVoiceVolume_l"); | |
mVoiceVol = volume; | |
@@ -584,33 +583,33 @@ void AudioHardware::setVoiceVolume_l(float volume) | |
int int_volume = (int)(volume * 5); | |
SoundType type; | |
- LOGD("### route(%d) call volume(%f)", device, volume); | |
+ ALOGD("### route(%d) call volume(%f)", device, volume); | |
switch (device) { | |
case AudioSystem::DEVICE_OUT_EARPIECE: | |
- LOGD("### earpiece call volume"); | |
+ ALOGD("### earpiece call volume"); | |
type = SOUND_TYPE_VOICE; | |
break; | |
case AudioSystem::DEVICE_OUT_SPEAKER: | |
- LOGD("### speaker call volume"); | |
+ ALOGD("### speaker call volume"); | |
type = SOUND_TYPE_SPEAKER; | |
break; | |
case AudioSystem::DEVICE_OUT_BLUETOOTH_SCO: | |
case AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_HEADSET: | |
case AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_CARKIT: | |
- LOGD("### bluetooth call volume"); | |
+ ALOGD("### bluetooth call volume"); | |
type = SOUND_TYPE_BTVOICE; | |
break; | |
case AudioSystem::DEVICE_OUT_WIRED_HEADSET: | |
case AudioSystem::DEVICE_OUT_WIRED_HEADPHONE: // Use receive path with 3 pole headset. | |
- LOGD("### headset call volume"); | |
+ ALOGD("### headset call volume"); | |
type = SOUND_TYPE_HEADSET; | |
break; | |
default: | |
- LOGW("### Call volume setting error!!!0x%08x \n", device); | |
+ ALOGW("### Call volume setting error!!!0x%08x \n", device); | |
type = SOUND_TYPE_VOICE; | |
break; | |
} | |
@@ -621,7 +620,7 @@ void AudioHardware::setVoiceVolume_l(float volume) | |
status_t AudioHardware::setMasterVolume(float volume) | |
{ | |
- LOGV("Set master volume to %f.\n", volume); | |
+ ALOGV("Set master volume to %f.\n", volume); | |
// We return an error code here to let the audioflinger do in-software | |
// volume on top of the maximum volume that we set through the SND API. | |
// return error - software mixer will handle it | |
@@ -704,30 +703,30 @@ status_t AudioHardware::dump(int fd, const Vector<String16>& args) | |
status_t AudioHardware::setIncallPath_l(uint32_t device) | |
{ | |
- LOGV("setIncallPath_l: device %x", device); | |
+ ALOGV("setIncallPath_l: device %x", device); | |
// Setup sound path for CP clocking | |
if ((mSecRilLibHandle) && | |
(connectRILDIfRequired() == OK)) { | |
if (mMode == AudioSystem::MODE_IN_CALL) { | |
- LOGD("### incall mode route (%d)", device); | |
+ ALOGD("### incall mode route (%d)", device); | |
AudioPath path; | |
switch(device){ | |
case AudioSystem::DEVICE_OUT_EARPIECE: | |
- LOGD("### incall mode earpiece route"); | |
+ ALOGD("### incall mode earpiece route"); | |
path = SOUND_AUDIO_PATH_HANDSET; | |
break; | |
case AudioSystem::DEVICE_OUT_SPEAKER: | |
- LOGD("### incall mode speaker route"); | |
+ ALOGD("### incall mode speaker route"); | |
path = SOUND_AUDIO_PATH_SPEAKER; | |
break; | |
case AudioSystem::DEVICE_OUT_BLUETOOTH_SCO: | |
case AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_HEADSET: | |
case AudioSystem::DEVICE_OUT_BLUETOOTH_SCO_CARKIT: | |
- LOGD("### incall mode bluetooth route %s NR", mBluetoothNrec ? "" : "NO"); | |
+ ALOGD("### incall mode bluetooth route %s NR", mBluetoothNrec ? "" : "NO"); | |
if (mBluetoothNrec) { | |
path = SOUND_AUDIO_PATH_BLUETOOTH; | |
} else { | |
@@ -736,15 +735,15 @@ status_t AudioHardware::setIncallPath_l(uint32_t device) | |
break; | |
case AudioSystem::DEVICE_OUT_WIRED_HEADPHONE : | |
- LOGD("### incall mode headphone route"); | |
+ ALOGD("### incall mode headphone route"); | |
path = SOUND_AUDIO_PATH_HEADPHONE; | |
break; | |
case AudioSystem::DEVICE_OUT_WIRED_HEADSET : | |
- LOGD("### incall mode headset route"); | |
+ ALOGD("### incall mode headset route"); | |
path = SOUND_AUDIO_PATH_HEADSET; | |
break; | |
default: | |
- LOGW("### incall mode Error!! route = [%d]", device); | |
+ ALOGW("### incall mode Error!! route = [%d]", device); | |
path = SOUND_AUDIO_PATH_HANDSET; | |
break; | |
} | |
@@ -755,9 +754,9 @@ status_t AudioHardware::setIncallPath_l(uint32_t device) | |
TRACE_DRIVER_IN(DRV_MIXER_GET) | |
struct mixer_ctl *ctl= mixer_get_ctl_by_name(mMixer, "Voice Call Path"); | |
TRACE_DRIVER_OUT | |
- LOGE_IF(ctl == NULL, "setIncallPath_l() could not get mixer ctl"); | |
+ ALOGE_IF(ctl == NULL, "setIncallPath_l() could not get mixer ctl"); | |
if (ctl != NULL) { | |
- LOGV("setIncallPath_l() Voice Call Path, (%x)", device); | |
+ ALOGV("setIncallPath_l() Voice Call Path, (%x)", device); | |
TRACE_DRIVER_IN(DRV_MIXER_SEL) | |
mixer_ctl_set_enum_by_string(ctl, getVoiceRouteFromDevice(device)); | |
TRACE_DRIVER_OUT | |
@@ -770,10 +769,10 @@ status_t AudioHardware::setIncallPath_l(uint32_t device) | |
struct pcm *AudioHardware::openPcmOut_l() | |
{ | |
- LOGD("openPcmOut_l() mPcmOpenCnt: %d", mPcmOpenCnt); | |
+ ALOGD("openPcmOut_l() mPcmOpenCnt: %d", mPcmOpenCnt); | |
if (mPcmOpenCnt++ == 0) { | |
if (mPcm != NULL) { | |
- LOGE("openPcmOut_l() mPcmOpenCnt == 0 and mPcm == %p\n", mPcm); | |
+ ALOGE("openPcmOut_l() mPcmOpenCnt == 0 and mPcm == %p\n", mPcm); | |
mPcmOpenCnt--; | |
return NULL; | |
} | |
@@ -788,13 +787,14 @@ struct pcm *AudioHardware::openPcmOut_l() | |
start_threshold : 0, | |
stop_threshold : 0, | |
silence_threshold : 0, | |
+ avail_min : 0, | |
}; | |
TRACE_DRIVER_IN(DRV_PCM_OPEN) | |
mPcm = pcm_open(0, 0, flags, &config); | |
TRACE_DRIVER_OUT | |
if (!pcm_is_ready(mPcm)) { | |
- LOGE("openPcmOut_l() cannot open pcm_out driver: %s\n", pcm_get_error(mPcm)); | |
+ ALOGE("openPcmOut_l() cannot open pcm_out driver: %s\n", pcm_get_error(mPcm)); | |
TRACE_DRIVER_IN(DRV_PCM_CLOSE) | |
pcm_close(mPcm); | |
TRACE_DRIVER_OUT | |
@@ -807,9 +807,9 @@ struct pcm *AudioHardware::openPcmOut_l() | |
void AudioHardware::closePcmOut_l() | |
{ | |
- LOGD("closePcmOut_l() mPcmOpenCnt: %d", mPcmOpenCnt); | |
+ ALOGD("closePcmOut_l() mPcmOpenCnt: %d", mPcmOpenCnt); | |
if (mPcmOpenCnt == 0) { | |
- LOGE("closePcmOut_l() mPcmOpenCnt == 0"); | |
+ ALOGE("closePcmOut_l() mPcmOpenCnt == 0"); | |
return; | |
} | |
@@ -823,10 +823,10 @@ void AudioHardware::closePcmOut_l() | |
struct mixer *AudioHardware::openMixer_l() | |
{ | |
- LOGV("openMixer_l() mMixerOpenCnt: %d", mMixerOpenCnt); | |
+ ALOGV("openMixer_l() mMixerOpenCnt: %d", mMixerOpenCnt); | |
if (mMixerOpenCnt++ == 0) { | |
if (mMixer != NULL) { | |
- LOGE("openMixer_l() mMixerOpenCnt == 0 and mMixer == %p\n", mMixer); | |
+ ALOGE("openMixer_l() mMixerOpenCnt == 0 and mMixer == %p\n", mMixer); | |
mMixerOpenCnt--; | |
return NULL; | |
} | |
@@ -834,7 +834,7 @@ struct mixer *AudioHardware::openMixer_l() | |
mMixer = mixer_open(0); | |
TRACE_DRIVER_OUT | |
if (mMixer == NULL) { | |
- LOGE("openMixer_l() cannot open mixer"); | |
+ ALOGE("openMixer_l() cannot open mixer"); | |
mMixerOpenCnt--; | |
return NULL; | |
} | |
@@ -844,9 +844,9 @@ struct mixer *AudioHardware::openMixer_l() | |
void AudioHardware::closeMixer_l() | |
{ | |
- LOGV("closeMixer_l() mMixerOpenCnt: %d", mMixerOpenCnt); | |
+ ALOGV("closeMixer_l() mMixerOpenCnt: %d", mMixerOpenCnt); | |
if (mMixerOpenCnt == 0) { | |
- LOGE("closeMixer_l() mMixerOpenCnt == 0"); | |
+ ALOGE("closeMixer_l() mMixerOpenCnt == 0"); | |
return; | |
} | |
@@ -970,7 +970,7 @@ sp <AudioHardware::AudioStreamInALSA> AudioHardware::getActiveInput_l() | |
status_t AudioHardware::setInputSource_l(audio_source source) | |
{ | |
- LOGV("setInputSource_l(%d)", source); | |
+ ALOGV("setInputSource_l(%d)", source); | |
if (source != mInputSource) { | |
if ((source == AUDIO_SOURCE_DEFAULT) || (mMode != AudioSystem::MODE_IN_CALL)) { | |
if (mMixer) { | |
@@ -999,7 +999,7 @@ status_t AudioHardware::setInputSource_l(audio_source source) | |
default: | |
return NO_INIT; | |
} | |
- LOGV("mixer_ctl_set_enum_by_string, Input Source, (%s)", sourceName); | |
+ ALOGV("mixer_ctl_set_enum_by_string, Input Source, (%s)", sourceName); | |
TRACE_DRIVER_IN(DRV_MIXER_SEL) | |
mixer_ctl_set_enum_by_string(ctl, sourceName); | |
TRACE_DRIVER_OUT | |
@@ -1015,7 +1015,7 @@ struct echo_reference_itfe *AudioHardware::getEchoReference(audio_format_t forma | |
uint32_t channelCount, | |
uint32_t samplingRate) | |
{ | |
- LOGV("AudioHardware::getEchoReference %p", mEchoReference); | |
+ ALOGV("AudioHardware::getEchoReference %p", mEchoReference); | |
releaseEchoReference(mEchoReference); | |
if (mOutput != NULL) { | |
uint32_t wrChannelCount = popcount(mOutput->channels()); | |
@@ -1037,7 +1037,7 @@ struct echo_reference_itfe *AudioHardware::getEchoReference(audio_format_t forma | |
void AudioHardware::releaseEchoReference(struct echo_reference_itfe *reference) | |
{ | |
- LOGV("AudioHardware::releaseEchoReference %p", mEchoReference); | |
+ ALOGV("AudioHardware::releaseEchoReference %p", mEchoReference); | |
if (mEchoReference != NULL && reference == mEchoReference) { | |
if (mOutput != NULL) { | |
mOutput->removeEchoReference(reference); | |
@@ -1112,7 +1112,7 @@ int AudioHardware::AudioStreamOutALSA::getPlaybackDelay(size_t frames, | |
buffer->time_stamp.tv_sec = 0; | |
buffer->time_stamp.tv_nsec = 0; | |
buffer->delay_ns = 0; | |
- LOGV("getPlaybackDelay(): pcm_get_htimestamp error, setting playbackTimestamp to 0"); | |
+ ALOGV("getPlaybackDelay(): pcm_get_htimestamp error, setting playbackTimestamp to 0"); | |
return rc; | |
} | |
@@ -1123,7 +1123,7 @@ int AudioHardware::AudioStreamOutALSA::getPlaybackDelay(size_t frames, | |
// sample being written. | |
long delayNs = (long)(((int64_t)(kernelFr + frames)* 1000000000) /AUDIO_HW_OUT_SAMPLERATE); | |
- LOGV("AudioStreamOutALSA::getPlaybackDelay delayNs: [%ld], "\ | |
+ ALOGV("AudioStreamOutALSA::getPlaybackDelay delayNs: [%ld], "\ | |
"kernelFr:[%d], frames:[%d], buffSize:[%d], time_stamp:[%ld].[%ld]", | |
delayNs, (int)kernelFr, (int)frames, pcm_get_buffer_size(mPcm), | |
(long)buffer->time_stamp.tv_sec, buffer->time_stamp.tv_nsec); | |
@@ -1135,7 +1135,7 @@ int AudioHardware::AudioStreamOutALSA::getPlaybackDelay(size_t frames, | |
ssize_t AudioHardware::AudioStreamOutALSA::write(const void* buffer, size_t bytes) | |
{ | |
- LOGV("-----AudioStreamInALSA::write(%p, %d) START", buffer, (int)bytes); | |
+ ALOGV("-----AudioStreamInALSA::write(%p, %d) START", buffer, (int)bytes); | |
status_t status = NO_INIT; | |
const uint8_t* p = static_cast<const uint8_t*>(buffer); | |
int ret; | |
@@ -1155,7 +1155,7 @@ ssize_t AudioHardware::AudioStreamOutALSA::write(const void* buffer, size_t byte | |
if (mStandby) { | |
AutoMutex hwLock(mHardware->lock()); | |
- LOGD("AudioHardware pcm playback is exiting standby."); | |
+ ALOGD("AudioHardware pcm playback is exiting standby."); | |
sp<AudioStreamInALSA> spIn = mHardware->getActiveInput_l(); | |
while (spIn != 0) { | |
int cnt = spIn->prepareLock(); | |
@@ -1167,7 +1167,7 @@ ssize_t AudioHardware::AudioStreamOutALSA::write(const void* buffer, size_t byte | |
// while the mutex is released | |
if ((spIn == mHardware->getActiveInput_l()) && | |
(cnt == spIn->standbyCnt())) { | |
- LOGV("AudioStreamOutALSA::write() force input standby"); | |
+ ALOGV("AudioStreamOutALSA::write() force input standby"); | |
spIn->close_l(); | |
break; | |
} | |
@@ -1206,10 +1206,10 @@ ssize_t AudioHardware::AudioStreamOutALSA::write(const void* buffer, size_t byte | |
TRACE_DRIVER_OUT | |
if (ret == 0) { | |
- LOGV("-----AudioStreamInALSA::write(%p, %d) END", buffer, (int)bytes); | |
+ ALOGV("-----AudioStreamInALSA::write(%p, %d) END", buffer, (int)bytes); | |
return bytes; | |
} | |
- LOGW("write error: %d", errno); | |
+ ALOGW("write error: %d", errno); | |
status = -errno; | |
} | |
Error: | |
@@ -1217,7 +1217,7 @@ Error: | |
// Simulate audio output timing in case of error | |
usleep((((bytes * 1000) / frameSize()) * 1000) / sampleRate()); | |
- LOGE("AudioStreamOutALSA::write END WITH ERROR !!!!!!!!!(%p, %u)", buffer, bytes); | |
+ ALOGE("AudioStreamOutALSA::write END WITH ERROR !!!!!!!!!(%p, %u)", buffer, bytes); | |
return status; | |
} | |
@@ -1245,7 +1245,7 @@ void AudioHardware::AudioStreamOutALSA::doStandby_l() | |
mStandbyCnt++; | |
if (!mStandby) { | |
- LOGD("AudioHardware pcm playback is going to standby."); | |
+ ALOGD("AudioHardware pcm playback is going to standby."); | |
// stop echo reference capture | |
if (mEchoReference != NULL) { | |
mEchoReference->write(mEchoReference, NULL); | |
@@ -1271,7 +1271,7 @@ void AudioHardware::AudioStreamOutALSA::close_l() | |
status_t AudioHardware::AudioStreamOutALSA::open_l() | |
{ | |
- LOGV("open pcm_out driver"); | |
+ ALOGV("open pcm_out driver"); | |
mPcm = mHardware->openPcmOut_l(); | |
if (mPcm == NULL) { | |
return NO_INIT; | |
@@ -1279,14 +1279,14 @@ status_t AudioHardware::AudioStreamOutALSA::open_l() | |
mMixer = mHardware->openMixer_l(); | |
if (mMixer) { | |
- LOGV("open playback normal"); | |
+ ALOGV("open playback normal"); | |
TRACE_DRIVER_IN(DRV_MIXER_GET) | |
mRouteCtl = mixer_get_ctl_by_name(mMixer, "Playback Path"); | |
TRACE_DRIVER_OUT | |
} | |
if (mHardware->mode() != AudioSystem::MODE_IN_CALL) { | |
const char *route = mHardware->getOutputRouteFromDevice(mDevices); | |
- LOGV("write() wakeup setting route %s", route); | |
+ ALOGV("write() wakeup setting route %s", route); | |
if (mRouteCtl) { | |
TRACE_DRIVER_IN(DRV_MIXER_SEL) | |
mixer_ctl_set_enum_by_string(mRouteCtl, route); | |
@@ -1345,7 +1345,7 @@ status_t AudioHardware::AudioStreamOutALSA::setParameters(const String8& keyValu | |
AudioParameter param = AudioParameter(keyValuePairs); | |
status_t status = NO_ERROR; | |
int device; | |
- LOGD("AudioStreamOutALSA::setParameters() %s", keyValuePairs.string()); | |
+ ALOGD("AudioStreamOutALSA::setParameters() %s", keyValuePairs.string()); | |
if (mHardware == NULL) return NO_INIT; | |
@@ -1391,7 +1391,7 @@ String8 AudioHardware::AudioStreamOutALSA::getParameters(const String8& keys) | |
param.addInt(key, (int)mDevices); | |
} | |
- LOGV("AudioStreamOutALSA::getParameters() %s", param.toString().string()); | |
+ ALOGV("AudioStreamOutALSA::getParameters() %s", param.toString().string()); | |
return param.toString(); | |
} | |
@@ -1421,7 +1421,7 @@ void AudioHardware::AudioStreamOutALSA::unlock() { | |
void AudioHardware::AudioStreamOutALSA::addEchoReference(struct echo_reference_itfe *reference) | |
{ | |
- LOGV("AudioStreamOutALSA::addEchoReference %p", mEchoReference); | |
+ ALOGV("AudioStreamOutALSA::addEchoReference %p", mEchoReference); | |
if (mEchoReference == NULL) { | |
mEchoReference = reference; | |
} | |
@@ -1429,7 +1429,7 @@ void AudioHardware::AudioStreamOutALSA::addEchoReference(struct echo_reference_i | |
void AudioHardware::AudioStreamOutALSA::removeEchoReference(struct echo_reference_itfe *reference) | |
{ | |
- LOGV("AudioStreamOutALSA::removeEchoReference %p", mEchoReference); | |
+ ALOGV("AudioStreamOutALSA::removeEchoReference %p", mEchoReference); | |
if (mEchoReference == reference) { | |
mEchoReference->write(mEchoReference, NULL); | |
mEchoReference = NULL; | |
@@ -1477,7 +1477,7 @@ status_t AudioHardware::AudioStreamInALSA::set( | |
mHardware = hw; | |
- LOGV("AudioStreamInALSA::set(%d, %d, %u)", *pFormat, *pChannels, *pRate); | |
+ ALOGV("AudioStreamInALSA::set(%d, %d, %u)", *pFormat, *pChannels, *pRate); | |
mBufferSize = getBufferSize(*pRate, AudioSystem::popCount(*pChannels)); | |
mDevices = devices; | |
@@ -1495,7 +1495,7 @@ status_t AudioHardware::AudioStreamInALSA::set( | |
&mBufferProvider.mProvider, | |
&mDownSampler); | |
if (status != 0) { | |
- LOGW("AudioStreamInALSA::set() downsampler init failed: %d", status); | |
+ ALOGW("AudioStreamInALSA::set() downsampler init failed: %d", status); | |
mDownSampler = NULL; | |
return status; | |
} | |
@@ -1564,7 +1564,7 @@ ssize_t AudioHardware::AudioStreamInALSA::processFrames(void* buffer, ssize_t fr | |
mProcBufSize = (size_t)frames; | |
mProcBuf = (int16_t *)realloc(mProcBuf, | |
mProcBufSize * mChannelCount * sizeof(int16_t)); | |
- LOGV("processFrames(): mProcBuf %p size extended to %d frames", | |
+ ALOGV("processFrames(): mProcBuf %p size extended to %d frames", | |
mProcBuf, mProcBufSize); | |
} | |
ssize_t framesRd = readFrames(mProcBuf + mProcFramesIn * mChannelCount, | |
@@ -1621,7 +1621,7 @@ int32_t AudioHardware::AudioStreamInALSA::updateEchoReference(size_t frames) | |
struct echo_reference_buffer b; | |
b.delay_ns = 0; | |
- LOGV("updateEchoReference1 START, frames = [%d], mRefFramesIn = [%d], b.frame_count = [%d]", | |
+ ALOGV("updateEchoReference1 START, frames = [%d], mRefFramesIn = [%d], b.frame_count = [%d]", | |
frames, mRefFramesIn, frames - mRefFramesIn); | |
if (mRefFramesIn < frames) { | |
if (mRefBufSize < frames) { | |
@@ -1638,12 +1638,12 @@ int32_t AudioHardware::AudioStreamInALSA::updateEchoReference(size_t frames) | |
if (mEchoReference->read(mEchoReference, &b) == NO_ERROR) | |
{ | |
mRefFramesIn += b.frame_count; | |
- LOGV("updateEchoReference2: mRefFramesIn:[%d], mRefBufSize:[%d], "\ | |
+ ALOGV("updateEchoReference2: mRefFramesIn:[%d], mRefBufSize:[%d], "\ | |
"frames:[%d], b.frame_count:[%d]", mRefFramesIn, mRefBufSize,frames,b.frame_count); | |
} | |
}else{ | |
- LOGV("updateEchoReference3: NOT enough frames to read ref buffer"); | |
+ ALOGV("updateEchoReference3: NOT enough frames to read ref buffer"); | |
} | |
return b.delay_ns; | |
} | |
@@ -1675,7 +1675,7 @@ void AudioHardware::AudioStreamInALSA::pushEchoReference(size_t frames) | |
mRefFramesIn -= refBuf.frameCount; | |
if (mRefFramesIn) { | |
- LOGV("pushEchoReference5: shifting mRefBuf down by = %d frames", mRefFramesIn); | |
+ ALOGV("pushEchoReference5: shifting mRefBuf down by = %d frames", mRefFramesIn); | |
memcpy(mRefBuf, | |
mRefBuf + refBuf.frameCount * mChannelCount, | |
mRefFramesIn * mChannelCount * sizeof(int16_t)); | |
@@ -1693,7 +1693,7 @@ status_t AudioHardware::AudioStreamInALSA::setPreProcessorEchoDelay(effect_handl | |
*(uint32_t *)param->data = AEC_PARAM_ECHO_DELAY; | |
*((int32_t *)param->data + 1) = delayUs; | |
- LOGV("setPreProcessorEchoDelay: %d us", delayUs); | |
+ ALOGV("setPreProcessorEchoDelay: %d us", delayUs); | |
return setPreprocessorParam(handle, param); | |
} | |
@@ -1728,7 +1728,7 @@ void AudioHardware::AudioStreamInALSA::getCaptureDelay(size_t frames, | |
buffer->time_stamp.tv_sec = 0; | |
buffer->time_stamp.tv_nsec = 0; | |
buffer->delay_ns = 0; | |
- LOGW("read getCaptureDelay(): pcm_htimestamp error"); | |
+ ALOGW("read getCaptureDelay(): pcm_htimestamp error"); | |
return; | |
} | |
@@ -1750,7 +1750,7 @@ void AudioHardware::AudioStreamInALSA::getCaptureDelay(size_t frames, | |
buffer->time_stamp = tstamp; | |
buffer->delay_ns = delayNs; | |
- LOGV("AudioStreamInALSA::getCaptureDelay TimeStamp = [%ld].[%ld], delayCaptureNs: [%d],"\ | |
+ ALOGV("AudioStreamInALSA::getCaptureDelay TimeStamp = [%ld].[%ld], delayCaptureNs: [%d],"\ | |
" kernelDelay:[%ld], bufDelay:[%ld], rsmpDelay:[%ld], kernelFr:[%d], "\ | |
"mInputFramesIn:[%d], mProcFramesIn:[%d], frames:[%d]", | |
buffer->time_stamp.tv_sec , buffer->time_stamp.tv_nsec, buffer->delay_ns, | |
@@ -1760,7 +1760,7 @@ void AudioHardware::AudioStreamInALSA::getCaptureDelay(size_t frames, | |
ssize_t AudioHardware::AudioStreamInALSA::read(void* buffer, ssize_t bytes) | |
{ | |
- LOGV("-----AudioStreamInALSA::read(%p, %d) START", buffer, (int)bytes); | |
+ ALOGV("-----AudioStreamInALSA::read(%p, %d) START", buffer, (int)bytes); | |
status_t status = NO_INIT; | |
if (mHardware == NULL) return NO_INIT; | |
@@ -1777,7 +1777,7 @@ ssize_t AudioHardware::AudioStreamInALSA::read(void* buffer, ssize_t bytes) | |
if (mStandby) { | |
AutoMutex hwLock(mHardware->lock()); | |
- LOGD("AudioHardware pcm capture is exiting standby."); | |
+ ALOGD("AudioHardware pcm capture is exiting standby."); | |
sp<AudioStreamOutALSA> spOut = mHardware->output(); | |
while (spOut != 0) { | |
spOut->prepareLock(); | |
@@ -1798,13 +1798,13 @@ ssize_t AudioHardware::AudioStreamInALSA::read(void* buffer, ssize_t bytes) | |
// open output before input | |
if (spOut != 0) { | |
if (!spOut->checkStandby()) { | |
- LOGV("AudioStreamInALSA::read() force output standby"); | |
+ ALOGV("AudioStreamInALSA::read() force output standby"); | |
spOut->close_l(); | |
if (spOut->open_l() != NO_ERROR) { | |
spOut->doStandby_l(); | |
} | |
} | |
- LOGV("AudioStreamInALSA exit standby mNeedEchoReference %d mEchoReference %p", | |
+ ALOGV("AudioStreamInALSA exit standby mNeedEchoReference %d mEchoReference %p", | |
mNeedEchoReference, mEchoReference); | |
if (mNeedEchoReference && mEchoReference == NULL) { | |
mEchoReference = mHardware->getEchoReference(AUDIO_FORMAT_PCM_16_BIT, | |
@@ -1832,11 +1832,11 @@ ssize_t AudioHardware::AudioStreamInALSA::read(void* buffer, ssize_t bytes) | |
} | |
if (framesRd >= 0) { | |
- LOGV("-----AudioStreamInALSA::read(%p, %d) END", buffer, (int)bytes); | |
+ ALOGV("-----AudioStreamInALSA::read(%p, %d) END", buffer, (int)bytes); | |
return framesRd * mChannelCount * sizeof(int16_t); | |
} | |
- LOGW("read error: %d", (int)framesRd); | |
+ ALOGW("read error: %d", (int)framesRd); | |
status = framesRd; | |
} | |
@@ -1846,7 +1846,7 @@ Error: | |
// Simulate audio output timing in case of error | |
usleep((((bytes * 1000) / frameSize()) * 1000) / sampleRate()); | |
- LOGE("-----AudioStreamInALSA::read(%p, %d) END ERROR", buffer, (int)bytes); | |
+ ALOGE("-----AudioStreamInALSA::read(%p, %d) END ERROR", buffer, (int)bytes); | |
return status; | |
} | |
@@ -1873,7 +1873,7 @@ void AudioHardware::AudioStreamInALSA::doStandby_l() | |
mStandbyCnt++; | |
if (!mStandby) { | |
- LOGD("AudioHardware pcm capture is going to standby."); | |
+ ALOGD("AudioHardware pcm capture is going to standby."); | |
if (mEchoReference != NULL) { | |
// stop reading from echo reference | |
mEchoReference->read(mEchoReference, NULL); | |
@@ -1933,14 +1933,15 @@ status_t AudioHardware::AudioStreamInALSA::open_l() | |
start_threshold : 0, | |
stop_threshold : 0, | |
silence_threshold : 0, | |
+ avail_min : 0, | |
}; | |
- LOGV("open pcm_in driver"); | |
+ ALOGV("open pcm_in driver"); | |
TRACE_DRIVER_IN(DRV_PCM_OPEN) | |
mPcm = pcm_open(0, 0, flags, &config); | |
TRACE_DRIVER_OUT | |
if (!pcm_is_ready(mPcm)) { | |
- LOGE("cannot open pcm_in driver: %s\n", pcm_get_error(mPcm)); | |
+ ALOGE("cannot open pcm_in driver: %s\n", pcm_get_error(mPcm)); | |
TRACE_DRIVER_IN(DRV_PCM_CLOSE) | |
pcm_close(mPcm); | |
TRACE_DRIVER_OUT | |
@@ -1967,7 +1968,7 @@ status_t AudioHardware::AudioStreamInALSA::open_l() | |
if (mHardware->mode() != AudioSystem::MODE_IN_CALL) { | |
const char *route = mHardware->getInputRouteFromDevice(mDevices); | |
- LOGV("read() wakeup setting route %s", route); | |
+ ALOGV("read() wakeup setting route %s", route); | |
if (mRouteCtl) { | |
TRACE_DRIVER_IN(DRV_MIXER_SEL) | |
mixer_ctl_set_enum_by_string(mRouteCtl, route); | |
@@ -2025,7 +2026,7 @@ status_t AudioHardware::AudioStreamInALSA::setParameters(const String8& keyValue | |
status_t status = NO_ERROR; | |
int value; | |
- LOGD("AudioStreamInALSA::setParameters() %s", keyValuePairs.string()); | |
+ ALOGD("AudioStreamInALSA::setParameters() %s", keyValuePairs.string()); | |
if (mHardware == NULL) return NO_INIT; | |
@@ -2079,25 +2080,25 @@ String8 AudioHardware::AudioStreamInALSA::getParameters(const String8& keys) | |
param.addInt(key, (int)mDevices); | |
} | |
- LOGV("AudioStreamInALSA::getParameters() %s", param.toString().string()); | |
+ ALOGV("AudioStreamInALSA::getParameters() %s", param.toString().string()); | |
return param.toString(); | |
} | |
status_t AudioHardware::AudioStreamInALSA::addAudioEffect(effect_handle_t effect) | |
{ | |
- LOGV("AudioStreamInALSA::addAudioEffect() %p", effect); | |
+ ALOGV("AudioStreamInALSA::addAudioEffect() %p", effect); | |
effect_descriptor_t desc; | |
status_t status = (*effect)->get_descriptor(effect, &desc); | |
if (status == 0) { | |
if (memcmp(&desc.type, FX_IID_AEC, sizeof(effect_uuid_t)) == 0) { | |
- LOGV("AudioStreamInALSA::addAudioEffect() mNeedEchoReference true"); | |
+ ALOGV("AudioStreamInALSA::addAudioEffect() mNeedEchoReference true"); | |
mNeedEchoReference = true; | |
standby(); | |
} | |
- LOGV("AudioStreamInALSA::addAudioEffect() name %s", desc.name); | |
+ ALOGV("AudioStreamInALSA::addAudioEffect() name %s", desc.name); | |
} else { | |
- LOGV("AudioStreamInALSA::addAudioEffect() get_descriptor() error"); | |
+ ALOGV("AudioStreamInALSA::addAudioEffect() get_descriptor() error"); | |
} | |
AutoMutex lock(mLock); | |
@@ -2108,7 +2109,7 @@ status_t AudioHardware::AudioStreamInALSA::addAudioEffect(effect_handle_t effect | |
status_t AudioHardware::AudioStreamInALSA::removeAudioEffect(effect_handle_t effect) | |
{ | |
status_t status = INVALID_OPERATION; | |
- LOGV("AudioStreamInALSA::removeAudioEffect() %p", effect); | |
+ ALOGV("AudioStreamInALSA::removeAudioEffect() %p", effect); | |
{ | |
AutoMutex lock(mLock); | |
for (size_t i = 0; i < mPreprocessors.size(); i++) { | |
@@ -2124,7 +2125,7 @@ status_t AudioHardware::AudioStreamInALSA::removeAudioEffect(effect_handle_t eff | |
effect_descriptor_t desc; | |
if ((*effect)->get_descriptor(effect, &desc) == 0) { | |
if (memcmp(&desc.type, FX_IID_AEC, sizeof(effect_uuid_t)) == 0) { | |
- LOGV("AudioStreamInALSA::removeAudioEffect() mNeedEchoReference false"); | |
+ ALOGV("AudioStreamInALSA::removeAudioEffect() mNeedEchoReference false"); | |
mNeedEchoReference = false; | |
standby(); | |
} | |
@@ -2198,7 +2199,7 @@ size_t AudioHardware::AudioStreamInALSA::getBufferSize(uint32_t sampleRate, int | |
} | |
// this should never happen as getBufferSize() is always called after getInputSampleRate() | |
// that checks for valid sampling rates. | |
- LOGE("AudioStreamInALSA::getBufferSize() invalid sampling rate %d", sampleRate); | |
+ ALOGE("AudioStreamInALSA::getBufferSize() invalid sampling rate %d", sampleRate); | |
return 0; | |
} | |
diff --git a/libaudio/AudioHardware.h b/libaudio/AudioHardware.h | |
index a183a98..eb1148e 100644 | |
--- a/libaudio/AudioHardware.h | |
+++ b/libaudio/AudioHardware.h | |
@@ -24,7 +24,6 @@ | |
#include <utils/SortedVector.h> | |
#include <hardware_legacy/AudioHardwareBase.h> | |
-#include <media/mediarecorder.h> | |
#include <hardware/audio_effect.h> | |
#include "secril-client.h" | |
@@ -48,7 +47,7 @@ namespace android_audio_legacy { | |
using android::Vector; | |
// TODO: determine actual audio DSP and hardware latency | |
-// Additionnal latency introduced by audio DSP and hardware in ms | |
+// Additional latency introduced by audio DSP and hardware in ms | |
#define AUDIO_HW_OUT_LATENCY_MS 0 | |
// Default audio output sample rate | |
#define AUDIO_HW_OUT_SAMPLERATE 44100 | |
@@ -57,8 +56,8 @@ namespace android_audio_legacy { | |
// Default audio output sample format | |
#define AUDIO_HW_OUT_FORMAT (AudioSystem::PCM_16_BIT) | |
// Kernel pcm out buffer size in frames at 44.1kHz | |
-#define AUDIO_HW_OUT_PERIOD_SZ 1024 | |
-#define AUDIO_HW_OUT_PERIOD_CNT 4 | |
+#define AUDIO_HW_OUT_PERIOD_SZ 880 | |
+#define AUDIO_HW_OUT_PERIOD_CNT 2 | |
// Default audio output buffer size in bytes | |
#define AUDIO_HW_OUT_PERIOD_BYTES (AUDIO_HW_OUT_PERIOD_SZ * 2 * sizeof(int16_t)) | |
diff --git a/libaudio/AudioPolicyManager.cpp b/libaudio/AudioPolicyManager.cpp | |
index bfa6c00..ce99972 100644 | |
--- a/libaudio/AudioPolicyManager.cpp | |
+++ b/libaudio/AudioPolicyManager.cpp | |
@@ -18,7 +18,6 @@ | |
//#define LOG_NDEBUG 0 | |
#include <utils/Log.h> | |
#include "AudioPolicyManager.h" | |
-#include <media/mediarecorder.h> | |
namespace android_audio_legacy { | |
diff --git a/libaudio/AudioPolicyManager.h b/libaudio/AudioPolicyManager.h | |
index d660e78..5062ff0 100644 | |
--- a/libaudio/AudioPolicyManager.h | |
+++ b/libaudio/AudioPolicyManager.h | |
@@ -34,13 +34,5 @@ public: | |
virtual ~AudioPolicyManager() {} | |
-protected: | |
- // true is current platform implements a back microphone | |
- virtual bool hasBackMicrophone() const { return false; } | |
-#ifdef WITH_A2DP | |
- // true is current platform supports duplication of notifications and ringtones over A2DP output | |
- virtual bool a2dpUsedForSonification() const { return true; } | |
-#endif | |
- | |
}; | |
}; | |
diff --git a/libaudio/audio_policy.conf b/libaudio/audio_policy.conf | |
new file mode 100644 | |
index 0000000..9e980a0 | |
--- /dev/null | |
+++ b/libaudio/audio_policy.conf | |
@@ -0,0 +1,68 @@ | |
+# Global configuration section: lists input and output devices always present on the device | |
+# as well as the output device selected by default. | |
+# Devices are designated by a string that corresponds to the enum in audio.h | |
+ | |
+global_configuration { | |
+ attached_output_devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER | |
+ default_output_device AUDIO_DEVICE_OUT_SPEAKER | |
+ attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC | |
+} | |
+ | |
+# audio hardware module section: contains descriptors for all audio hw modules present on the | |
+# device. Each hw module node is named after the corresponding hw module library base name. | |
+# For instance, "primary" corresponds to audio.primary.<device>.so. | |
+# The "primary" module is mandatory and must include at least one output with | |
+# AUDIO_OUTPUT_FLAG_PRIMARY flag. | |
+# Each module descriptor contains one or more output profile descriptors and zero or more | |
+# input profile descriptors. Each profile lists all the parameters supported by a given output | |
+# or input stream category. | |
+# The "channel_masks", "formats", "devices" and "flags" are specified using strings corresponding | |
+# to enums in audio.h and audio_policy.h. They are concatenated by use of "|" without space or "\n". | |
+ | |
+audio_hw_modules { | |
+ primary { | |
+ outputs { | |
+ primary { | |
+ sampling_rates 44100 | |
+ channel_masks AUDIO_CHANNEL_OUT_STEREO | |
+ formats AUDIO_FORMAT_PCM_16_BIT | |
+ devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO | |
+ flags AUDIO_OUTPUT_FLAG_PRIMARY | |
+ } | |
+ } | |
+ inputs { | |
+ primary { | |
+ sampling_rates 8000|11025|16000|22050|32000|44100 | |
+ channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO | |
+ formats AUDIO_FORMAT_PCM_16_BIT | |
+ devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_WIRED_HEADSET | |
+ } | |
+ } | |
+ } | |
+ a2dp { | |
+ outputs { | |
+ a2dp { | |
+ sampling_rates 44100 | |
+ channel_masks AUDIO_CHANNEL_OUT_STEREO | |
+ formats AUDIO_FORMAT_PCM_16_BIT | |
+ devices AUDIO_DEVICE_OUT_ALL_A2DP | |
+ } | |
+ } | |
+ } | |
+ usb { | |
+ outputs { | |
+ usb_accessory { | |
+ sampling_rates 44100 | |
+ channel_masks AUDIO_CHANNEL_OUT_STEREO | |
+ formats AUDIO_FORMAT_PCM_16_BIT | |
+ devices AUDIO_DEVICE_OUT_USB_ACCESSORY | |
+ } | |
+ usb_device { | |
+ sampling_rates 44100 | |
+ channel_masks AUDIO_CHANNEL_OUT_STEREO | |
+ formats AUDIO_FORMAT_PCM_16_BIT | |
+ devices AUDIO_DEVICE_OUT_USB_DEVICE | |
+ } | |
+ } | |
+ } | |
+} | |
diff --git a/libcamera/Android.mk b/libcamera/Android.mk | |
index 1ade091..58020f0 100644 | |
--- a/libcamera/Android.mk | |
+++ b/libcamera/Android.mk | |
@@ -9,6 +9,7 @@ LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw | |
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../include | |
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../libs3cjpeg | |
+LOCAL_C_INCLUDES += frameworks/native/include/media/hardware | |
LOCAL_SRC_FILES:= \ | |
SecCamera.cpp SecCameraHWInterface.cpp | |
diff --git a/libcamera/SecCamera.cpp b/libcamera/SecCamera.cpp | |
index 9c2d023..2544d09 100755 | |
--- a/libcamera/SecCamera.cpp | |
+++ b/libcamera/SecCamera.cpp | |
@@ -39,7 +39,7 @@ using namespace android; | |
#define CHECK(return_value) \ | |
if (return_value < 0) { \ | |
- LOGE("%s::%d fail. errno: %s, m_camera_id = %d\n", \ | |
+ ALOGE("%s::%d fail. errno: %s, m_camera_id = %d\n", \ | |
__func__, __LINE__, strerror(errno), m_camera_id); \ | |
return -1; \ | |
} | |
@@ -47,7 +47,7 @@ using namespace android; | |
#define CHECK_PTR(return_value) \ | |
if (return_value < 0) { \ | |
- LOGE("%s::%d fail, errno: %s, m_camera_id = %d\n", \ | |
+ ALOGE("%s::%d fail, errno: %s, m_camera_id = %d\n", \ | |
__func__,__LINE__, strerror(errno), m_camera_id); \ | |
return NULL; \ | |
} | |
@@ -132,12 +132,12 @@ static int fimc_poll(struct pollfd *events) | |
*/ | |
ret = poll(events, 1, 10000); | |
if (ret < 0) { | |
- LOGE("ERR(%s):poll error\n", __func__); | |
+ ALOGE("ERR(%s):poll error\n", __func__); | |
return ret; | |
} | |
if (ret == 0) { | |
- LOGE("ERR(%s):No data in 10 secs..\n", __func__); | |
+ ALOGE("ERR(%s):No data in 10 secs..\n", __func__); | |
return ret; | |
} | |
@@ -156,7 +156,7 @@ int SecCamera::previewPoll(bool preview) | |
status = getCameraSensorESDStatus(); | |
m_esd_check_count = 0; | |
if (status) { | |
- LOGE("ERR(%s) ESD status(%d)", __func__, status); | |
+ ALOGE("ERR(%s) ESD status(%d)", __func__, status); | |
return status; | |
} | |
} | |
@@ -168,12 +168,12 @@ int SecCamera::previewPoll(bool preview) | |
} | |
if (ret < 0) { | |
- LOGE("ERR(%s):poll error\n", __func__); | |
+ ALOGE("ERR(%s):poll error\n", __func__); | |
return ret; | |
} | |
if (ret == 0) { | |
- LOGE("ERR(%s):No data in 1 secs.. Camera Device Reset \n", __func__); | |
+ ALOGE("ERR(%s):No data in 1 secs.. Camera Device Reset \n", __func__); | |
return ret; | |
} | |
@@ -188,12 +188,12 @@ static int fimc_v4l2_querycap(int fp) | |
ret = ioctl(fp, VIDIOC_QUERYCAP, &cap); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_QUERYCAP failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_QUERYCAP failed\n", __func__); | |
return -1; | |
} | |
if (!(cap.capabilities & V4L2_CAP_VIDEO_CAPTURE)) { | |
- LOGE("ERR(%s):no capture devices\n", __func__); | |
+ ALOGE("ERR(%s):no capture devices\n", __func__); | |
return -1; | |
} | |
@@ -206,10 +206,10 @@ static const __u8* fimc_v4l2_enuminput(int fp, int index) | |
input.index = index; | |
if (ioctl(fp, VIDIOC_ENUMINPUT, &input) != 0) { | |
- LOGE("ERR(%s):No matching index found\n", __func__); | |
+ ALOGE("ERR(%s):No matching index found\n", __func__); | |
return NULL; | |
} | |
- LOGI("Name of input channel[%d] is %s\n", input.index, input.name); | |
+ ALOGI("Name of input channel[%d] is %s\n", input.index, input.name); | |
return input.name; | |
} | |
@@ -224,7 +224,7 @@ static int fimc_v4l2_s_input(int fp, int index) | |
ret = ioctl(fp, VIDIOC_S_INPUT, &input); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_S_INPUT failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_S_INPUT failed\n", __func__); | |
return ret; | |
} | |
@@ -254,7 +254,7 @@ static int fimc_v4l2_s_fmt(int fp, int width, int height, unsigned int fmt, int | |
/* Set up for capture */ | |
ret = ioctl(fp, VIDIOC_S_FMT, &v4l2_fmt); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_S_FMT failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_S_FMT failed\n", __func__); | |
return -1; | |
} | |
@@ -282,12 +282,12 @@ static int fimc_v4l2_s_fmt_cap(int fp, int width, int height, unsigned int fmt) | |
v4l2_fmt.fmt.pix = pixfmt; | |
- //LOGE("ori_w %d, ori_h %d, w %d, h %d\n", width, height, v4l2_fmt.fmt.pix.width, v4l2_fmt.fmt.pix.height); | |
+ //ALOGE("ori_w %d, ori_h %d, w %d, h %d\n", width, height, v4l2_fmt.fmt.pix.width, v4l2_fmt.fmt.pix.height); | |
/* Set up for capture */ | |
ret = ioctl(fp, VIDIOC_S_FMT, &v4l2_fmt); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_S_FMT failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_S_FMT failed\n", __func__); | |
return ret; | |
} | |
@@ -304,7 +304,7 @@ static int fimc_v4l2_enum_fmt(int fp, unsigned int fmt) | |
while (ioctl(fp, VIDIOC_ENUM_FMT, &fmtdesc) == 0) { | |
if (fmtdesc.pixelformat == fmt) { | |
- LOGV("passed fmt = %#x found pixel format[%d]: %s\n", fmt, fmtdesc.index, fmtdesc.description); | |
+ ALOGV("passed fmt = %#x found pixel format[%d]: %s\n", fmt, fmtdesc.index, fmtdesc.description); | |
found = 1; | |
break; | |
} | |
@@ -313,7 +313,7 @@ static int fimc_v4l2_enum_fmt(int fp, unsigned int fmt) | |
} | |
if (!found) { | |
- LOGE("unsupported pixel format\n"); | |
+ ALOGE("unsupported pixel format\n"); | |
return -1; | |
} | |
@@ -331,7 +331,7 @@ static int fimc_v4l2_reqbufs(int fp, enum v4l2_buf_type type, int nr_bufs) | |
ret = ioctl(fp, VIDIOC_REQBUFS, &req); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_REQBUFS failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_REQBUFS failed\n", __func__); | |
return -1; | |
} | |
@@ -343,7 +343,7 @@ static int fimc_v4l2_querybuf(int fp, struct fimc_buffer *buffer, enum v4l2_buf_ | |
struct v4l2_buffer v4l2_buf; | |
int ret; | |
- LOGI("%s :", __func__); | |
+ ALOGI("%s :", __func__); | |
v4l2_buf.type = type; | |
v4l2_buf.memory = V4L2_MEMORY_MMAP; | |
@@ -351,7 +351,7 @@ static int fimc_v4l2_querybuf(int fp, struct fimc_buffer *buffer, enum v4l2_buf_ | |
ret = ioctl(fp , VIDIOC_QUERYBUF, &v4l2_buf); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_QUERYBUF failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_QUERYBUF failed\n", __func__); | |
return -1; | |
} | |
@@ -359,11 +359,11 @@ static int fimc_v4l2_querybuf(int fp, struct fimc_buffer *buffer, enum v4l2_buf_ | |
if ((buffer->start = (char *)mmap(0, v4l2_buf.length, | |
PROT_READ | PROT_WRITE, MAP_SHARED, | |
fp, v4l2_buf.m.offset)) < 0) { | |
- LOGE("%s %d] mmap() failed\n",__func__, __LINE__); | |
+ ALOGE("%s %d] mmap() failed\n",__func__, __LINE__); | |
return -1; | |
} | |
- LOGI("%s: buffer->start = %p v4l2_buf.length = %d", | |
+ ALOGI("%s: buffer->start = %p v4l2_buf.length = %d", | |
__func__, buffer->start, v4l2_buf.length); | |
return 0; | |
@@ -376,7 +376,7 @@ static int fimc_v4l2_streamon(int fp) | |
ret = ioctl(fp, VIDIOC_STREAMON, &type); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_STREAMON failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_STREAMON failed\n", __func__); | |
return ret; | |
} | |
@@ -388,10 +388,10 @@ static int fimc_v4l2_streamoff(int fp) | |
enum v4l2_buf_type type = V4L2_BUF_TYPE_VIDEO_CAPTURE; | |
int ret; | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
ret = ioctl(fp, VIDIOC_STREAMOFF, &type); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_STREAMOFF failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_STREAMOFF failed\n", __func__); | |
return ret; | |
} | |
@@ -409,7 +409,7 @@ static int fimc_v4l2_qbuf(int fp, int index) | |
ret = ioctl(fp, VIDIOC_QBUF, &v4l2_buf); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_QBUF failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_QBUF failed\n", __func__); | |
return ret; | |
} | |
@@ -426,7 +426,7 @@ static int fimc_v4l2_dqbuf(int fp) | |
ret = ioctl(fp, VIDIOC_DQBUF, &v4l2_buf); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_DQBUF failed, dropped frame\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_DQBUF failed, dropped frame\n", __func__); | |
return ret; | |
} | |
@@ -442,7 +442,7 @@ static int fimc_v4l2_g_ctrl(int fp, unsigned int id) | |
ret = ioctl(fp, VIDIOC_G_CTRL, &ctrl); | |
if (ret < 0) { | |
- LOGE("ERR(%s): VIDIOC_G_CTRL(id = 0x%x (%d)) failed, ret = %d\n", | |
+ ALOGE("ERR(%s): VIDIOC_G_CTRL(id = 0x%x (%d)) failed, ret = %d\n", | |
__func__, id, id-V4L2_CID_PRIVATE_BASE, ret); | |
return ret; | |
} | |
@@ -460,7 +460,7 @@ static int fimc_v4l2_s_ctrl(int fp, unsigned int id, unsigned int value) | |
ret = ioctl(fp, VIDIOC_S_CTRL, &ctrl); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_S_CTRL(id = %#x (%d), value = %d) failed ret = %d\n", | |
+ ALOGE("ERR(%s):VIDIOC_S_CTRL(id = %#x (%d), value = %d) failed ret = %d\n", | |
__func__, id, id-V4L2_CID_PRIVATE_BASE, value, ret); | |
return ret; | |
@@ -469,26 +469,6 @@ static int fimc_v4l2_s_ctrl(int fp, unsigned int id, unsigned int value) | |
return ctrl.value; | |
} | |
-static int fimc_v4l2_s_ext_ctrl(int fp, unsigned int id, void *value) | |
-{ | |
- struct v4l2_ext_controls ctrls; | |
- struct v4l2_ext_control ctrl; | |
- int ret; | |
- | |
- ctrl.id = id; | |
- ctrl.reserved = value; | |
- | |
- ctrls.ctrl_class = V4L2_CTRL_CLASS_CAMERA; | |
- ctrls.count = 1; | |
- ctrls.controls = &ctrl; | |
- | |
- ret = ioctl(fp, VIDIOC_S_EXT_CTRLS, &ctrls); | |
- if (ret < 0) | |
- LOGE("ERR(%s):VIDIOC_S_EXT_CTRLS failed\n", __func__); | |
- | |
- return ret; | |
-} | |
- | |
static int fimc_v4l2_g_parm(int fp, struct v4l2_streamparm *streamparm) | |
{ | |
int ret; | |
@@ -497,11 +477,11 @@ static int fimc_v4l2_g_parm(int fp, struct v4l2_streamparm *streamparm) | |
ret = ioctl(fp, VIDIOC_G_PARM, streamparm); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_G_PARM failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_G_PARM failed\n", __func__); | |
return -1; | |
} | |
- LOGV("%s : timeperframe: numerator %d, denominator %d\n", __func__, | |
+ ALOGV("%s : timeperframe: numerator %d, denominator %d\n", __func__, | |
streamparm->parm.capture.timeperframe.numerator, | |
streamparm->parm.capture.timeperframe.denominator); | |
@@ -516,7 +496,7 @@ static int fimc_v4l2_s_parm(int fp, struct v4l2_streamparm *streamparm) | |
ret = ioctl(fp, VIDIOC_S_PARM, streamparm); | |
if (ret < 0) { | |
- LOGE("ERR(%s):VIDIOC_S_PARM failed\n", __func__); | |
+ ALOGE("ERR(%s):VIDIOC_S_PARM failed\n", __func__); | |
return ret; | |
} | |
@@ -592,17 +572,17 @@ SecCamera::SecCamera() : | |
memset(&m_capture_buf, 0, sizeof(m_capture_buf)); | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
} | |
SecCamera::~SecCamera() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
} | |
int SecCamera::initCamera(int index) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
int ret = 0; | |
if (!m_flag_init) { | |
@@ -614,12 +594,12 @@ int SecCamera::initCamera(int index) | |
m_cam_fd = open(CAMERA_DEV_NAME, O_RDWR); | |
if (m_cam_fd < 0) { | |
- LOGE("ERR(%s):Cannot open %s (error : %s)\n", __func__, CAMERA_DEV_NAME, strerror(errno)); | |
+ ALOGE("ERR(%s):Cannot open %s (error : %s)\n", __func__, CAMERA_DEV_NAME, strerror(errno)); | |
return -1; | |
} | |
- LOGV("%s: open(%s) --> m_cam_fd %d", __FUNCTION__, CAMERA_DEV_NAME, m_cam_fd); | |
+ ALOGV("%s: open(%s) --> m_cam_fd %d", __FUNCTION__, CAMERA_DEV_NAME, m_cam_fd); | |
- LOGE("initCamera: m_cam_fd(%d), m_jpeg_fd(%d)", m_cam_fd, m_jpeg_fd); | |
+ ALOGE("initCamera: m_cam_fd(%d), m_jpeg_fd(%d)", m_cam_fd, m_jpeg_fd); | |
ret = fimc_v4l2_querycap(m_cam_fd); | |
CHECK(ret); | |
@@ -629,13 +609,13 @@ int SecCamera::initCamera(int index) | |
CHECK(ret); | |
m_cam_fd2 = open(CAMERA_DEV_NAME2, O_RDWR); | |
- LOGV("%s: open(%s) --> m_cam_fd2 = %d", __FUNCTION__, CAMERA_DEV_NAME2, m_cam_fd2); | |
+ ALOGV("%s: open(%s) --> m_cam_fd2 = %d", __FUNCTION__, CAMERA_DEV_NAME2, m_cam_fd2); | |
if (m_cam_fd2 < 0) { | |
- LOGE("ERR(%s):Cannot open %s (error : %s)\n", __func__, CAMERA_DEV_NAME2, strerror(errno)); | |
+ ALOGE("ERR(%s):Cannot open %s (error : %s)\n", __func__, CAMERA_DEV_NAME2, strerror(errno)); | |
return -1; | |
} | |
- LOGE("initCamera: m_cam_fd2(%d)", m_cam_fd2); | |
+ ALOGE("initCamera: m_cam_fd2(%d)", m_cam_fd2); | |
ret = fimc_v4l2_querycap(m_cam_fd2); | |
CHECK(ret); | |
@@ -665,21 +645,21 @@ int SecCamera::initCamera(int index) | |
setExifFixedAttribute(); | |
m_flag_init = 1; | |
- LOGI("%s : initialized", __FUNCTION__); | |
+ ALOGI("%s : initialized", __FUNCTION__); | |
} | |
return 0; | |
} | |
void SecCamera::resetCamera() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
DeinitCamera(); | |
initCamera(m_camera_id); | |
} | |
void SecCamera::DeinitCamera() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
if (m_flag_init) { | |
@@ -688,13 +668,13 @@ void SecCamera::DeinitCamera() | |
/* close m_cam_fd after stopRecord() because stopRecord() | |
* uses m_cam_fd to change frame rate | |
*/ | |
- LOGI("DeinitCamera: m_cam_fd(%d)", m_cam_fd); | |
+ ALOGI("DeinitCamera: m_cam_fd(%d)", m_cam_fd); | |
if (m_cam_fd > -1) { | |
close(m_cam_fd); | |
m_cam_fd = -1; | |
} | |
- LOGI("DeinitCamera: m_cam_fd2(%d)", m_cam_fd2); | |
+ ALOGI("DeinitCamera: m_cam_fd2(%d)", m_cam_fd2); | |
if (m_cam_fd2 > -1) { | |
close(m_cam_fd2); | |
m_cam_fd2 = -1; | |
@@ -702,7 +682,7 @@ void SecCamera::DeinitCamera() | |
m_flag_init = 0; | |
} | |
- else LOGI("%s : already deinitialized", __FUNCTION__); | |
+ else ALOGI("%s : already deinitialized", __FUNCTION__); | |
} | |
@@ -719,16 +699,16 @@ int SecCamera::startPreview(void) | |
v4l2_streamparm streamparm; | |
struct sec_cam_parm *parms; | |
parms = (struct sec_cam_parm*)&streamparm.parm.raw_data; | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
// aleady started | |
if (m_flag_camera_start > 0) { | |
- LOGE("ERR(%s):Preview was already started\n", __func__); | |
+ ALOGE("ERR(%s):Preview was already started\n", __func__); | |
return 0; | |
} | |
if (m_cam_fd <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
@@ -745,7 +725,7 @@ int SecCamera::startPreview(void) | |
ret = fimc_v4l2_reqbufs(m_cam_fd, V4L2_BUF_TYPE_VIDEO_CAPTURE, MAX_BUFFERS); | |
CHECK(ret); | |
- LOGV("%s : m_preview_width: %d m_preview_height: %d m_angle: %d\n", | |
+ ALOGV("%s : m_preview_width: %d m_preview_height: %d m_angle: %d\n", | |
__func__, m_preview_width, m_preview_height, m_angle); | |
ret = fimc_v4l2_s_ctrl(m_cam_fd, | |
@@ -774,7 +754,7 @@ int SecCamera::startPreview(void) | |
if (m_camera_id == CAMERA_ID_FRONT) { | |
/* Blur setting */ | |
- LOGV("m_blur_level = %d", m_blur_level); | |
+ ALOGV("m_blur_level = %d", m_blur_level); | |
ret = fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_VGA_BLUR, | |
m_blur_level); | |
CHECK(ret); | |
@@ -786,7 +766,7 @@ int SecCamera::startPreview(void) | |
ret = fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_RETURN_FOCUS, 0); | |
CHECK(ret); | |
- LOGV("%s: got the first frame of the preview\n", __func__); | |
+ ALOGV("%s: got the first frame of the preview\n", __func__); | |
return 0; | |
} | |
@@ -795,10 +775,10 @@ int SecCamera::stopPreview(void) | |
{ | |
int ret; | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
if (m_flag_camera_start == 0) { | |
- LOGW("%s: doing nothing because m_flag_camera_start is zero", __func__); | |
+ ALOGW("%s: doing nothing because m_flag_camera_start is zero", __func__); | |
return 0; | |
} | |
@@ -806,7 +786,7 @@ int SecCamera::stopPreview(void) | |
setFlashMode(FLASH_MODE_OFF); | |
if (m_cam_fd <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
@@ -823,16 +803,16 @@ int SecCamera::startRecord(void) | |
{ | |
int ret, i; | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
// aleady started | |
if (m_flag_record_start > 0) { | |
- LOGE("ERR(%s):Preview was already started\n", __func__); | |
+ ALOGE("ERR(%s):Preview was already started\n", __func__); | |
return 0; | |
} | |
if (m_cam_fd2 <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
@@ -840,7 +820,7 @@ int SecCamera::startRecord(void) | |
ret = fimc_v4l2_enum_fmt(m_cam_fd2, V4L2_PIX_FMT_NV12T); | |
CHECK(ret); | |
- LOGI("%s: m_recording_width = %d, m_recording_height = %d\n", | |
+ ALOGI("%s: m_recording_width = %d, m_recording_height = %d\n", | |
__func__, m_recording_width, m_recording_height); | |
ret = fimc_v4l2_s_fmt(m_cam_fd2, m_recording_width, | |
@@ -879,15 +859,15 @@ int SecCamera::stopRecord(void) | |
{ | |
int ret; | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
if (m_flag_record_start == 0) { | |
- LOGW("%s: doing nothing because m_flag_record_start is zero", __func__); | |
+ ALOGW("%s: doing nothing because m_flag_record_start is zero", __func__); | |
return 0; | |
} | |
if (m_cam_fd2 <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
@@ -950,7 +930,7 @@ int SecCamera::getPreview() | |
int ret; | |
if (m_flag_camera_start == 0 || previewPoll(true) == 0) { | |
- LOGE("ERR(%s):Start Camera Device Reset \n", __func__); | |
+ ALOGE("ERR(%s):Start Camera Device Reset \n", __func__); | |
/* GAUDI Project([[email protected]]) 2010.05.20. [Implemented ESD code] */ | |
/* | |
* When there is no data for more than 1 second from the camera we inform | |
@@ -968,14 +948,14 @@ int SecCamera::getPreview() | |
CHECK(ret); | |
ret = startPreview(); | |
if (ret < 0) { | |
- LOGE("ERR(%s): startPreview() return %d\n", __func__, ret); | |
+ ALOGE("ERR(%s): startPreview() return %d\n", __func__, ret); | |
return 0; | |
} | |
} | |
index = fimc_v4l2_dqbuf(m_cam_fd); | |
if (!(0 <= index && index < MAX_BUFFERS)) { | |
- LOGE("ERR(%s):wrong index = %d\n", __func__, index); | |
+ ALOGE("ERR(%s):wrong index = %d\n", __func__, index); | |
return -1; | |
} | |
@@ -988,7 +968,7 @@ int SecCamera::getPreview() | |
int SecCamera::getRecordFrame() | |
{ | |
if (m_flag_record_start == 0) { | |
- LOGE("%s: m_flag_record_start is 0", __func__); | |
+ ALOGE("%s: m_flag_record_start is 0", __func__); | |
return -1; | |
} | |
@@ -1005,7 +985,7 @@ int SecCamera::releaseRecordFrame(int index) | |
* cases where fimc could crash if we called qbuf and it | |
* wasn't expecting it. | |
*/ | |
- LOGI("%s: recording not in progress, ignoring", __func__); | |
+ ALOGI("%s: recording not in progress, ignoring", __func__); | |
return 0; | |
} | |
@@ -1014,27 +994,27 @@ int SecCamera::releaseRecordFrame(int index) | |
int SecCamera::setPreviewSize(int width, int height, int pixel_format) | |
{ | |
- LOGV("%s(width(%d), height(%d), format(%d))", __func__, width, height, pixel_format); | |
+ ALOGV("%s(width(%d), height(%d), format(%d))", __func__, width, height, pixel_format); | |
int v4lpixelformat = pixel_format; | |
#if defined(LOG_NDEBUG) && LOG_NDEBUG == 0 | |
if (v4lpixelformat == V4L2_PIX_FMT_YUV420) | |
- LOGV("PreviewFormat:V4L2_PIX_FMT_YUV420"); | |
+ ALOGV("PreviewFormat:V4L2_PIX_FMT_YUV420"); | |
else if (v4lpixelformat == V4L2_PIX_FMT_NV12) | |
- LOGV("PreviewFormat:V4L2_PIX_FMT_NV12"); | |
+ ALOGV("PreviewFormat:V4L2_PIX_FMT_NV12"); | |
else if (v4lpixelformat == V4L2_PIX_FMT_NV12T) | |
- LOGV("PreviewFormat:V4L2_PIX_FMT_NV12T"); | |
+ ALOGV("PreviewFormat:V4L2_PIX_FMT_NV12T"); | |
else if (v4lpixelformat == V4L2_PIX_FMT_NV21) | |
- LOGV("PreviewFormat:V4L2_PIX_FMT_NV21"); | |
+ ALOGV("PreviewFormat:V4L2_PIX_FMT_NV21"); | |
else if (v4lpixelformat == V4L2_PIX_FMT_YUV422P) | |
- LOGV("PreviewFormat:V4L2_PIX_FMT_YUV422P"); | |
+ ALOGV("PreviewFormat:V4L2_PIX_FMT_YUV422P"); | |
else if (v4lpixelformat == V4L2_PIX_FMT_YUYV) | |
- LOGV("PreviewFormat:V4L2_PIX_FMT_YUYV"); | |
+ ALOGV("PreviewFormat:V4L2_PIX_FMT_YUYV"); | |
else if (v4lpixelformat == V4L2_PIX_FMT_RGB565) | |
- LOGV("PreviewFormat:V4L2_PIX_FMT_RGB565"); | |
+ ALOGV("PreviewFormat:V4L2_PIX_FMT_RGB565"); | |
else | |
- LOGV("PreviewFormat:UnknownFormat"); | |
+ ALOGV("PreviewFormat:UnknownFormat"); | |
#endif | |
m_preview_width = width; | |
m_preview_height = height; | |
@@ -1074,7 +1054,7 @@ int SecCamera::getPreviewPixelFormat(void) | |
*/ | |
int SecCamera::setSnapshotCmd(void) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
int ret = 0; | |
@@ -1082,13 +1062,13 @@ int SecCamera::setSnapshotCmd(void) | |
LOG_TIME_DEFINE(1) | |
if (m_cam_fd <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return 0; | |
} | |
if (m_flag_camera_start > 0) { | |
LOG_TIME_START(0) | |
- LOGW("WARN(%s):Camera was in preview, should have been stopped\n", __func__); | |
+ ALOGW("WARN(%s):Camera was in preview, should have been stopped\n", __func__); | |
stopPreview(); | |
LOG_TIME_END(0) | |
} | |
@@ -1123,10 +1103,10 @@ int SecCamera::endSnapshot(void) | |
{ | |
int ret; | |
- LOGI("%s :", __func__); | |
+ ALOGI("%s :", __func__); | |
if (m_capture_buf.start) { | |
munmap(m_capture_buf.start, m_capture_buf.length); | |
- LOGI("munmap():virt. addr %p size = %d\n", | |
+ ALOGI("munmap():virt. addr %p size = %d\n", | |
m_capture_buf.start, m_capture_buf.length); | |
m_capture_buf.start = NULL; | |
m_capture_buf.length = 0; | |
@@ -1139,7 +1119,7 @@ int SecCamera::endSnapshot(void) | |
*/ | |
unsigned char* SecCamera::getJpeg(int *jpeg_size, unsigned int *phyaddr) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
int index, ret = 0; | |
unsigned char *addr; | |
@@ -1151,7 +1131,7 @@ unsigned char* SecCamera::getJpeg(int *jpeg_size, unsigned int *phyaddr) | |
CHECK_PTR(ret); | |
index = fimc_v4l2_dqbuf(m_cam_fd); | |
if (index != 0) { | |
- LOGE("ERR(%s):wrong index = %d\n", __func__, index); | |
+ ALOGE("ERR(%s):wrong index = %d\n", __func__, index); | |
return NULL; | |
} | |
@@ -1165,7 +1145,7 @@ unsigned char* SecCamera::getJpeg(int *jpeg_size, unsigned int *phyaddr) | |
ret = fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_STREAM_PAUSE, 0); | |
CHECK_PTR(ret); | |
- LOGV("\nsnapshot dqueued buffer = %d snapshot_width = %d snapshot_height = %d, size = %d\n\n", | |
+ ALOGV("\nsnapshot dqueued buffer = %d snapshot_width = %d snapshot_height = %d, size = %d\n\n", | |
index, m_snapshot_width, m_snapshot_height, *jpeg_size); | |
addr = (unsigned char*)(m_capture_buf.start) + main_offset; | |
@@ -1183,7 +1163,7 @@ int SecCamera::getExif(unsigned char *pExifDst, unsigned char *pThumbSrc) | |
{ | |
JpegEncoder jpgEnc; | |
- LOGV("%s : m_jpeg_thumbnail_width = %d, height = %d", | |
+ ALOGV("%s : m_jpeg_thumbnail_width = %d, height = %d", | |
__func__, m_jpeg_thumbnail_width, m_jpeg_thumbnail_height); | |
if ((m_jpeg_thumbnail_width > 0) && (m_jpeg_thumbnail_height > 0)) { | |
int inFormat = JPG_MODESEL_YCBCR; | |
@@ -1228,10 +1208,10 @@ int SecCamera::getExif(unsigned char *pExifDst, unsigned char *pThumbSrc) | |
jpgEnc.encode(&thumbSize, NULL); | |
- LOGV("%s : enableThumb set to true", __func__); | |
+ ALOGV("%s : enableThumb set to true", __func__); | |
mExifInfo.enableThumb = true; | |
} else { | |
- LOGV("%s : enableThumb set to false", __func__); | |
+ ALOGV("%s : enableThumb set to false", __func__); | |
mExifInfo.enableThumb = false; | |
} | |
@@ -1239,7 +1219,7 @@ int SecCamera::getExif(unsigned char *pExifDst, unsigned char *pThumbSrc) | |
setExifChangedAttribute(); | |
- LOGV("%s: calling jpgEnc.makeExif, mExifInfo.width set to %d, height to %d\n", | |
+ ALOGV("%s: calling jpgEnc.makeExif, mExifInfo.width set to %d, height to %d\n", | |
__func__, mExifInfo.width, mExifInfo.height); | |
jpgEnc.makeExif(pExifDst, &mExifInfo, &exifSize, true); | |
@@ -1258,7 +1238,7 @@ void SecCamera::getPostViewConfig(int *width, int *height, int *size) | |
*height = BACK_CAMERA_POSTVIEW_HEIGHT; | |
*size = BACK_CAMERA_POSTVIEW_WIDTH * BACK_CAMERA_POSTVIEW_HEIGHT * BACK_CAMERA_POSTVIEW_BPP / 8; | |
} | |
- LOGV("[5B] m_preview_width : %d, mPostViewWidth = %d mPostViewHeight = %d mPostViewSize = %d", | |
+ ALOGV("[5B] m_preview_width : %d, mPostViewWidth = %d mPostViewHeight = %d mPostViewSize = %d", | |
m_preview_width, *width, *height, *size); | |
} | |
@@ -1285,7 +1265,7 @@ int SecCamera::getPostViewOffset(void) | |
int SecCamera::getSnapshotAndJpeg(unsigned char *yuv_buf, unsigned char *jpeg_buf, | |
unsigned int *output_size) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
int index; | |
//unsigned int addr; | |
@@ -1302,13 +1282,13 @@ int SecCamera::getSnapshotAndJpeg(unsigned char *yuv_buf, unsigned char *jpeg_bu | |
//fimc_v4l2_streamoff(m_cam_fd); [zzangdol] remove - it is separate in HWInterface with camera_id | |
if (m_cam_fd <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
if (m_flag_camera_start > 0) { | |
LOG_TIME_START(0) | |
- LOGW("WARN(%s):Camera was in preview, should have been stopped\n", __func__); | |
+ ALOGW("WARN(%s):Camera was in preview, should have been stopped\n", __func__); | |
stopPreview(); | |
LOG_TIME_END(0) | |
} | |
@@ -1319,23 +1299,23 @@ int SecCamera::getSnapshotAndJpeg(unsigned char *yuv_buf, unsigned char *jpeg_bu | |
#if defined(LOG_NDEBUG) && LOG_NDEBUG == 0 | |
if (m_snapshot_v4lformat == V4L2_PIX_FMT_YUV420) | |
- LOGV("SnapshotFormat:V4L2_PIX_FMT_YUV420"); | |
+ ALOGV("SnapshotFormat:V4L2_PIX_FMT_YUV420"); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_NV12) | |
- LOGV("SnapshotFormat:V4L2_PIX_FMT_NV12"); | |
+ ALOGV("SnapshotFormat:V4L2_PIX_FMT_NV12"); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_NV12T) | |
- LOGV("SnapshotFormat:V4L2_PIX_FMT_NV12T"); | |
+ ALOGV("SnapshotFormat:V4L2_PIX_FMT_NV12T"); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_NV21) | |
- LOGV("SnapshotFormat:V4L2_PIX_FMT_NV21"); | |
+ ALOGV("SnapshotFormat:V4L2_PIX_FMT_NV21"); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_YUV422P) | |
- LOGV("SnapshotFormat:V4L2_PIX_FMT_YUV422P"); | |
+ ALOGV("SnapshotFormat:V4L2_PIX_FMT_YUV422P"); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_YUYV) | |
- LOGV("SnapshotFormat:V4L2_PIX_FMT_YUYV"); | |
+ ALOGV("SnapshotFormat:V4L2_PIX_FMT_YUYV"); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_UYVY) | |
- LOGV("SnapshotFormat:V4L2_PIX_FMT_UYVY"); | |
+ ALOGV("SnapshotFormat:V4L2_PIX_FMT_UYVY"); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_RGB565) | |
- LOGV("SnapshotFormat:V4L2_PIX_FMT_RGB565"); | |
+ ALOGV("SnapshotFormat:V4L2_PIX_FMT_RGB565"); | |
else | |
- LOGV("SnapshotFormat:UnknownFormat"); | |
+ ALOGV("SnapshotFormat:UnknownFormat"); | |
#endif | |
LOG_TIME_START(1) // prepare | |
@@ -1361,12 +1341,12 @@ int SecCamera::getSnapshotAndJpeg(unsigned char *yuv_buf, unsigned char *jpeg_bu | |
fimc_poll(&m_events_c); | |
index = fimc_v4l2_dqbuf(m_cam_fd); | |
fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_STREAM_PAUSE, 0); | |
- LOGV("\nsnapshot dequeued buffer = %d snapshot_width = %d snapshot_height = %d\n\n", | |
+ ALOGV("\nsnapshot dequeued buffer = %d snapshot_width = %d snapshot_height = %d\n\n", | |
index, m_snapshot_width, m_snapshot_height); | |
LOG_TIME_END(2) | |
- LOGI("%s : calling memcpy from m_capture_buf", __func__); | |
+ ALOGI("%s : calling memcpy from m_capture_buf", __func__); | |
memcpy(yuv_buf, (unsigned char*)m_capture_buf.start, m_snapshot_width * m_snapshot_height * 2); | |
LOG_TIME_START(5) // post | |
fimc_v4l2_streamoff(m_cam_fd); | |
@@ -1396,10 +1376,10 @@ int SecCamera::getSnapshotAndJpeg(unsigned char *yuv_buf, unsigned char *jpeg_bu | |
} | |
if (jpgEnc.setConfig(JPEG_SET_ENCODE_IN_FORMAT, inFormat) != JPG_SUCCESS) | |
- LOGE("[JPEG_SET_ENCODE_IN_FORMAT] Error\n"); | |
+ ALOGE("[JPEG_SET_ENCODE_IN_FORMAT] Error\n"); | |
if (jpgEnc.setConfig(JPEG_SET_SAMPING_MODE, outFormat) != JPG_SUCCESS) | |
- LOGE("[JPEG_SET_SAMPING_MODE] Error\n"); | |
+ ALOGE("[JPEG_SET_SAMPING_MODE] Error\n"); | |
image_quality_type_t jpegQuality; | |
if (m_jpeg_quality >= 90) | |
@@ -1412,18 +1392,18 @@ int SecCamera::getSnapshotAndJpeg(unsigned char *yuv_buf, unsigned char *jpeg_bu | |
jpegQuality = JPG_QUALITY_LEVEL_4; | |
if (jpgEnc.setConfig(JPEG_SET_ENCODE_QUALITY, jpegQuality) != JPG_SUCCESS) | |
- LOGE("[JPEG_SET_ENCODE_QUALITY] Error\n"); | |
+ ALOGE("[JPEG_SET_ENCODE_QUALITY] Error\n"); | |
if (jpgEnc.setConfig(JPEG_SET_ENCODE_WIDTH, m_snapshot_width) != JPG_SUCCESS) | |
- LOGE("[JPEG_SET_ENCODE_WIDTH] Error\n"); | |
+ ALOGE("[JPEG_SET_ENCODE_WIDTH] Error\n"); | |
if (jpgEnc.setConfig(JPEG_SET_ENCODE_HEIGHT, m_snapshot_height) != JPG_SUCCESS) | |
- LOGE("[JPEG_SET_ENCODE_HEIGHT] Error\n"); | |
+ ALOGE("[JPEG_SET_ENCODE_HEIGHT] Error\n"); | |
unsigned int snapshot_size = m_snapshot_width * m_snapshot_height * 2; | |
unsigned char *pInBuf = (unsigned char *)jpgEnc.getInBuf(snapshot_size); | |
if (pInBuf == NULL) { | |
- LOGE("JPEG input buffer is NULL!!\n"); | |
+ ALOGE("JPEG input buffer is NULL!!\n"); | |
return -1; | |
} | |
memcpy(pInBuf, yuv_buf, snapshot_size); | |
@@ -1435,7 +1415,7 @@ int SecCamera::getSnapshotAndJpeg(unsigned char *yuv_buf, unsigned char *jpeg_bu | |
unsigned char *pOutBuf = (unsigned char *)jpgEnc.getOutBuf(&outbuf_size); | |
if (pOutBuf == NULL) { | |
- LOGE("JPEG output buffer is NULL!!\n"); | |
+ ALOGE("JPEG output buffer is NULL!!\n"); | |
return -1; | |
} | |
@@ -1447,7 +1427,7 @@ int SecCamera::getSnapshotAndJpeg(unsigned char *yuv_buf, unsigned char *jpeg_bu | |
int SecCamera::setSnapshotSize(int width, int height) | |
{ | |
- LOGV("%s(width(%d), height(%d))", __func__, width, height); | |
+ ALOGV("%s(width(%d), height(%d))", __func__, width, height); | |
m_snapshot_width = width; | |
m_snapshot_height = height; | |
@@ -1504,23 +1484,23 @@ int SecCamera::setSnapshotPixelFormat(int pixel_format) | |
#if defined(LOG_NDEBUG) && LOG_NDEBUG == 0 | |
if (m_snapshot_v4lformat == V4L2_PIX_FMT_YUV420) | |
- LOGE("%s : SnapshotFormat:V4L2_PIX_FMT_YUV420", __func__); | |
+ ALOGE("%s : SnapshotFormat:V4L2_PIX_FMT_YUV420", __func__); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_NV12) | |
- LOGD("%s : SnapshotFormat:V4L2_PIX_FMT_NV12", __func__); | |
+ ALOGD("%s : SnapshotFormat:V4L2_PIX_FMT_NV12", __func__); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_NV12T) | |
- LOGD("%s : SnapshotFormat:V4L2_PIX_FMT_NV12T", __func__); | |
+ ALOGD("%s : SnapshotFormat:V4L2_PIX_FMT_NV12T", __func__); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_NV21) | |
- LOGD("%s : SnapshotFormat:V4L2_PIX_FMT_NV21", __func__); | |
+ ALOGD("%s : SnapshotFormat:V4L2_PIX_FMT_NV21", __func__); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_YUV422P) | |
- LOGD("%s : SnapshotFormat:V4L2_PIX_FMT_YUV422P", __func__); | |
+ ALOGD("%s : SnapshotFormat:V4L2_PIX_FMT_YUV422P", __func__); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_YUYV) | |
- LOGD("%s : SnapshotFormat:V4L2_PIX_FMT_YUYV", __func__); | |
+ ALOGD("%s : SnapshotFormat:V4L2_PIX_FMT_YUYV", __func__); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_UYVY) | |
- LOGD("%s : SnapshotFormat:V4L2_PIX_FMT_UYVY", __func__); | |
+ ALOGD("%s : SnapshotFormat:V4L2_PIX_FMT_UYVY", __func__); | |
else if (m_snapshot_v4lformat == V4L2_PIX_FMT_RGB565) | |
- LOGD("%s : SnapshotFormat:V4L2_PIX_FMT_RGB565", __func__); | |
+ ALOGD("%s : SnapshotFormat:V4L2_PIX_FMT_RGB565", __func__); | |
else | |
- LOGD("SnapshotFormat:UnknownFormat"); | |
+ ALOGD("SnapshotFormat:UnknownFormat"); | |
#endif | |
return 0; | |
} | |
@@ -1542,15 +1522,15 @@ int SecCamera::getCameraId(void) | |
int SecCamera::setAutofocus(void) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
if (m_cam_fd <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_SET_AUTO_FOCUS, AUTO_FOCUS_ON) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_AUTO_FOCUS", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_AUTO_FOCUS", __func__); | |
return -1; | |
} | |
@@ -1568,7 +1548,7 @@ int SecCamera::getAutoFocusResult(void) | |
usleep(AF_DELAY); | |
} | |
if ((count >= FIRST_AF_SEARCH_COUNT) || (ret != AF_SUCCESS)) { | |
- LOGV("%s : 1st AF timed out, failed, or was canceled", __func__); | |
+ ALOGV("%s : 1st AF timed out, failed, or was canceled", __func__); | |
af_result = 0; | |
goto finish_auto_focus; | |
} | |
@@ -1581,17 +1561,17 @@ int SecCamera::getAutoFocusResult(void) | |
usleep(AF_DELAY); | |
} | |
if (count >= SECOND_AF_SEARCH_COUNT) { | |
- LOGV("%s : 2nd AF timed out, failed, or was canceled", __func__); | |
+ ALOGV("%s : 2nd AF timed out, failed, or was canceled", __func__); | |
af_result = 0; | |
goto finish_auto_focus; | |
} | |
af_result = 1; | |
- LOGV("%s : AF was successful, returning %d", __func__, af_result); | |
+ ALOGV("%s : AF was successful, returning %d", __func__, af_result); | |
finish_auto_focus: | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_FINISH_AUTO_FOCUS, 0) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_PRE_FLASH", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_PRE_FLASH", __func__); | |
return -1; | |
} | |
return af_result; | |
@@ -1599,15 +1579,15 @@ finish_auto_focus: | |
int SecCamera::cancelAutofocus(void) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
if (m_cam_fd <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_SET_AUTO_FOCUS, AUTO_FOCUS_OFF) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_AUTO_FOCUS", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_AUTO_FOCUS", __func__); | |
return -1; | |
} | |
@@ -1618,13 +1598,13 @@ int SecCamera::cancelAutofocus(void) | |
int SecCamera::zoomIn(void) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
return 0; | |
} | |
int SecCamera::zoomOut(void) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
return 0; | |
} | |
@@ -1632,7 +1612,7 @@ int SecCamera::zoomOut(void) | |
int SecCamera::SetRotate(int angle) | |
{ | |
- LOGE("%s(angle(%d))", __func__, angle); | |
+ ALOGE("%s(angle(%d))", __func__, angle); | |
if (m_angle != angle) { | |
switch (angle) { | |
@@ -1658,13 +1638,13 @@ int SecCamera::SetRotate(int angle) | |
break; | |
default: | |
- LOGE("ERR(%s):Invalid angle(%d)", __func__, angle); | |
+ ALOGE("ERR(%s):Invalid angle(%d)", __func__, angle); | |
return -1; | |
} | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_ROTATION, angle) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_ROTATION", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_ROTATION", __func__); | |
return -1; | |
} | |
} | |
@@ -1675,22 +1655,22 @@ int SecCamera::SetRotate(int angle) | |
int SecCamera::getRotate(void) | |
{ | |
- LOGV("%s : angle(%d)", __func__, m_angle); | |
+ ALOGV("%s : angle(%d)", __func__, m_angle); | |
return m_angle; | |
} | |
int SecCamera::setFrameRate(int frame_rate) | |
{ | |
- LOGV("%s(FrameRate(%d))", __func__, frame_rate); | |
+ ALOGV("%s(FrameRate(%d))", __func__, frame_rate); | |
if (frame_rate < FRAME_RATE_AUTO || FRAME_RATE_MAX < frame_rate ) | |
- LOGE("ERR(%s):Invalid frame_rate(%d)", __func__, frame_rate); | |
+ ALOGE("ERR(%s):Invalid frame_rate(%d)", __func__, frame_rate); | |
if (m_params->capture.timeperframe.denominator != (unsigned)frame_rate) { | |
m_params->capture.timeperframe.denominator = frame_rate; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_FRAME_RATE, frame_rate) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FRAME_RATE", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FRAME_RATE", __func__); | |
return -1; | |
} | |
} | |
@@ -1703,15 +1683,15 @@ int SecCamera::setFrameRate(int frame_rate) | |
int SecCamera::setVerticalMirror(void) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
if (m_cam_fd <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_VFLIP, 0) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_VFLIP", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_VFLIP", __func__); | |
return -1; | |
} | |
@@ -1720,15 +1700,15 @@ int SecCamera::setVerticalMirror(void) | |
int SecCamera::setHorizontalMirror(void) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
if (m_cam_fd <= 0) { | |
- LOGE("ERR(%s):Camera was closed\n", __func__); | |
+ ALOGE("ERR(%s):Camera was closed\n", __func__); | |
return -1; | |
} | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_HFLIP, 0) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_HFLIP", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_HFLIP", __func__); | |
return -1; | |
} | |
@@ -1739,10 +1719,10 @@ int SecCamera::setHorizontalMirror(void) | |
int SecCamera::setWhiteBalance(int white_balance) | |
{ | |
- LOGV("%s(white_balance(%d))", __func__, white_balance); | |
+ ALOGV("%s(white_balance(%d))", __func__, white_balance); | |
if (white_balance <= WHITE_BALANCE_BASE || WHITE_BALANCE_MAX <= white_balance) { | |
- LOGE("ERR(%s):Invalid white_balance(%d)", __func__, white_balance); | |
+ ALOGE("ERR(%s):Invalid white_balance(%d)", __func__, white_balance); | |
return -1; | |
} | |
@@ -1750,7 +1730,7 @@ int SecCamera::setWhiteBalance(int white_balance) | |
m_params->white_balance = white_balance; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_WHITE_BALANCE, white_balance) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_WHITE_BALANCE", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_WHITE_BALANCE", __func__); | |
return -1; | |
} | |
} | |
@@ -1761,7 +1741,7 @@ int SecCamera::setWhiteBalance(int white_balance) | |
int SecCamera::getWhiteBalance(void) | |
{ | |
- LOGV("%s : white_balance(%d)", __func__, m_params->white_balance); | |
+ ALOGV("%s : white_balance(%d)", __func__, m_params->white_balance); | |
return m_params->white_balance; | |
} | |
@@ -1769,12 +1749,12 @@ int SecCamera::getWhiteBalance(void) | |
int SecCamera::setBrightness(int brightness) | |
{ | |
- LOGV("%s(brightness(%d))", __func__, brightness); | |
+ ALOGV("%s(brightness(%d))", __func__, brightness); | |
brightness += EV_DEFAULT; | |
if (brightness < EV_MINUS_4 || EV_PLUS_4 < brightness) { | |
- LOGE("ERR(%s):Invalid brightness(%d)", __func__, brightness); | |
+ ALOGE("ERR(%s):Invalid brightness(%d)", __func__, brightness); | |
return -1; | |
} | |
@@ -1782,7 +1762,7 @@ int SecCamera::setBrightness(int brightness) | |
m_params->brightness = brightness; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_BRIGHTNESS, brightness) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_BRIGHTNESS", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_BRIGHTNESS", __func__); | |
return -1; | |
} | |
} | |
@@ -1793,7 +1773,7 @@ int SecCamera::setBrightness(int brightness) | |
int SecCamera::getBrightness(void) | |
{ | |
- LOGV("%s : brightness(%d)", __func__, m_params->brightness); | |
+ ALOGV("%s : brightness(%d)", __func__, m_params->brightness); | |
return m_params->brightness; | |
} | |
@@ -1801,10 +1781,10 @@ int SecCamera::getBrightness(void) | |
int SecCamera::setImageEffect(int image_effect) | |
{ | |
- LOGV("%s(image_effect(%d))", __func__, image_effect); | |
+ ALOGV("%s(image_effect(%d))", __func__, image_effect); | |
if (image_effect <= IMAGE_EFFECT_BASE || IMAGE_EFFECT_MAX <= image_effect) { | |
- LOGE("ERR(%s):Invalid image_effect(%d)", __func__, image_effect); | |
+ ALOGE("ERR(%s):Invalid image_effect(%d)", __func__, image_effect); | |
return -1; | |
} | |
@@ -1812,7 +1792,7 @@ int SecCamera::setImageEffect(int image_effect) | |
m_params->effects = image_effect; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_EFFECT, image_effect) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_EFFECT", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_EFFECT", __func__); | |
return -1; | |
} | |
} | |
@@ -1823,17 +1803,17 @@ int SecCamera::setImageEffect(int image_effect) | |
int SecCamera::getImageEffect(void) | |
{ | |
- LOGV("%s : image_effect(%d)", __func__, m_params->effects); | |
+ ALOGV("%s : image_effect(%d)", __func__, m_params->effects); | |
return m_params->effects; | |
} | |
// ====================================================================== | |
int SecCamera::setAntiBanding(int anti_banding) | |
{ | |
- LOGV("%s(anti_banding(%d))", __func__, anti_banding); | |
+ ALOGV("%s(anti_banding(%d))", __func__, anti_banding); | |
if (anti_banding < ANTI_BANDING_AUTO || ANTI_BANDING_OFF < anti_banding) { | |
- LOGE("ERR(%s):Invalid anti_banding (%d)", __func__, anti_banding); | |
+ ALOGE("ERR(%s):Invalid anti_banding (%d)", __func__, anti_banding); | |
return -1; | |
} | |
@@ -1841,7 +1821,7 @@ int SecCamera::setAntiBanding(int anti_banding) | |
m_anti_banding = anti_banding; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_ANTI_BANDING, anti_banding) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_ANTI_BANDING", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_ANTI_BANDING", __func__); | |
return -1; | |
} | |
} | |
@@ -1853,10 +1833,10 @@ int SecCamera::setAntiBanding(int anti_banding) | |
//====================================================================== | |
int SecCamera::setSceneMode(int scene_mode) | |
{ | |
- LOGV("%s(scene_mode(%d))", __func__, scene_mode); | |
+ ALOGV("%s(scene_mode(%d))", __func__, scene_mode); | |
if (scene_mode <= SCENE_MODE_BASE || SCENE_MODE_MAX <= scene_mode) { | |
- LOGE("ERR(%s):Invalid scene_mode (%d)", __func__, scene_mode); | |
+ ALOGE("ERR(%s):Invalid scene_mode (%d)", __func__, scene_mode); | |
return -1; | |
} | |
@@ -1864,7 +1844,7 @@ int SecCamera::setSceneMode(int scene_mode) | |
m_params->scene_mode = scene_mode; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_SCENE_MODE, scene_mode) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SCENE_MODE", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SCENE_MODE", __func__); | |
return -1; | |
} | |
} | |
@@ -1882,10 +1862,10 @@ int SecCamera::getSceneMode(void) | |
int SecCamera::setFlashMode(int flash_mode) | |
{ | |
- LOGV("%s(flash_mode(%d))", __func__, flash_mode); | |
+ ALOGV("%s(flash_mode(%d))", __func__, flash_mode); | |
if (flash_mode <= FLASH_MODE_BASE || FLASH_MODE_MAX <= flash_mode) { | |
- LOGE("ERR(%s):Invalid flash_mode (%d)", __func__, flash_mode); | |
+ ALOGE("ERR(%s):Invalid flash_mode (%d)", __func__, flash_mode); | |
return -1; | |
} | |
@@ -1893,7 +1873,7 @@ int SecCamera::setFlashMode(int flash_mode) | |
m_params->flash_mode = flash_mode; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_FLASH_MODE, flash_mode) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FLASH_MODE", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FLASH_MODE", __func__); | |
return -1; | |
} | |
} | |
@@ -1911,9 +1891,9 @@ int SecCamera::getFlashMode(void) | |
int SecCamera::setISO(int iso_value) | |
{ | |
- LOGV("%s(iso_value(%d))", __func__, iso_value); | |
+ ALOGV("%s(iso_value(%d))", __func__, iso_value); | |
if (iso_value < ISO_AUTO || ISO_MAX <= iso_value) { | |
- LOGE("ERR(%s):Invalid iso_value (%d)", __func__, iso_value); | |
+ ALOGE("ERR(%s):Invalid iso_value (%d)", __func__, iso_value); | |
return -1; | |
} | |
@@ -1921,7 +1901,7 @@ int SecCamera::setISO(int iso_value) | |
m_params->iso = iso_value; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_ISO, iso_value) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_ISO", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_ISO", __func__); | |
return -1; | |
} | |
} | |
@@ -1939,10 +1919,10 @@ int SecCamera::getISO(void) | |
int SecCamera::setContrast(int contrast_value) | |
{ | |
- LOGV("%s(contrast_value(%d))", __func__, contrast_value); | |
+ ALOGV("%s(contrast_value(%d))", __func__, contrast_value); | |
if (contrast_value < CONTRAST_MINUS_2 || CONTRAST_MAX <= contrast_value) { | |
- LOGE("ERR(%s):Invalid contrast_value (%d)", __func__, contrast_value); | |
+ ALOGE("ERR(%s):Invalid contrast_value (%d)", __func__, contrast_value); | |
return -1; | |
} | |
@@ -1950,7 +1930,7 @@ int SecCamera::setContrast(int contrast_value) | |
m_params->contrast = contrast_value; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_CONTRAST, contrast_value) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_CONTRAST", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_CONTRAST", __func__); | |
return -1; | |
} | |
} | |
@@ -1968,10 +1948,10 @@ int SecCamera::getContrast(void) | |
int SecCamera::setSaturation(int saturation_value) | |
{ | |
- LOGV("%s(saturation_value(%d))", __func__, saturation_value); | |
+ ALOGV("%s(saturation_value(%d))", __func__, saturation_value); | |
if (saturation_value <SATURATION_MINUS_2 || SATURATION_MAX<= saturation_value) { | |
- LOGE("ERR(%s):Invalid saturation_value (%d)", __func__, saturation_value); | |
+ ALOGE("ERR(%s):Invalid saturation_value (%d)", __func__, saturation_value); | |
return -1; | |
} | |
@@ -1979,7 +1959,7 @@ int SecCamera::setSaturation(int saturation_value) | |
m_params->saturation = saturation_value; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_SATURATION, saturation_value) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SATURATION", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SATURATION", __func__); | |
return -1; | |
} | |
} | |
@@ -1997,10 +1977,10 @@ int SecCamera::getSaturation(void) | |
int SecCamera::setSharpness(int sharpness_value) | |
{ | |
- LOGV("%s(sharpness_value(%d))", __func__, sharpness_value); | |
+ ALOGV("%s(sharpness_value(%d))", __func__, sharpness_value); | |
if (sharpness_value < SHARPNESS_MINUS_2 || SHARPNESS_MAX <= sharpness_value) { | |
- LOGE("ERR(%s):Invalid sharpness_value (%d)", __func__, sharpness_value); | |
+ ALOGE("ERR(%s):Invalid sharpness_value (%d)", __func__, sharpness_value); | |
return -1; | |
} | |
@@ -2008,7 +1988,7 @@ int SecCamera::setSharpness(int sharpness_value) | |
m_params->sharpness = sharpness_value; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_SHARPNESS, sharpness_value) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SHARPNESS", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SHARPNESS", __func__); | |
return -1; | |
} | |
} | |
@@ -2026,10 +2006,10 @@ int SecCamera::getSharpness(void) | |
int SecCamera::setWDR(int wdr_value) | |
{ | |
- LOGV("%s(wdr_value(%d))", __func__, wdr_value); | |
+ ALOGV("%s(wdr_value(%d))", __func__, wdr_value); | |
if (wdr_value < WDR_OFF || WDR_MAX <= wdr_value) { | |
- LOGE("ERR(%s):Invalid wdr_value (%d)", __func__, wdr_value); | |
+ ALOGE("ERR(%s):Invalid wdr_value (%d)", __func__, wdr_value); | |
return -1; | |
} | |
@@ -2037,7 +2017,7 @@ int SecCamera::setWDR(int wdr_value) | |
m_wdr = wdr_value; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_WDR, wdr_value) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_WDR", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_WDR", __func__); | |
return -1; | |
} | |
} | |
@@ -2055,10 +2035,10 @@ int SecCamera::getWDR(void) | |
int SecCamera::setAntiShake(int anti_shake) | |
{ | |
- LOGV("%s(anti_shake(%d))", __func__, anti_shake); | |
+ ALOGV("%s(anti_shake(%d))", __func__, anti_shake); | |
if (anti_shake < ANTI_SHAKE_OFF || ANTI_SHAKE_MAX <= anti_shake) { | |
- LOGE("ERR(%s):Invalid anti_shake (%d)", __func__, anti_shake); | |
+ ALOGE("ERR(%s):Invalid anti_shake (%d)", __func__, anti_shake); | |
return -1; | |
} | |
@@ -2066,7 +2046,7 @@ int SecCamera::setAntiShake(int anti_shake) | |
m_anti_shake = anti_shake; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_ANTI_SHAKE, anti_shake) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_ANTI_SHAKE", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_ANTI_SHAKE", __func__); | |
return -1; | |
} | |
} | |
@@ -2085,10 +2065,10 @@ int SecCamera::getAntiShake(void) | |
int SecCamera::setMetering(int metering_value) | |
{ | |
- LOGV("%s(metering (%d))", __func__, metering_value); | |
+ ALOGV("%s(metering (%d))", __func__, metering_value); | |
if (metering_value <= METERING_BASE || METERING_MAX <= metering_value) { | |
- LOGE("ERR(%s):Invalid metering_value (%d)", __func__, metering_value); | |
+ ALOGE("ERR(%s):Invalid metering_value (%d)", __func__, metering_value); | |
return -1; | |
} | |
@@ -2096,7 +2076,7 @@ int SecCamera::setMetering(int metering_value) | |
m_params->metering = metering_value; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_METERING, metering_value) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_METERING", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_METERING", __func__); | |
return -1; | |
} | |
} | |
@@ -2114,10 +2094,10 @@ int SecCamera::getMetering(void) | |
int SecCamera::setJpegQuality(int jpeg_quality) | |
{ | |
- LOGV("%s(jpeg_quality (%d))", __func__, jpeg_quality); | |
+ ALOGV("%s(jpeg_quality (%d))", __func__, jpeg_quality); | |
if (jpeg_quality < JPEG_QUALITY_ECONOMY || JPEG_QUALITY_MAX <= jpeg_quality) { | |
- LOGE("ERR(%s):Invalid jpeg_quality (%d)", __func__, jpeg_quality); | |
+ ALOGE("ERR(%s):Invalid jpeg_quality (%d)", __func__, jpeg_quality); | |
return -1; | |
} | |
@@ -2125,7 +2105,7 @@ int SecCamera::setJpegQuality(int jpeg_quality) | |
m_jpeg_quality = jpeg_quality; | |
if (m_flag_camera_start && (m_camera_id == CAMERA_ID_BACK)) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAM_JPEG_QUALITY, jpeg_quality) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAM_JPEG_QUALITY", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAM_JPEG_QUALITY", __func__); | |
return -1; | |
} | |
} | |
@@ -2143,10 +2123,10 @@ int SecCamera::getJpegQuality(void) | |
int SecCamera::setZoom(int zoom_level) | |
{ | |
- LOGV("%s(zoom_level (%d))", __func__, zoom_level); | |
+ ALOGV("%s(zoom_level (%d))", __func__, zoom_level); | |
if (zoom_level < ZOOM_LEVEL_0 || ZOOM_LEVEL_MAX <= zoom_level) { | |
- LOGE("ERR(%s):Invalid zoom_level (%d)", __func__, zoom_level); | |
+ ALOGE("ERR(%s):Invalid zoom_level (%d)", __func__, zoom_level); | |
return -1; | |
} | |
@@ -2154,7 +2134,7 @@ int SecCamera::setZoom(int zoom_level) | |
m_zoom_level = zoom_level; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_ZOOM, zoom_level) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_ZOOM", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_ZOOM", __func__); | |
return -1; | |
} | |
} | |
@@ -2172,10 +2152,10 @@ int SecCamera::getZoom(void) | |
int SecCamera::setObjectTracking(int object_tracking) | |
{ | |
- LOGV("%s(object_tracking (%d))", __func__, object_tracking); | |
+ ALOGV("%s(object_tracking (%d))", __func__, object_tracking); | |
if (object_tracking < OBJECT_TRACKING_OFF || OBJECT_TRACKING_MAX <= object_tracking) { | |
- LOGE("ERR(%s):Invalid object_tracking (%d)", __func__, object_tracking); | |
+ ALOGE("ERR(%s):Invalid object_tracking (%d)", __func__, object_tracking); | |
return -1; | |
} | |
@@ -2200,12 +2180,12 @@ int SecCamera::getObjectTrackingStatus(void) | |
int SecCamera::setObjectTrackingStartStop(int start_stop) | |
{ | |
- LOGV("%s(object_tracking_start_stop (%d))", __func__, start_stop); | |
+ ALOGV("%s(object_tracking_start_stop (%d))", __func__, start_stop); | |
if (m_object_tracking_start_stop != start_stop) { | |
m_object_tracking_start_stop = start_stop; | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_OBJ_TRACKING_START_STOP, start_stop) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_OBJ_TRACKING_START_STOP", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_OBJ_TRACKING_START_STOP", __func__); | |
return -1; | |
} | |
} | |
@@ -2215,12 +2195,12 @@ int SecCamera::setObjectTrackingStartStop(int start_stop) | |
int SecCamera::setTouchAFStartStop(int start_stop) | |
{ | |
- LOGV("%s(touch_af_start_stop (%d))", __func__, start_stop); | |
+ ALOGV("%s(touch_af_start_stop (%d))", __func__, start_stop); | |
if (m_touch_af_start_stop != start_stop) { | |
m_touch_af_start_stop = start_stop; | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_TOUCH_AF_START_STOP, start_stop) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_TOUCH_AF_START_STOP", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_TOUCH_AF_START_STOP", __func__); | |
return -1; | |
} | |
} | |
@@ -2232,10 +2212,10 @@ int SecCamera::setTouchAFStartStop(int start_stop) | |
int SecCamera::setSmartAuto(int smart_auto) | |
{ | |
- LOGV("%s(smart_auto (%d))", __func__, smart_auto); | |
+ ALOGV("%s(smart_auto (%d))", __func__, smart_auto); | |
if (smart_auto < SMART_AUTO_OFF || SMART_AUTO_MAX <= smart_auto) { | |
- LOGE("ERR(%s):Invalid smart_auto (%d)", __func__, smart_auto); | |
+ ALOGE("ERR(%s):Invalid smart_auto (%d)", __func__, smart_auto); | |
return -1; | |
} | |
@@ -2243,7 +2223,7 @@ int SecCamera::setSmartAuto(int smart_auto) | |
m_smart_auto = smart_auto; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_SMART_AUTO, smart_auto) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SMART_AUTO", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SMART_AUTO", __func__); | |
return -1; | |
} | |
} | |
@@ -2265,21 +2245,21 @@ int SecCamera::getAutosceneStatus(void) | |
autoscene_status = fimc_v4l2_g_ctrl(m_cam_fd, V4L2_CID_CAMERA_SMART_AUTO_STATUS); | |
if ((autoscene_status < SMART_AUTO_STATUS_AUTO) || (autoscene_status > SMART_AUTO_STATUS_MAX)) { | |
- LOGE("ERR(%s):Invalid getAutosceneStatus (%d)", __func__, autoscene_status); | |
+ ALOGE("ERR(%s):Invalid getAutosceneStatus (%d)", __func__, autoscene_status); | |
return -1; | |
} | |
} | |
- //LOGV("%s : autoscene_status (%d)", __func__, autoscene_status); | |
+ //ALOGV("%s : autoscene_status (%d)", __func__, autoscene_status); | |
return autoscene_status; | |
} | |
//====================================================================== | |
int SecCamera::setBeautyShot(int beauty_shot) | |
{ | |
- LOGV("%s(beauty_shot (%d))", __func__, beauty_shot); | |
+ ALOGV("%s(beauty_shot (%d))", __func__, beauty_shot); | |
if (beauty_shot < BEAUTY_SHOT_OFF || BEAUTY_SHOT_MAX <= beauty_shot) { | |
- LOGE("ERR(%s):Invalid beauty_shot (%d)", __func__, beauty_shot); | |
+ ALOGE("ERR(%s):Invalid beauty_shot (%d)", __func__, beauty_shot); | |
return -1; | |
} | |
@@ -2287,7 +2267,7 @@ int SecCamera::setBeautyShot(int beauty_shot) | |
m_beauty_shot = beauty_shot; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_BEAUTY_SHOT, beauty_shot) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_BEAUTY_SHOT", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_BEAUTY_SHOT", __func__); | |
return -1; | |
} | |
} | |
@@ -2307,10 +2287,10 @@ int SecCamera::getBeautyShot(void) | |
int SecCamera::setVintageMode(int vintage_mode) | |
{ | |
- LOGV("%s(vintage_mode(%d))", __func__, vintage_mode); | |
+ ALOGV("%s(vintage_mode(%d))", __func__, vintage_mode); | |
if (vintage_mode <= VINTAGE_MODE_BASE || VINTAGE_MODE_MAX <= vintage_mode) { | |
- LOGE("ERR(%s):Invalid vintage_mode (%d)", __func__, vintage_mode); | |
+ ALOGE("ERR(%s):Invalid vintage_mode (%d)", __func__, vintage_mode); | |
return -1; | |
} | |
@@ -2318,7 +2298,7 @@ int SecCamera::setVintageMode(int vintage_mode) | |
m_vintage_mode = vintage_mode; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_VINTAGE_MODE, vintage_mode) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_VINTAGE_MODE", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_VINTAGE_MODE", __func__); | |
return -1; | |
} | |
} | |
@@ -2336,10 +2316,10 @@ int SecCamera::getVintageMode(void) | |
int SecCamera::setFocusMode(int focus_mode) | |
{ | |
- LOGV("%s(focus_mode(%d))", __func__, focus_mode); | |
+ ALOGV("%s(focus_mode(%d))", __func__, focus_mode); | |
if (FOCUS_MODE_MAX <= focus_mode) { | |
- LOGE("ERR(%s):Invalid focus_mode (%d)", __func__, focus_mode); | |
+ ALOGE("ERR(%s):Invalid focus_mode (%d)", __func__, focus_mode); | |
return -1; | |
} | |
@@ -2348,7 +2328,7 @@ int SecCamera::setFocusMode(int focus_mode) | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_FOCUS_MODE, focus_mode) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FOCUS_MODE", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FOCUS_MODE", __func__); | |
return -1; | |
} | |
} | |
@@ -2366,19 +2346,19 @@ int SecCamera::getFocusMode(void) | |
int SecCamera::setFaceDetect(int face_detect) | |
{ | |
- LOGV("%s(face_detect(%d))", __func__, face_detect); | |
+ ALOGV("%s(face_detect(%d))", __func__, face_detect); | |
if (m_face_detect != face_detect) { | |
m_face_detect = face_detect; | |
if (m_flag_camera_start) { | |
if (m_face_detect != FACE_DETECTION_OFF) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_FOCUS_MODE, FOCUS_MODE_AUTO) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FOCUS_MODin face detecion", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FOCUS_MODin face detecion", __func__); | |
return -1; | |
} | |
} | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_FACE_DETECTION, face_detect) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FACE_DETECTION", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FACE_DETECTION", __func__); | |
return -1; | |
} | |
} | |
@@ -2396,7 +2376,7 @@ int SecCamera::getFaceDetect(void) | |
int SecCamera::setGPSLatitude(const char *gps_latitude) | |
{ | |
- LOGV("%s(gps_latitude(%s))", __func__, gps_latitude); | |
+ ALOGV("%s(gps_latitude(%s))", __func__, gps_latitude); | |
if (gps_latitude == NULL) | |
m_gps_enabled = false; | |
else { | |
@@ -2404,13 +2384,13 @@ int SecCamera::setGPSLatitude(const char *gps_latitude) | |
m_gps_latitude = lround(strtod(gps_latitude, NULL) * 10000000); | |
} | |
- LOGV("%s(m_gps_latitude(%ld))", __func__, m_gps_latitude); | |
+ ALOGV("%s(m_gps_latitude(%ld))", __func__, m_gps_latitude); | |
return 0; | |
} | |
int SecCamera::setGPSLongitude(const char *gps_longitude) | |
{ | |
- LOGV("%s(gps_longitude(%s))", __func__, gps_longitude); | |
+ ALOGV("%s(gps_longitude(%s))", __func__, gps_longitude); | |
if (gps_longitude == NULL) | |
m_gps_enabled = false; | |
else { | |
@@ -2418,38 +2398,38 @@ int SecCamera::setGPSLongitude(const char *gps_longitude) | |
m_gps_longitude = lround(strtod(gps_longitude, NULL) * 10000000); | |
} | |
- LOGV("%s(m_gps_longitude(%ld))", __func__, m_gps_longitude); | |
+ ALOGV("%s(m_gps_longitude(%ld))", __func__, m_gps_longitude); | |
return 0; | |
} | |
int SecCamera::setGPSAltitude(const char *gps_altitude) | |
{ | |
- LOGV("%s(gps_altitude(%s))", __func__, gps_altitude); | |
+ ALOGV("%s(gps_altitude(%s))", __func__, gps_altitude); | |
if (gps_altitude == NULL) | |
m_gps_altitude = 0; | |
else { | |
m_gps_altitude = lround(strtod(gps_altitude, NULL) * 100); | |
} | |
- LOGV("%s(m_gps_altitude(%ld))", __func__, m_gps_altitude); | |
+ ALOGV("%s(m_gps_altitude(%ld))", __func__, m_gps_altitude); | |
return 0; | |
} | |
int SecCamera::setGPSTimeStamp(const char *gps_timestamp) | |
{ | |
- LOGV("%s(gps_timestamp(%s))", __func__, gps_timestamp); | |
+ ALOGV("%s(gps_timestamp(%s))", __func__, gps_timestamp); | |
if (gps_timestamp == NULL) | |
m_gps_timestamp = 0; | |
else | |
m_gps_timestamp = atol(gps_timestamp); | |
- LOGV("%s(m_gps_timestamp(%ld))", __func__, m_gps_timestamp); | |
+ ALOGV("%s(m_gps_timestamp(%ld))", __func__, m_gps_timestamp); | |
return 0; | |
} | |
int SecCamera::setGPSProcessingMethod(const char *gps_processing_method) | |
{ | |
- LOGV("%s(gps_processing_method(%s))", __func__, gps_processing_method); | |
+ ALOGV("%s(gps_processing_method(%s))", __func__, gps_processing_method); | |
memset(mExifInfo.gps_processing_method, 0, sizeof(mExifInfo.gps_processing_method)); | |
if (gps_processing_method != NULL) { | |
size_t len = strlen(gps_processing_method); | |
@@ -2463,10 +2443,10 @@ int SecCamera::setGPSProcessingMethod(const char *gps_processing_method) | |
int SecCamera::setFaceDetectLockUnlock(int facedetect_lockunlock) | |
{ | |
- LOGV("%s(facedetect_lockunlock(%d))", __func__, facedetect_lockunlock); | |
+ ALOGV("%s(facedetect_lockunlock(%d))", __func__, facedetect_lockunlock); | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_FACEDETECT_LOCKUNLOCK, facedetect_lockunlock) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FACEDETECT_LOCKUNLOCK", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_FACEDETECT_LOCKUNLOCK", __func__); | |
return -1; | |
} | |
@@ -2475,18 +2455,18 @@ int SecCamera::setFaceDetectLockUnlock(int facedetect_lockunlock) | |
int SecCamera::setObjectPosition(int x, int y) | |
{ | |
- LOGV("%s(setObjectPosition(x=%d, y=%d))", __func__, x, y); | |
+ ALOGV("%s(setObjectPosition(x=%d, y=%d))", __func__, x, y); | |
if (m_preview_width ==640) | |
x = x - 80; | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_OBJECT_POSITION_X, x) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_OBJECT_POSITION_X", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_OBJECT_POSITION_X", __func__); | |
return -1; | |
} | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_OBJECT_POSITION_Y, y) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_OBJECT_POSITION_Y", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_OBJECT_POSITION_Y", __func__); | |
return -1; | |
} | |
@@ -2497,10 +2477,10 @@ int SecCamera::setObjectPosition(int x, int y) | |
int SecCamera::setGamma(int gamma) | |
{ | |
- LOGV("%s(gamma(%d))", __func__, gamma); | |
+ ALOGV("%s(gamma(%d))", __func__, gamma); | |
if (gamma < GAMMA_OFF || GAMMA_MAX <= gamma) { | |
- LOGE("ERR(%s):Invalid gamma (%d)", __func__, gamma); | |
+ ALOGE("ERR(%s):Invalid gamma (%d)", __func__, gamma); | |
return -1; | |
} | |
@@ -2508,7 +2488,7 @@ int SecCamera::setGamma(int gamma) | |
m_video_gamma = gamma; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_SET_GAMMA, gamma) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_GAMMA", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_GAMMA", __func__); | |
return -1; | |
} | |
} | |
@@ -2521,10 +2501,10 @@ int SecCamera::setGamma(int gamma) | |
int SecCamera::setSlowAE(int slow_ae) | |
{ | |
- LOGV("%s(slow_ae(%d))", __func__, slow_ae); | |
+ ALOGV("%s(slow_ae(%d))", __func__, slow_ae); | |
if (slow_ae < GAMMA_OFF || GAMMA_MAX <= slow_ae) { | |
- LOGE("ERR(%s):Invalid slow_ae (%d)", __func__, slow_ae); | |
+ ALOGE("ERR(%s):Invalid slow_ae (%d)", __func__, slow_ae); | |
return -1; | |
} | |
@@ -2532,7 +2512,7 @@ int SecCamera::setSlowAE(int slow_ae) | |
m_slow_ae = slow_ae; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_SET_SLOW_AE, slow_ae) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_SLOW_AE", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_SET_SLOW_AE", __func__); | |
return -1; | |
} | |
} | |
@@ -2544,7 +2524,7 @@ int SecCamera::setSlowAE(int slow_ae) | |
//====================================================================== | |
int SecCamera::setRecordingSize(int width, int height) | |
{ | |
- LOGV("%s(width(%d), height(%d))", __func__, width, height); | |
+ ALOGV("%s(width(%d), height(%d))", __func__, width, height); | |
m_recording_width = width; | |
m_recording_height = height; | |
@@ -2556,10 +2536,10 @@ int SecCamera::setRecordingSize(int width, int height) | |
int SecCamera::setExifOrientationInfo(int orientationInfo) | |
{ | |
- LOGV("%s(orientationInfo(%d))", __func__, orientationInfo); | |
+ ALOGV("%s(orientationInfo(%d))", __func__, orientationInfo); | |
if (orientationInfo < 0) { | |
- LOGE("ERR(%s):Invalid orientationInfo (%d)", __func__, orientationInfo); | |
+ ALOGE("ERR(%s):Invalid orientationInfo (%d)", __func__, orientationInfo); | |
return -1; | |
} | |
m_exif_orientation = orientationInfo; | |
@@ -2572,7 +2552,7 @@ int SecCamera::setBatchReflection() | |
{ | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_BATCH_REFLECTION, 1) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_BATCH_REFLECTION", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_BATCH_REFLECTION", __func__); | |
return -1; | |
} | |
} | |
@@ -2583,10 +2563,10 @@ int SecCamera::setBatchReflection() | |
/*Video call*/ | |
int SecCamera::setVTmode(int vtmode) | |
{ | |
- LOGV("%s(vtmode (%d))", __func__, vtmode); | |
+ ALOGV("%s(vtmode (%d))", __func__, vtmode); | |
if (vtmode < VT_MODE_OFF || VT_MODE_MAX <= vtmode) { | |
- LOGE("ERR(%s):Invalid vtmode (%d)", __func__, vtmode); | |
+ ALOGE("ERR(%s):Invalid vtmode (%d)", __func__, vtmode); | |
return -1; | |
} | |
@@ -2600,10 +2580,10 @@ int SecCamera::setVTmode(int vtmode) | |
/* Camcorder fix fps */ | |
int SecCamera::setSensorMode(int sensor_mode) | |
{ | |
- LOGV("%s(sensor_mode (%d))", __func__, sensor_mode); | |
+ ALOGV("%s(sensor_mode (%d))", __func__, sensor_mode); | |
if (sensor_mode < SENSOR_MODE_CAMERA || SENSOR_MODE_MOVIE < sensor_mode) { | |
- LOGE("ERR(%s):Invalid sensor mode (%d)", __func__, sensor_mode); | |
+ ALOGE("ERR(%s):Invalid sensor mode (%d)", __func__, sensor_mode); | |
return -1; | |
} | |
@@ -2623,9 +2603,9 @@ int SecCamera::setSensorMode(int sensor_mode) | |
*/ | |
int SecCamera::setShotMode(int shot_mode) | |
{ | |
- LOGV("%s(shot_mode (%d))", __func__, shot_mode); | |
+ ALOGV("%s(shot_mode (%d))", __func__, shot_mode); | |
if (shot_mode < SHOT_MODE_SINGLE || SHOT_MODE_SELF < shot_mode) { | |
- LOGE("ERR(%s):Invalid shot_mode (%d)", __func__, shot_mode); | |
+ ALOGE("ERR(%s):Invalid shot_mode (%d)", __func__, shot_mode); | |
return -1; | |
} | |
m_shot_mode = shot_mode; | |
@@ -2640,10 +2620,10 @@ int SecCamera::getVTmode(void) | |
int SecCamera::setBlur(int blur_level) | |
{ | |
- LOGV("%s(level (%d))", __func__, blur_level); | |
+ ALOGV("%s(level (%d))", __func__, blur_level); | |
if (blur_level < BLUR_LEVEL_0 || BLUR_LEVEL_MAX <= blur_level) { | |
- LOGE("ERR(%s):Invalid level (%d)", __func__, blur_level); | |
+ ALOGE("ERR(%s):Invalid level (%d)", __func__, blur_level); | |
return -1; | |
} | |
@@ -2651,7 +2631,7 @@ int SecCamera::setBlur(int blur_level) | |
m_blur_level = blur_level; | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_VGA_BLUR, blur_level) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_VGA_BLUR", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_VGA_BLUR", __func__); | |
return -1; | |
} | |
} | |
@@ -2666,10 +2646,10 @@ int SecCamera::getBlur(void) | |
int SecCamera::setDataLineCheck(int chk_dataline) | |
{ | |
- LOGV("%s(chk_dataline (%d))", __func__, chk_dataline); | |
+ ALOGV("%s(chk_dataline (%d))", __func__, chk_dataline); | |
if (chk_dataline < CHK_DATALINE_OFF || CHK_DATALINE_MAX <= chk_dataline) { | |
- LOGE("ERR(%s):Invalid chk_dataline (%d)", __func__, chk_dataline); | |
+ ALOGE("ERR(%s):Invalid chk_dataline (%d)", __func__, chk_dataline); | |
return -1; | |
} | |
@@ -2685,11 +2665,11 @@ int SecCamera::getDataLineCheck(void) | |
int SecCamera::setDataLineCheckStop(void) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
if (m_flag_camera_start) { | |
if (fimc_v4l2_s_ctrl(m_cam_fd, V4L2_CID_CAMERA_CHECK_DATALINE_STOP, 1) < 0) { | |
- LOGE("ERR(%s):Fail on V4L2_CID_CAMERA_CHECK_DATALINE_STOP", __func__); | |
+ ALOGE("ERR(%s):Fail on V4L2_CID_CAMERA_CHECK_DATALINE_STOP", __func__); | |
return -1; | |
} | |
} | |
@@ -2698,7 +2678,7 @@ int SecCamera::setDataLineCheckStop(void) | |
const __u8* SecCamera::getCameraSensorName(void) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return fimc_v4l2_enuminput(m_cam_fd, getCameraId()); | |
} | |
@@ -2706,7 +2686,7 @@ const __u8* SecCamera::getCameraSensorName(void) | |
#ifdef ENABLE_ESD_PREVIEW_CHECK | |
int SecCamera::getCameraSensorESDStatus(void) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
// 0 : normal operation, 1 : abnormal operation | |
int status = fimc_v4l2_g_ctrl(m_cam_fd, V4L2_CID_ESD_INT); | |
@@ -2720,7 +2700,7 @@ int SecCamera::getCameraSensorESDStatus(void) | |
int SecCamera::setJpegThumbnailSize(int width, int height) | |
{ | |
- LOGV("%s(width(%d), height(%d))", __func__, width, height); | |
+ ALOGV("%s(width(%d), height(%d))", __func__, width, height); | |
m_jpeg_thumbnail_width = width; | |
m_jpeg_thumbnail_height = height; | |
@@ -2844,7 +2824,7 @@ void SecCamera::setExifChangedAttribute() | |
it current returns a negative err value, so avoid putting | |
odd value into exif for now */ | |
if (shutterSpeed < 0) { | |
- LOGE("%s: error %d getting shutterSpeed, camera_id = %d, using 100", | |
+ ALOGE("%s: error %d getting shutterSpeed, camera_id = %d, using 100", | |
__func__, shutterSpeed, m_camera_id); | |
shutterSpeed = 100; | |
} | |
@@ -2858,7 +2838,7 @@ void SecCamera::setExifChangedAttribute() | |
it current returns a negative err value, so avoid putting | |
odd value into exif for now */ | |
if (iso < 0) { | |
- LOGE("%s: error %d getting iso, camera_id = %d, using 100", | |
+ ALOGE("%s: error %d getting iso, camera_id = %d, using 100", | |
__func__, iso, m_camera_id); | |
iso = ISO_100; | |
} | |
@@ -2892,8 +2872,8 @@ void SecCamera::setExifChangedAttribute() | |
sv = APEX_ISO_TO_FILMSENSITIVITY(mExifInfo.iso_speed_rating); | |
bv = av + tv - sv; | |
ev = av + tv; | |
- LOGD("Shutter speed=%d us, iso=%d\n", shutterSpeed, mExifInfo.iso_speed_rating); | |
- LOGD("AV=%d, TV=%d, SV=%d\n", av, tv, sv); | |
+ ALOGD("Shutter speed=%d us, iso=%d\n", shutterSpeed, mExifInfo.iso_speed_rating); | |
+ ALOGD("AV=%d, TV=%d, SV=%d\n", av, tv, sv); | |
//3 Shutter Speed | |
mExifInfo.shutter_speed.num = tv*EXIF_DEF_APEX_DEN; | |
@@ -3034,7 +3014,7 @@ inline int SecCamera::m_frameSize(int format, int width, int height) | |
break; | |
default : | |
- LOGE("ERR(%s):Invalid V4L2 pixel format(%d)\n", __func__, format); | |
+ ALOGE("ERR(%s):Invalid V4L2 pixel format(%d)\n", __func__, format); | |
case V4L2_PIX_FMT_RGB565: | |
size = (width * height * BPP); | |
break; | |
diff --git a/libcamera/SecCamera.h b/libcamera/SecCamera.h | |
index ec0e470..a6cca4e 100755 | |
--- a/libcamera/SecCamera.h | |
+++ b/libcamera/SecCamera.h | |
@@ -46,8 +46,8 @@ namespace android { | |
#define ENABLE_ESD_PREVIEW_CHECK | |
#if defined(LOG_NDEBUG) && LOG_NDEBUG == 0 | |
-#define LOG_CAMERA LOGD | |
-#define LOG_CAMERA_PREVIEW LOGD | |
+#define LOG_CAMERA ALOGD | |
+#define LOG_CAMERA_PREVIEW ALOGD | |
#define LOG_TIME_DEFINE(n) \ | |
struct timeval time_start_##n, time_stop_##n; unsigned long log_time_##n = 0; | |
diff --git a/libcamera/SecCameraHWInterface.cpp b/libcamera/SecCameraHWInterface.cpp | |
index ca82669..ab60bd2 100755 | |
--- a/libcamera/SecCameraHWInterface.cpp | |
+++ b/libcamera/SecCameraHWInterface.cpp | |
@@ -25,7 +25,7 @@ | |
#include <fcntl.h> | |
#include <sys/mman.h> | |
#include <camera/Camera.h> | |
-#include <media/stagefright/MetadataBufferType.h> | |
+#include <MetadataBufferType.h> | |
#define VIDEO_COMMENT_MARKER_H 0xFFBE | |
#define VIDEO_COMMENT_MARKER_L 0xFFBF | |
@@ -90,7 +90,7 @@ CameraHardwareSec::CameraHardwareSec(int cameraId, camera_device_t *dev) | |
mPostViewSize(0), | |
mHalDevice(dev) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
int ret = 0; | |
mPreviewWindow = NULL; | |
@@ -103,16 +103,16 @@ CameraHardwareSec::CameraHardwareSec(int cameraId, camera_device_t *dev) | |
if (!mGrallocHal) { | |
ret = hw_get_module(GRALLOC_HARDWARE_MODULE_ID, (const hw_module_t **)&mGrallocHal); | |
if (ret) | |
- LOGE("ERR(%s):Fail on loading gralloc HAL", __func__); | |
+ ALOGE("ERR(%s):Fail on loading gralloc HAL", __func__); | |
} | |
ret = mSecCamera->initCamera(cameraId); | |
if (ret < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera init", __func__); | |
+ ALOGE("ERR(%s):Fail on mSecCamera init", __func__); | |
} | |
mSecCamera->getPostViewConfig(&mPostViewWidth, &mPostViewHeight, &mPostViewSize); | |
- LOGV("mPostViewWidth = %d mPostViewHeight = %d mPostViewSize = %d", | |
+ ALOGV("mPostViewWidth = %d mPostViewHeight = %d mPostViewSize = %d", | |
mPostViewWidth,mPostViewHeight,mPostViewSize); | |
initDefaultParameters(cameraId); | |
@@ -137,7 +137,7 @@ int CameraHardwareSec::getCameraId() const | |
void CameraHardwareSec::initDefaultParameters(int cameraId) | |
{ | |
if (mSecCamera == NULL) { | |
- LOGE("ERR(%s):mSecCamera object is NULL", __func__); | |
+ ALOGE("ERR(%s):mSecCamera object is NULL", __func__); | |
return; | |
} | |
@@ -145,7 +145,7 @@ void CameraHardwareSec::initDefaultParameters(int cameraId) | |
CameraParameters ip; | |
mCameraSensorName = mSecCamera->getCameraSensorName(); | |
- LOGV("CameraSensorName: %s", mCameraSensorName); | |
+ ALOGV("CameraSensorName: %s", mCameraSensorName); | |
int preview_max_width = 0; | |
int preview_max_height = 0; | |
@@ -170,11 +170,11 @@ void CameraHardwareSec::initDefaultParameters(int cameraId) | |
// sizes at zero to catch the error. | |
if (mSecCamera->getPreviewMaxSize(&preview_max_width, | |
&preview_max_height) < 0) | |
- LOGE("getPreviewMaxSize fail (%d / %d) \n", | |
+ ALOGE("getPreviewMaxSize fail (%d / %d) \n", | |
preview_max_width, preview_max_height); | |
if (mSecCamera->getSnapshotMaxSize(&snapshot_max_width, | |
&snapshot_max_height) < 0) | |
- LOGE("getSnapshotMaxSize fail (%d / %d) \n", | |
+ ALOGE("getSnapshotMaxSize fail (%d / %d) \n", | |
snapshot_max_width, snapshot_max_height); | |
String8 previewColorString; | |
previewColorString = CameraParameters::PIXEL_FORMAT_YUV420SP; | |
@@ -357,7 +357,7 @@ void CameraHardwareSec::initDefaultParameters(int cameraId) | |
CameraHardwareSec::~CameraHardwareSec() | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
mSecCamera->DeinitCamera(); | |
} | |
@@ -366,33 +366,33 @@ status_t CameraHardwareSec::setPreviewWindow(preview_stream_ops *w) | |
int min_bufs; | |
mPreviewWindow = w; | |
- LOGV("%s: mPreviewWindow %p", __func__, mPreviewWindow); | |
+ ALOGV("%s: mPreviewWindow %p", __func__, mPreviewWindow); | |
if (!w) { | |
- LOGE("preview window is NULL!"); | |
+ ALOGE("preview window is NULL!"); | |
return OK; | |
} | |
mPreviewLock.lock(); | |
if (mPreviewRunning && !mPreviewStartDeferred) { | |
- LOGI("stop preview (window change)"); | |
+ ALOGI("stop preview (window change)"); | |
stopPreviewInternal(); | |
} | |
if (w->get_min_undequeued_buffer_count(w, &min_bufs)) { | |
- LOGE("%s: could not retrieve min undequeued buffer count", __func__); | |
+ ALOGE("%s: could not retrieve min undequeued buffer count", __func__); | |
return INVALID_OPERATION; | |
} | |
if (min_bufs >= kBufferCount) { | |
- LOGE("%s: min undequeued buffer count %d is too high (expecting at most %d)", __func__, | |
+ ALOGE("%s: min undequeued buffer count %d is too high (expecting at most %d)", __func__, | |
min_bufs, kBufferCount - 1); | |
} | |
- LOGV("%s: setting buffer count to %d", __func__, kBufferCount); | |
+ ALOGV("%s: setting buffer count to %d", __func__, kBufferCount); | |
if (w->set_buffer_count(w, kBufferCount)) { | |
- LOGE("%s: could not set buffer count", __func__); | |
+ ALOGE("%s: could not set buffer count", __func__); | |
return INVALID_OPERATION; | |
} | |
@@ -402,23 +402,23 @@ status_t CameraHardwareSec::setPreviewWindow(preview_stream_ops *w) | |
int hal_pixel_format = HAL_PIXEL_FORMAT_YV12; | |
const char *str_preview_format = mParameters.getPreviewFormat(); | |
- LOGV("%s: preview format %s", __func__, str_preview_format); | |
+ ALOGV("%s: preview format %s", __func__, str_preview_format); | |
if (w->set_usage(w, GRALLOC_USAGE_SW_WRITE_OFTEN)) { | |
- LOGE("%s: could not set usage on gralloc buffer", __func__); | |
+ ALOGE("%s: could not set usage on gralloc buffer", __func__); | |
return INVALID_OPERATION; | |
} | |
if (w->set_buffers_geometry(w, | |
preview_width, preview_height, | |
hal_pixel_format)) { | |
- LOGE("%s: could not set buffers geometry to %s", | |
+ ALOGE("%s: could not set buffers geometry to %s", | |
__func__, str_preview_format); | |
return INVALID_OPERATION; | |
} | |
if (mPreviewRunning && mPreviewStartDeferred) { | |
- LOGV("start/resume preview"); | |
+ ALOGV("start/resume preview"); | |
status_t ret = startPreviewInternal(); | |
if (ret == OK) { | |
mPreviewStartDeferred = false; | |
@@ -445,19 +445,19 @@ void CameraHardwareSec::setCallbacks(camera_notify_callback notify_cb, | |
void CameraHardwareSec::enableMsgType(int32_t msgType) | |
{ | |
- LOGV("%s : msgType = 0x%x, mMsgEnabled before = 0x%x", | |
+ ALOGV("%s : msgType = 0x%x, mMsgEnabled before = 0x%x", | |
__func__, msgType, mMsgEnabled); | |
mMsgEnabled |= msgType; | |
- LOGV("%s : mMsgEnabled = 0x%x", __func__, mMsgEnabled); | |
+ ALOGV("%s : mMsgEnabled = 0x%x", __func__, mMsgEnabled); | |
} | |
void CameraHardwareSec::disableMsgType(int32_t msgType) | |
{ | |
- LOGV("%s : msgType = 0x%x, mMsgEnabled before = 0x%x", | |
+ ALOGV("%s : msgType = 0x%x, mMsgEnabled before = 0x%x", | |
__func__, msgType, mMsgEnabled); | |
mMsgEnabled &= ~msgType; | |
- LOGV("%s : mMsgEnabled = 0x%x", __func__, mMsgEnabled); | |
+ ALOGV("%s : mMsgEnabled = 0x%x", __func__, mMsgEnabled); | |
} | |
bool CameraHardwareSec::msgTypeEnabled(int32_t msgType) | |
@@ -477,21 +477,21 @@ void CameraHardwareSec::setSkipFrame(int frame) | |
int CameraHardwareSec::previewThreadWrapper() | |
{ | |
- LOGI("%s: starting", __func__); | |
+ ALOGI("%s: starting", __func__); | |
while (1) { | |
mPreviewLock.lock(); | |
while (!mPreviewRunning) { | |
- LOGI("%s: calling mSecCamera->stopPreview() and waiting", __func__); | |
+ ALOGI("%s: calling mSecCamera->stopPreview() and waiting", __func__); | |
mSecCamera->stopPreview(); | |
/* signal that we're stopping */ | |
mPreviewStoppedCondition.signal(); | |
mPreviewCondition.wait(mPreviewLock); | |
- LOGI("%s: return from wait", __func__); | |
+ ALOGI("%s: return from wait", __func__); | |
} | |
mPreviewLock.unlock(); | |
if (mExitPreviewThread) { | |
- LOGI("%s: exiting", __func__); | |
+ ALOGI("%s: exiting", __func__); | |
mSecCamera->stopPreview(); | |
return 0; | |
} | |
@@ -509,17 +509,17 @@ int CameraHardwareSec::previewThread() | |
index = mSecCamera->getPreview(); | |
if (index < 0) { | |
- LOGE("ERR(%s):Fail on SecCamera->getPreview()", __func__); | |
+ ALOGE("ERR(%s):Fail on SecCamera->getPreview()", __func__); | |
return UNKNOWN_ERROR; | |
} | |
-// LOGV("%s: index %d", __func__, index); | |
+// ALOGV("%s: index %d", __func__, index); | |
mSkipFrameLock.lock(); | |
if (mSkipFrame > 0) { | |
mSkipFrame--; | |
mSkipFrameLock.unlock(); | |
- LOGV("%s: index %d skipping frame", __func__, index); | |
+ ALOGV("%s: index %d skipping frame", __func__, index); | |
return NO_ERROR; | |
} | |
mSkipFrameLock.unlock(); | |
@@ -530,7 +530,7 @@ int CameraHardwareSec::previewThread() | |
phyCAddr = mSecCamera->getPhyAddrC(index); | |
if (phyYAddr == 0xffffffff || phyCAddr == 0xffffffff) { | |
- LOGE("ERR(%s):Fail on SecCamera getPhyAddr Y addr = %0x C addr = %0x", | |
+ ALOGE("ERR(%s):Fail on SecCamera getPhyAddr Y addr = %0x C addr = %0x", | |
__func__, phyYAddr, phyCAddr); | |
return UNKNOWN_ERROR; | |
} | |
@@ -545,7 +545,7 @@ int CameraHardwareSec::previewThread() | |
buffer_handle_t *buf_handle; | |
int stride; | |
if (0 != mPreviewWindow->dequeue_buffer(mPreviewWindow, &buf_handle, &stride)) { | |
- LOGE("Could not dequeue gralloc buffer!\n"); | |
+ ALOGE("Could not dequeue gralloc buffer!\n"); | |
goto callbacks; | |
} | |
@@ -591,10 +591,10 @@ int CameraHardwareSec::previewThread() | |
mGrallocHal->unlock(mGrallocHal, *buf_handle); | |
} | |
else | |
- LOGE("%s: could not obtain gralloc buffer", __func__); | |
+ ALOGE("%s: could not obtain gralloc buffer", __func__); | |
if (0 != mPreviewWindow->enqueue_buffer(mPreviewWindow, buf_handle)) { | |
- LOGE("Could not enqueue gralloc buffer!\n"); | |
+ ALOGE("Could not enqueue gralloc buffer!\n"); | |
goto callbacks; | |
} | |
} | |
@@ -626,7 +626,7 @@ callbacks: | |
if (mRecordRunning == true) { | |
index = mSecCamera->getRecordFrame(); | |
if (index < 0) { | |
- LOGE("ERR(%s):Fail on SecCamera->getRecord()", __func__); | |
+ ALOGE("ERR(%s):Fail on SecCamera->getRecord()", __func__); | |
return UNKNOWN_ERROR; | |
} | |
@@ -634,7 +634,7 @@ callbacks: | |
phyCAddr = mSecCamera->getRecPhyAddrC(index); | |
if (phyYAddr == 0xffffffff || phyCAddr == 0xffffffff) { | |
- LOGE("ERR(%s):Fail on SecCamera getRectPhyAddr Y addr = %0x C addr = %0x", __func__, | |
+ ALOGE("ERR(%s):Fail on SecCamera getRectPhyAddr Y addr = %0x C addr = %0x", __func__, | |
phyYAddr, phyCAddr); | |
return UNKNOWN_ERROR; | |
} | |
@@ -662,7 +662,7 @@ status_t CameraHardwareSec::startPreview() | |
{ | |
int ret = 0; //s1 [Apply factory standard] | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
if (waitCaptureCompletion() != NO_ERROR) { | |
return TIMED_OUT; | |
@@ -671,7 +671,7 @@ status_t CameraHardwareSec::startPreview() | |
mPreviewLock.lock(); | |
if (mPreviewRunning) { | |
// already running | |
- LOGE("%s : preview thread already running", __func__); | |
+ ALOGE("%s : preview thread already running", __func__); | |
mPreviewLock.unlock(); | |
return INVALID_OPERATION; | |
} | |
@@ -680,7 +680,7 @@ status_t CameraHardwareSec::startPreview() | |
mPreviewStartDeferred = false; | |
if (!mPreviewWindow) { | |
- LOGI("%s : deferring", __func__); | |
+ ALOGI("%s : deferring", __func__); | |
mPreviewStartDeferred = true; | |
mPreviewLock.unlock(); | |
return NO_ERROR; | |
@@ -696,13 +696,13 @@ status_t CameraHardwareSec::startPreview() | |
status_t CameraHardwareSec::startPreviewInternal() | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
int ret = mSecCamera->startPreview(); | |
- LOGV("%s : mSecCamera->startPreview() returned %d", __func__, ret); | |
+ ALOGV("%s : mSecCamera->startPreview() returned %d", __func__, ret); | |
if (ret < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->startPreview()", __func__); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->startPreview()", __func__); | |
return UNKNOWN_ERROR; | |
} | |
@@ -712,7 +712,7 @@ status_t CameraHardwareSec::startPreviewInternal() | |
mSecCamera->getPreviewSize(&width, &height, &frame_size); | |
- LOGD("mPreviewHeap(fd(%d), size(%d), width(%d), height(%d))", | |
+ ALOGD("mPreviewHeap(fd(%d), size(%d), width(%d), height(%d))", | |
mSecCamera->getCameraFd(), frame_size, width, height); | |
if (mPreviewHeap) { | |
mPreviewHeap->release(mPreviewHeap); | |
@@ -725,7 +725,7 @@ status_t CameraHardwareSec::startPreviewInternal() | |
0); // no cookie | |
mSecCamera->getPostViewConfig(&mPostViewWidth, &mPostViewHeight, &mPostViewSize); | |
- LOGV("CameraHardwareSec: mPostViewWidth = %d mPostViewHeight = %d mPostViewSize = %d", | |
+ ALOGV("CameraHardwareSec: mPostViewWidth = %d mPostViewHeight = %d mPostViewSize = %d", | |
mPostViewWidth,mPostViewHeight,mPostViewSize); | |
return NO_ERROR; | |
@@ -733,7 +733,7 @@ status_t CameraHardwareSec::startPreviewInternal() | |
void CameraHardwareSec::stopPreviewInternal() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
/* request that the preview thread stop. */ | |
if (mPreviewRunning) { | |
@@ -744,14 +744,14 @@ void CameraHardwareSec::stopPreviewInternal() | |
mPreviewStoppedCondition.wait(mPreviewLock); | |
} | |
else | |
- LOGV("%s : preview running but deferred, doing nothing", __func__); | |
+ ALOGV("%s : preview running but deferred, doing nothing", __func__); | |
} else | |
- LOGI("%s : preview not running, doing nothing", __func__); | |
+ ALOGI("%s : preview not running, doing nothing", __func__); | |
} | |
void CameraHardwareSec::stopPreview() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
/* request that the preview thread stop. */ | |
mPreviewLock.lock(); | |
@@ -762,7 +762,7 @@ void CameraHardwareSec::stopPreview() | |
bool CameraHardwareSec::previewEnabled() | |
{ | |
Mutex::Autolock lock(mPreviewLock); | |
- LOGV("%s : %d", __func__, mPreviewRunning); | |
+ ALOGV("%s : %d", __func__, mPreviewRunning); | |
return mPreviewRunning; | |
} | |
@@ -770,7 +770,7 @@ bool CameraHardwareSec::previewEnabled() | |
status_t CameraHardwareSec::startRecording() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
Mutex::Autolock lock(mRecordLock); | |
@@ -780,13 +780,13 @@ status_t CameraHardwareSec::startRecording() | |
} | |
mRecordHeap = mGetMemoryCb(-1, sizeof(struct addrs), kBufferCount, NULL); | |
if (!mRecordHeap) { | |
- LOGE("ERR(%s): Record heap creation fail", __func__); | |
+ ALOGE("ERR(%s): Record heap creation fail", __func__); | |
return UNKNOWN_ERROR; | |
} | |
if (mRecordRunning == false) { | |
if (mSecCamera->startRecord() < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->startRecord()", __func__); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->startRecord()", __func__); | |
return UNKNOWN_ERROR; | |
} | |
mRecordRunning = true; | |
@@ -796,13 +796,13 @@ status_t CameraHardwareSec::startRecording() | |
void CameraHardwareSec::stopRecording() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
Mutex::Autolock lock(mRecordLock); | |
if (mRecordRunning == true) { | |
if (mSecCamera->stopRecord() < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->stopRecord()", __func__); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->stopRecord()", __func__); | |
return; | |
} | |
mRecordRunning = false; | |
@@ -811,7 +811,7 @@ void CameraHardwareSec::stopRecording() | |
bool CameraHardwareSec::recordingEnabled() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
return mRecordRunning; | |
} | |
@@ -829,7 +829,7 @@ int CameraHardwareSec::autoFocusThread() | |
int count =0; | |
int af_status =0 ; | |
- LOGV("%s : starting", __func__); | |
+ ALOGV("%s : starting", __func__); | |
/* block until we're told to start. we don't want to use | |
* a restartable thread and requestExitAndWait() in cancelAutoFocus() | |
@@ -841,32 +841,32 @@ int CameraHardwareSec::autoFocusThread() | |
/* check early exit request */ | |
if (mExitAutoFocusThread) { | |
mFocusLock.unlock(); | |
- LOGV("%s : exiting on request0", __func__); | |
+ ALOGV("%s : exiting on request0", __func__); | |
return NO_ERROR; | |
} | |
mFocusCondition.wait(mFocusLock); | |
/* check early exit request */ | |
if (mExitAutoFocusThread) { | |
mFocusLock.unlock(); | |
- LOGV("%s : exiting on request1", __func__); | |
+ ALOGV("%s : exiting on request1", __func__); | |
return NO_ERROR; | |
} | |
mFocusLock.unlock(); | |
- LOGV("%s : calling setAutoFocus", __func__); | |
+ ALOGV("%s : calling setAutoFocus", __func__); | |
if (mSecCamera->setAutofocus() < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setAutofocus()", __func__); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setAutofocus()", __func__); | |
return UNKNOWN_ERROR; | |
} | |
af_status = mSecCamera->getAutoFocusResult(); | |
if (af_status == 0x01) { | |
- LOGV("%s : AF Success!!", __func__); | |
+ ALOGV("%s : AF Success!!", __func__); | |
if (mMsgEnabled & CAMERA_MSG_FOCUS) | |
mNotifyCb(CAMERA_MSG_FOCUS, true, 0, mCallbackCookie); | |
} else if (af_status == 0x02) { | |
- LOGV("%s : AF Cancelled !!", __func__); | |
+ ALOGV("%s : AF Cancelled !!", __func__); | |
if (mMsgEnabled & CAMERA_MSG_FOCUS) { | |
/* CAMERA_MSG_FOCUS only takes a bool. true for | |
* finished and false for failure. cancel is still | |
@@ -875,19 +875,19 @@ int CameraHardwareSec::autoFocusThread() | |
mNotifyCb(CAMERA_MSG_FOCUS, true, 0, mCallbackCookie); | |
} | |
} else { | |
- LOGV("%s : AF Fail !!", __func__); | |
- LOGV("%s : mMsgEnabled = 0x%x", __func__, mMsgEnabled); | |
+ ALOGV("%s : AF Fail !!", __func__); | |
+ ALOGV("%s : mMsgEnabled = 0x%x", __func__, mMsgEnabled); | |
if (mMsgEnabled & CAMERA_MSG_FOCUS) | |
mNotifyCb(CAMERA_MSG_FOCUS, false, 0, mCallbackCookie); | |
} | |
- LOGV("%s : exiting with no error", __func__); | |
+ ALOGV("%s : exiting with no error", __func__); | |
return NO_ERROR; | |
} | |
status_t CameraHardwareSec::autoFocus() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
/* signal autoFocusThread to run once */ | |
mFocusCondition.signal(); | |
return NO_ERROR; | |
@@ -896,7 +896,12 @@ status_t CameraHardwareSec::autoFocus() | |
/* 2009.10.14 by icarus for added interface */ | |
status_t CameraHardwareSec::cancelAutoFocus() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
+ | |
+ // If preview is not running, cancel autofocus can still be called. | |
+ // Since the camera subsystem is completely reset on preview start, | |
+ // cancel AF is a no-op. | |
+ if (!mPreviewRunning) return NO_ERROR; | |
// cancelAutoFocus should be allowed after preview is started. But if | |
// the preview is deferred, cancelAutoFocus will fail. Ignore it if that is | |
@@ -904,7 +909,7 @@ status_t CameraHardwareSec::cancelAutoFocus() | |
if (mPreviewRunning && mPreviewStartDeferred) return NO_ERROR; | |
if (mSecCamera->cancelAutofocus() < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->cancelAutofocus()", __func__); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->cancelAutofocus()", __func__); | |
return UNKNOWN_ERROR; | |
} | |
@@ -919,14 +924,14 @@ int CameraHardwareSec::save_jpeg( unsigned char *real_jpeg, int jpeg_size) | |
/* file create/open, note to "wb" */ | |
yuv_fp = fopen("/data/camera_dump.jpeg", "wb"); | |
if (yuv_fp == NULL) { | |
- LOGE("Save jpeg file open error"); | |
+ ALOGE("Save jpeg file open error"); | |
return -1; | |
} | |
- LOGV("[BestIQ] real_jpeg size ========> %d\n", jpeg_size); | |
+ ALOGV("[BestIQ] real_jpeg size ========> %d\n", jpeg_size); | |
buffer = (char *) malloc(jpeg_size); | |
if (buffer == NULL) { | |
- LOGE("Save YUV] buffer alloc failed"); | |
+ ALOGE("Save YUV] buffer alloc failed"); | |
if (yuv_fp) | |
fclose(yuv_fp); | |
@@ -955,24 +960,24 @@ void CameraHardwareSec::save_postview(const char *fname, uint8_t *buf, uint32_t | |
int cnt = 0; | |
uint32_t written = 0; | |
- LOGD("opening file [%s]\n", fname); | |
+ ALOGD("opening file [%s]\n", fname); | |
int fd = open(fname, O_RDWR | O_CREAT); | |
if (fd < 0) { | |
- LOGE("failed to create file [%s]: %s", fname, strerror(errno)); | |
+ ALOGE("failed to create file [%s]: %s", fname, strerror(errno)); | |
return; | |
} | |
- LOGD("writing %d bytes to file [%s]\n", size, fname); | |
+ ALOGD("writing %d bytes to file [%s]\n", size, fname); | |
while (written < size) { | |
nw = ::write(fd, buf + written, size - written); | |
if (nw < 0) { | |
- LOGE("failed to write to file %d [%s]: %s",written,fname, strerror(errno)); | |
+ ALOGE("failed to write to file %d [%s]: %s",written,fname, strerror(errno)); | |
break; | |
} | |
written += nw; | |
cnt++; | |
} | |
- LOGD("done writing %d bytes to file [%s] in %d passes\n",size, fname, cnt); | |
+ ALOGD("done writing %d bytes to file [%s] in %d passes\n",size, fname, cnt); | |
::close(fd); | |
} | |
@@ -984,7 +989,7 @@ bool CameraHardwareSec::scaleDownYuv422(char *srcBuf, uint32_t srcWidth, uint32_ | |
int32_t x, y, src_y_start_pos, dst_pos, src_pos; | |
if (dstWidth % 2 != 0 || dstHeight % 2 != 0){ | |
- LOGE("scale_down_yuv422: invalid width, height for scaling"); | |
+ ALOGE("scale_down_yuv422: invalid width, height for scaling"); | |
return false; | |
} | |
@@ -1041,7 +1046,7 @@ bool CameraHardwareSec::YUY2toNV21(void *srcBuf, void *dstBuf, uint32_t srcWidth | |
int CameraHardwareSec::pictureThread() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
int jpeg_size = 0; | |
int ret = NO_ERROR; | |
@@ -1076,7 +1081,7 @@ int CameraHardwareSec::pictureThread() | |
addrs[0].width = mPostViewWidth; | |
addrs[0].height = mPostViewHeight; | |
- LOGV("[5B] mPostViewWidth = %d mPostViewHeight = %d\n",mPostViewWidth,mPostViewHeight); | |
+ ALOGV("[5B] mPostViewWidth = %d mPostViewHeight = %d\n",mPostViewWidth,mPostViewHeight); | |
camera_memory_t *JpegHeap = mGetMemoryCb(-1, mJpegHeapSize, 1, 0); | |
sp<MemoryHeapBase> PostviewHeap = new MemoryHeapBase(mPostViewSize); | |
@@ -1101,7 +1106,7 @@ int CameraHardwareSec::pictureThread() | |
if (mSecCamera->getCameraId() == SecCamera::CAMERA_ID_BACK){ | |
jpeg_data = mSecCamera->getJpeg(&jpeg_size, &phyAddr); | |
if (jpeg_data == NULL) { | |
- LOGE("ERR(%s):Fail on SecCamera->getSnapshot()", __func__); | |
+ ALOGE("ERR(%s):Fail on SecCamera->getSnapshot()", __func__); | |
ret = UNKNOWN_ERROR; | |
goto out; | |
} | |
@@ -1111,7 +1116,7 @@ int CameraHardwareSec::pictureThread() | |
ret = UNKNOWN_ERROR; | |
goto out; | |
} | |
- LOGI("snapshotandjpeg done\n"); | |
+ ALOGI("snapshotandjpeg done\n"); | |
} | |
LOG_TIME_END(1) | |
@@ -1120,7 +1125,7 @@ int CameraHardwareSec::pictureThread() | |
if (mSecCamera->getCameraId() == SecCamera::CAMERA_ID_BACK) { | |
isLSISensor = !strncmp((const char*)mCameraSensorName, "S5K4ECGX", 8); | |
if(isLSISensor) { | |
- LOGI("== Camera Sensor Detect %s - Samsung LSI SOC 5M ==\n", mCameraSensorName); | |
+ ALOGI("== Camera Sensor Detect %s - Samsung LSI SOC 5M ==\n", mCameraSensorName); | |
// LSI 5M SOC | |
if (!SplitFrame(jpeg_data, SecCamera::getInterleaveDataSize(), | |
SecCamera::getJpegLineLength(), | |
@@ -1131,7 +1136,7 @@ int CameraHardwareSec::pictureThread() | |
goto out; | |
} | |
} else { | |
- LOGI("== Camera Sensor Detect %s Sony SOC 5M ==\n", mCameraSensorName); | |
+ ALOGI("== Camera Sensor Detect %s Sony SOC 5M ==\n", mCameraSensorName); | |
decodeInterleaveData(jpeg_data, | |
SecCamera::getInterleaveDataSize(), | |
mPostViewWidth, mPostViewHeight, | |
@@ -1157,7 +1162,7 @@ int CameraHardwareSec::pictureThread() | |
JpegExifSize = mSecCamera->getExif((unsigned char *)ExifHeap->data, | |
(unsigned char *)ThumbnailHeap->base()); | |
- LOGV("JpegExifSize=%d", JpegExifSize); | |
+ ALOGV("JpegExifSize=%d", JpegExifSize); | |
if (JpegExifSize < 0) { | |
ret = UNKNOWN_ERROR; | |
@@ -1178,7 +1183,7 @@ int CameraHardwareSec::pictureThread() | |
LOG_TIME_END(0) | |
LOG_CAMERA("pictureThread interval: %lu us", LOG_TIME(0)); | |
- LOGV("%s : pictureThread end", __func__); | |
+ ALOGV("%s : pictureThread end", __func__); | |
out: | |
JpegHeap->release(JpegHeap); | |
@@ -1198,10 +1203,10 @@ status_t CameraHardwareSec::waitCaptureCompletion() { | |
while (mCaptureInProgress) { | |
nsecs_t remainingTime = endTime - systemTime(SYSTEM_TIME_MONOTONIC); | |
if (remainingTime <= 0) { | |
- LOGE("Timed out waiting picture thread."); | |
+ ALOGE("Timed out waiting picture thread."); | |
return TIMED_OUT; | |
} | |
- LOGD("Waiting for picture thread to complete."); | |
+ ALOGD("Waiting for picture thread to complete."); | |
mCaptureCondition.waitRelative(mCaptureLock, remainingTime); | |
} | |
return NO_ERROR; | |
@@ -1209,16 +1214,16 @@ status_t CameraHardwareSec::waitCaptureCompletion() { | |
status_t CameraHardwareSec::takePicture() | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
stopPreview(); | |
if (!mRawHeap) { | |
int rawHeapSize = mPostViewSize; | |
- LOGV("mRawHeap : MemoryHeapBase(previewHeapSize(%d))", rawHeapSize); | |
+ ALOGV("mRawHeap : MemoryHeapBase(previewHeapSize(%d))", rawHeapSize); | |
mRawHeap = mGetMemoryCb(-1, rawHeapSize, 1, 0); | |
if (!mRawHeap) { | |
- LOGE("ERR(%s): Raw heap creation fail", __func__); | |
+ ALOGE("ERR(%s): Raw heap creation fail", __func__); | |
} | |
} | |
@@ -1227,7 +1232,7 @@ status_t CameraHardwareSec::takePicture() | |
} | |
if (mPictureThread->run("CameraPictureThread", PRIORITY_DEFAULT) != NO_ERROR) { | |
- LOGE("%s : couldn't run picture thread", __func__); | |
+ ALOGE("%s : couldn't run picture thread", __func__); | |
return INVALID_OPERATION; | |
} | |
mCaptureLock.lock(); | |
@@ -1239,12 +1244,12 @@ status_t CameraHardwareSec::takePicture() | |
status_t CameraHardwareSec::cancelPicture() | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
if (mPictureThread.get()) { | |
- LOGV("%s: waiting for picture thread to exit", __func__); | |
+ ALOGV("%s: waiting for picture thread to exit", __func__); | |
mPictureThread->requestExitAndWait(); | |
- LOGV("%s: picture thread has exited", __func__); | |
+ ALOGV("%s: picture thread has exited", __func__); | |
} | |
return NO_ERROR; | |
@@ -1253,7 +1258,7 @@ status_t CameraHardwareSec::cancelPicture() | |
bool CameraHardwareSec::CheckVideoStartMarker(unsigned char *pBuf) | |
{ | |
if (!pBuf) { | |
- LOGE("CheckVideoStartMarker() => pBuf is NULL\n"); | |
+ ALOGE("CheckVideoStartMarker() => pBuf is NULL\n"); | |
return false; | |
} | |
@@ -1267,7 +1272,7 @@ bool CameraHardwareSec::CheckVideoStartMarker(unsigned char *pBuf) | |
bool CameraHardwareSec::CheckEOIMarker(unsigned char *pBuf) | |
{ | |
if (!pBuf) { | |
- LOGE("CheckEOIMarker() => pBuf is NULL\n"); | |
+ ALOGE("CheckEOIMarker() => pBuf is NULL\n"); | |
return false; | |
} | |
@@ -1281,7 +1286,7 @@ bool CameraHardwareSec::CheckEOIMarker(unsigned char *pBuf) | |
bool CameraHardwareSec::FindEOIMarkerInJPEG(unsigned char *pBuf, int dwBufSize, int *pnJPEGsize) | |
{ | |
if (NULL == pBuf || 0 >= dwBufSize) { | |
- LOGE("FindEOIMarkerInJPEG() => There is no contents."); | |
+ ALOGE("FindEOIMarkerInJPEG() => There is no contents."); | |
return false; | |
} | |
@@ -1302,15 +1307,15 @@ bool CameraHardwareSec::SplitFrame(unsigned char *pFrame, int dwSize, | |
void *pJPEG, int *pdwJPEGSize, | |
void *pVideo, int *pdwVideoSize) | |
{ | |
- LOGV("===========SplitFrame Start=============="); | |
+ ALOGV("===========SplitFrame Start=============="); | |
if (NULL == pFrame || 0 >= dwSize) { | |
- LOGE("There is no contents (pFrame=%p, dwSize=%d", pFrame, dwSize); | |
+ ALOGE("There is no contents (pFrame=%p, dwSize=%d", pFrame, dwSize); | |
return false; | |
} | |
if (0 == dwJPEGLineLength || 0 == dwVideoLineLength) { | |
- LOGE("There in no input information for decoding interleaved jpeg"); | |
+ ALOGE("There in no input information for decoding interleaved jpeg"); | |
return false; | |
} | |
@@ -1379,14 +1384,14 @@ bool CameraHardwareSec::SplitFrame(unsigned char *pFrame, int dwSize, | |
if(pdwVideoSize) | |
*pdwVideoSize = dwVSize; | |
} else { | |
- LOGE("DecodeInterleaveJPEG_WithOutDT() => Can not find EOI"); | |
+ ALOGE("DecodeInterleaveJPEG_WithOutDT() => Can not find EOI"); | |
bRet = false; | |
if(pdwJPEGSize) | |
*pdwJPEGSize = 0; | |
if(pdwVideoSize) | |
*pdwVideoSize = 0; | |
} | |
- LOGV("===========SplitFrame end=============="); | |
+ ALOGV("===========SplitFrame end=============="); | |
return bRet; | |
} | |
@@ -1412,18 +1417,18 @@ int CameraHardwareSec::decodeInterleaveData(unsigned char *pInterleaveData, | |
int i = 0; | |
- LOGV("decodeInterleaveData Start~~~"); | |
+ ALOGV("decodeInterleaveData Start~~~"); | |
while (i < interleaveDataSize) { | |
if ((*interleave_ptr == 0xFFFFFFFF) || (*interleave_ptr == 0x02FFFFFF) || | |
(*interleave_ptr == 0xFF02FFFF)) { | |
// Padding Data | |
-// LOGE("%d(%x) padding data\n", i, *interleave_ptr); | |
+// ALOGE("%d(%x) padding data\n", i, *interleave_ptr); | |
interleave_ptr++; | |
i += 4; | |
} | |
else if ((*interleave_ptr & 0xFFFF) == 0x05FF) { | |
// Start-code of YUV Data | |
-// LOGE("%d(%x) yuv data\n", i, *interleave_ptr); | |
+// ALOGE("%d(%x) yuv data\n", i, *interleave_ptr); | |
p = (unsigned char *)interleave_ptr; | |
p += 2; | |
i += 2; | |
@@ -1447,7 +1452,7 @@ int CameraHardwareSec::decodeInterleaveData(unsigned char *pInterleaveData, | |
} | |
} else { | |
// Extract JPEG Data | |
-// LOGE("%d(%x) jpg data, jpeg_size = %d bytes\n", i, *interleave_ptr, jpeg_size); | |
+// ALOGE("%d(%x) jpg data, jpeg_size = %d bytes\n", i, *interleave_ptr, jpeg_size); | |
if (pJpegData != NULL) { | |
memcpy(jpeg_ptr, interleave_ptr, 4); | |
jpeg_ptr += 4; | |
@@ -1476,7 +1481,7 @@ int CameraHardwareSec::decodeInterleaveData(unsigned char *pInterleaveData, | |
} | |
} | |
} | |
- LOGV("decodeInterleaveData End~~~"); | |
+ ALOGV("decodeInterleaveData End~~~"); | |
return ret; | |
} | |
@@ -1543,7 +1548,7 @@ bool CameraHardwareSec::isSupportedParameter(const char * const parm, | |
status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
status_t ret = NO_ERROR; | |
@@ -1559,12 +1564,12 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
int new_preview_height = 0; | |
params.getPreviewSize(&new_preview_width, &new_preview_height); | |
const char *new_str_preview_format = params.getPreviewFormat(); | |
- LOGV("%s : new_preview_width x new_preview_height = %dx%d, format = %s", | |
+ ALOGV("%s : new_preview_width x new_preview_height = %dx%d, format = %s", | |
__func__, new_preview_width, new_preview_height, new_str_preview_format); | |
if (strcmp(new_str_preview_format, CameraParameters::PIXEL_FORMAT_YUV420SP) && | |
strcmp(new_str_preview_format, CameraParameters::PIXEL_FORMAT_YUV420P)) { | |
- LOGE("Unsupported preview color format: %s", new_str_preview_format); | |
+ ALOGE("Unsupported preview color format: %s", new_str_preview_format); | |
return BAD_VALUE; | |
} | |
@@ -1584,33 +1589,33 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
current_pixel_format != new_preview_format) { | |
if (mSecCamera->setPreviewSize(new_preview_width, new_preview_height, | |
new_preview_format) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setPreviewSize(width(%d), height(%d), format(%d))", | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setPreviewSize(width(%d), height(%d), format(%d))", | |
__func__, new_preview_width, new_preview_height, new_preview_format); | |
ret = UNKNOWN_ERROR; | |
} else { | |
if (mPreviewWindow) { | |
if (mPreviewRunning && !mPreviewStartDeferred) { | |
- LOGE("ERR(%s): preview is running, cannot change size and format!", | |
+ ALOGE("ERR(%s): preview is running, cannot change size and format!", | |
__func__); | |
ret = INVALID_OPERATION; | |
} | |
- LOGV("%s: mPreviewWindow (%p) set_buffers_geometry", __func__, mPreviewWindow); | |
- LOGV("%s: mPreviewWindow->set_buffers_geometry (%p)", __func__, | |
+ ALOGV("%s: mPreviewWindow (%p) set_buffers_geometry", __func__, mPreviewWindow); | |
+ ALOGV("%s: mPreviewWindow->set_buffers_geometry (%p)", __func__, | |
mPreviewWindow->set_buffers_geometry); | |
mPreviewWindow->set_buffers_geometry(mPreviewWindow, | |
new_preview_width, new_preview_height, | |
new_preview_format); | |
- LOGV("%s: DONE mPreviewWindow (%p) set_buffers_geometry", __func__, mPreviewWindow); | |
+ ALOGV("%s: DONE mPreviewWindow (%p) set_buffers_geometry", __func__, mPreviewWindow); | |
} | |
mParameters.setPreviewSize(new_preview_width, new_preview_height); | |
mParameters.setPreviewFormat(new_str_preview_format); | |
} | |
} | |
- else LOGV("%s: preview size and format has not changed", __func__); | |
+ else ALOGV("%s: preview size and format has not changed", __func__); | |
} else { | |
- LOGE("%s: Invalid preview size(%dx%d)", | |
+ ALOGE("%s: Invalid preview size(%dx%d)", | |
__func__, new_preview_width, new_preview_height); | |
ret = INVALID_OPERATION; | |
@@ -1620,11 +1625,11 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
int new_picture_height = 0; | |
params.getPictureSize(&new_picture_width, &new_picture_height); | |
- LOGV("%s : new_picture_width x new_picture_height = %dx%d", __func__, new_picture_width, new_picture_height); | |
+ ALOGV("%s : new_picture_width x new_picture_height = %dx%d", __func__, new_picture_width, new_picture_height); | |
if (0 < new_picture_width && 0 < new_picture_height) { | |
- LOGV("%s: setSnapshotSize", __func__); | |
+ ALOGV("%s: setSnapshotSize", __func__); | |
if (mSecCamera->setSnapshotSize(new_picture_width, new_picture_height) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setSnapshotSize(width(%d), height(%d))", | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setSnapshotSize(width(%d), height(%d))", | |
__func__, new_picture_width, new_picture_height); | |
ret = UNKNOWN_ERROR; | |
} else { | |
@@ -1634,7 +1639,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
// picture format | |
const char *new_str_picture_format = params.getPictureFormat(); | |
- LOGV("%s : new_str_picture_format %s", __func__, new_str_picture_format); | |
+ ALOGV("%s : new_str_picture_format %s", __func__, new_str_picture_format); | |
if (new_str_picture_format != NULL) { | |
int new_picture_format = 0; | |
@@ -1662,7 +1667,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
new_picture_format = V4L2_PIX_FMT_NV21; //for 3rd party | |
if (mSecCamera->setSnapshotPixelFormat(new_picture_format) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setSnapshotPixelFormat(format(%d))", __func__, new_picture_format); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setSnapshotPixelFormat(format(%d))", __func__, new_picture_format); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.setPictureFormat(new_str_picture_format); | |
@@ -1671,11 +1676,11 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
//JPEG image quality | |
int new_jpeg_quality = params.getInt(CameraParameters::KEY_JPEG_QUALITY); | |
- LOGV("%s : new_jpeg_quality %d", __func__, new_jpeg_quality); | |
+ ALOGV("%s : new_jpeg_quality %d", __func__, new_jpeg_quality); | |
/* we ignore bad values */ | |
if (new_jpeg_quality >=1 && new_jpeg_quality <= 100) { | |
if (mSecCamera->setJpegQuality(new_jpeg_quality) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setJpegQuality(quality(%d))", __func__, new_jpeg_quality); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setJpegQuality(quality(%d))", __func__, new_jpeg_quality); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.set(CameraParameters::KEY_JPEG_QUALITY, new_jpeg_quality); | |
@@ -1687,7 +1692,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
int new_jpeg_thumbnail_height= params.getInt(CameraParameters::KEY_JPEG_THUMBNAIL_HEIGHT); | |
if (0 <= new_jpeg_thumbnail_width && 0 <= new_jpeg_thumbnail_height) { | |
if (mSecCamera->setJpegThumbnailSize(new_jpeg_thumbnail_width, new_jpeg_thumbnail_height) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setJpegThumbnailSize(width(%d), height(%d))", __func__, new_jpeg_thumbnail_width, new_jpeg_thumbnail_height); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setJpegThumbnailSize(width(%d), height(%d))", __func__, new_jpeg_thumbnail_width, new_jpeg_thumbnail_height); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.set(CameraParameters::KEY_JPEG_THUMBNAIL_WIDTH, new_jpeg_thumbnail_width); | |
@@ -1701,17 +1706,17 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
* on scene mode. don't return an error because it causes CTS failure. | |
*/ | |
if (new_frame_rate != mParameters.getPreviewFrameRate()) { | |
- LOGW("WARN(%s): request for preview frame %d not allowed, != %d\n", | |
+ ALOGW("WARN(%s): request for preview frame %d not allowed, != %d\n", | |
__func__, new_frame_rate, mParameters.getPreviewFrameRate()); | |
} | |
// rotation | |
int new_rotation = params.getInt(CameraParameters::KEY_ROTATION); | |
- LOGV("%s : new_rotation %d", __func__, new_rotation); | |
+ ALOGV("%s : new_rotation %d", __func__, new_rotation); | |
if (0 <= new_rotation) { | |
- LOGV("%s : set orientation:%d\n", __func__, new_rotation); | |
+ ALOGV("%s : set orientation:%d\n", __func__, new_rotation); | |
if (mSecCamera->setExifOrientationInfo(new_rotation) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setExifOrientationInfo(%d)", __func__, new_rotation); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setExifOrientationInfo(%d)", __func__, new_rotation); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.set(CameraParameters::KEY_ROTATION, new_rotation); | |
@@ -1722,11 +1727,11 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
int new_exposure_compensation = params.getInt(CameraParameters::KEY_EXPOSURE_COMPENSATION); | |
int max_exposure_compensation = params.getInt(CameraParameters::KEY_MAX_EXPOSURE_COMPENSATION); | |
int min_exposure_compensation = params.getInt(CameraParameters::KEY_MIN_EXPOSURE_COMPENSATION); | |
- LOGV("%s : new_exposure_compensation %d", __func__, new_exposure_compensation); | |
+ ALOGV("%s : new_exposure_compensation %d", __func__, new_exposure_compensation); | |
if ((min_exposure_compensation <= new_exposure_compensation) && | |
(max_exposure_compensation >= new_exposure_compensation)) { | |
if (mSecCamera->setBrightness(new_exposure_compensation) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setBrightness(brightness(%d))", __func__, new_exposure_compensation); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setBrightness(brightness(%d))", __func__, new_exposure_compensation); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.set(CameraParameters::KEY_EXPOSURE_COMPENSATION, new_exposure_compensation); | |
@@ -1735,7 +1740,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
// whitebalance | |
const char *new_white_str = params.get(CameraParameters::KEY_WHITE_BALANCE); | |
- LOGV("%s : new_white_str %s", __func__, new_white_str); | |
+ ALOGV("%s : new_white_str %s", __func__, new_white_str); | |
if (new_white_str != NULL) { | |
int new_white = -1; | |
@@ -1754,13 +1759,13 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
CameraParameters::WHITE_BALANCE_INCANDESCENT)) | |
new_white = WHITE_BALANCE_TUNGSTEN; | |
else { | |
- LOGE("ERR(%s):Invalid white balance(%s)", __func__, new_white_str); //twilight, shade, warm_flourescent | |
+ ALOGE("ERR(%s):Invalid white balance(%s)", __func__, new_white_str); //twilight, shade, warm_flourescent | |
ret = UNKNOWN_ERROR; | |
} | |
if (0 <= new_white) { | |
if (mSecCamera->setWhiteBalance(new_white) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setWhiteBalance(white(%d))", __func__, new_white); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setWhiteBalance(white(%d))", __func__, new_white); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.set(CameraParameters::KEY_WHITE_BALANCE, new_white_str); | |
@@ -1785,9 +1790,9 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (new_scene_mode_str && current_scene_mode_str) { | |
if (!strcmp(new_scene_mode_str, current_scene_mode_str)) { | |
if ((new_min_fps != current_min_fps) || (new_max_fps != current_max_fps)) { | |
- LOGW("%s : requested new_min_fps = %d, new_max_fps = %d not allowed", | |
+ ALOGW("%s : requested new_min_fps = %d, new_max_fps = %d not allowed", | |
__func__, new_min_fps, new_max_fps); | |
- LOGE("%s : current_min_fps = %d, current_max_fps = %d", | |
+ ALOGE("%s : current_min_fps = %d, current_max_fps = %d", | |
__func__, current_min_fps, current_max_fps); | |
ret = UNKNOWN_ERROR; | |
} | |
@@ -1872,7 +1877,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
new_flash_mode_str = CameraParameters::FLASH_MODE_OFF; | |
mParameters.set(CameraParameters::KEY_SUPPORTED_FLASH_MODES, "off"); | |
} else { | |
- LOGE("%s::unmatched scene_mode(%s)", | |
+ ALOGE("%s::unmatched scene_mode(%s)", | |
__func__, new_scene_mode_str); //action, night-portrait, theatre, steadyphoto | |
ret = UNKNOWN_ERROR; | |
} | |
@@ -1901,13 +1906,13 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
BACK_CAMERA_INFINITY_FOCUS_DISTANCES_STR); | |
} | |
else { | |
- LOGE("%s::unmatched focus_mode(%s)", __func__, new_focus_mode_str); | |
+ ALOGE("%s::unmatched focus_mode(%s)", __func__, new_focus_mode_str); | |
ret = UNKNOWN_ERROR; | |
} | |
if (0 <= new_focus_mode) { | |
if (mSecCamera->setFocusMode(new_focus_mode) < 0) { | |
- LOGE("%s::mSecCamera->setFocusMode(%d) fail", __func__, new_focus_mode); | |
+ ALOGE("%s::mSecCamera->setFocusMode(%d) fail", __func__, new_focus_mode); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.set(CameraParameters::KEY_FOCUS_MODE, new_focus_mode_str); | |
@@ -1928,12 +1933,12 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
else if (!strcmp(new_flash_mode_str, CameraParameters::FLASH_MODE_TORCH)) | |
new_flash_mode = FLASH_MODE_TORCH; | |
else { | |
- LOGE("%s::unmatched flash_mode(%s)", __func__, new_flash_mode_str); //red-eye | |
+ ALOGE("%s::unmatched flash_mode(%s)", __func__, new_flash_mode_str); //red-eye | |
ret = UNKNOWN_ERROR; | |
} | |
if (0 <= new_flash_mode) { | |
if (mSecCamera->setFlashMode(new_flash_mode) < 0) { | |
- LOGE("%s::mSecCamera->setFlashMode(%d) fail", __func__, new_flash_mode); | |
+ ALOGE("%s::mSecCamera->setFlashMode(%d) fail", __func__, new_flash_mode); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.set(CameraParameters::KEY_FLASH_MODE, new_flash_mode_str); | |
@@ -1944,7 +1949,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
// scene.. | |
if (0 <= new_scene_mode) { | |
if (mSecCamera->setSceneMode(new_scene_mode) < 0) { | |
- LOGE("%s::mSecCamera->setSceneMode(%d) fail", __func__, new_scene_mode); | |
+ ALOGE("%s::mSecCamera->setSceneMode(%d) fail", __func__, new_scene_mode); | |
ret = UNKNOWN_ERROR; | |
} else { | |
mParameters.set(CameraParameters::KEY_SCENE_MODE, new_scene_mode_str); | |
@@ -1953,7 +1958,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
} else { | |
if (!isSupportedParameter(new_focus_mode_str, | |
mParameters.get(CameraParameters::KEY_SUPPORTED_FOCUS_MODES))) { | |
- LOGE("%s: Unsupported focus mode: %s", __func__, new_focus_mode_str); | |
+ ALOGE("%s: Unsupported focus mode: %s", __func__, new_focus_mode_str); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -1978,13 +1983,13 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
new_image_effect = IMAGE_EFFECT_NEGATIVE; | |
else { | |
//posterize, whiteboard, blackboard, solarize | |
- LOGE("ERR(%s):Invalid effect(%s)", __func__, new_image_effect_str); | |
+ ALOGE("ERR(%s):Invalid effect(%s)", __func__, new_image_effect_str); | |
ret = UNKNOWN_ERROR; | |
} | |
if (new_image_effect >= 0) { | |
if (mSecCamera->setImageEffect(new_image_effect) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setImageEffect(effect(%d))", __func__, new_image_effect); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setImageEffect(effect(%d))", __func__, new_image_effect); | |
ret = UNKNOWN_ERROR; | |
} else { | |
const char *old_image_effect_str = mParameters.get(CameraParameters::KEY_EFFECT); | |
@@ -2004,7 +2009,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
int new_vtmode = mInternalParameters.getInt("vtmode"); | |
if (0 <= new_vtmode) { | |
if (mSecCamera->setVTmode(new_vtmode) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setVTMode(%d)", __func__, new_vtmode); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setVTMode(%d)", __func__, new_vtmode); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -2014,7 +2019,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (0 <= new_contrast) { | |
if (mSecCamera->setContrast(new_contrast) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setContrast(%d)", __func__, new_contrast); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setContrast(%d)", __func__, new_contrast); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -2024,7 +2029,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (0 <= new_wdr) { | |
if (mSecCamera->setWDR(new_wdr) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setWDR(%d)", __func__, new_wdr); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setWDR(%d)", __func__, new_wdr); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -2034,7 +2039,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (0 <= new_anti_shake) { | |
if (mSecCamera->setAntiShake(new_anti_shake) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setWDR(%d)", __func__, new_anti_shake); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setWDR(%d)", __func__, new_anti_shake); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -2042,7 +2047,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
// gps latitude | |
const char *new_gps_latitude_str = params.get(CameraParameters::KEY_GPS_LATITUDE); | |
if (mSecCamera->setGPSLatitude(new_gps_latitude_str) < 0) { | |
- LOGE("%s::mSecCamera->setGPSLatitude(%s) fail", __func__, new_gps_latitude_str); | |
+ ALOGE("%s::mSecCamera->setGPSLatitude(%s) fail", __func__, new_gps_latitude_str); | |
ret = UNKNOWN_ERROR; | |
} else { | |
if (new_gps_latitude_str) { | |
@@ -2056,7 +2061,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
const char *new_gps_longitude_str = params.get(CameraParameters::KEY_GPS_LONGITUDE); | |
if (mSecCamera->setGPSLongitude(new_gps_longitude_str) < 0) { | |
- LOGE("%s::mSecCamera->setGPSLongitude(%s) fail", __func__, new_gps_longitude_str); | |
+ ALOGE("%s::mSecCamera->setGPSLongitude(%s) fail", __func__, new_gps_longitude_str); | |
ret = UNKNOWN_ERROR; | |
} else { | |
if (new_gps_longitude_str) { | |
@@ -2070,7 +2075,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
const char *new_gps_altitude_str = params.get(CameraParameters::KEY_GPS_ALTITUDE); | |
if (mSecCamera->setGPSAltitude(new_gps_altitude_str) < 0) { | |
- LOGE("%s::mSecCamera->setGPSAltitude(%s) fail", __func__, new_gps_altitude_str); | |
+ ALOGE("%s::mSecCamera->setGPSAltitude(%s) fail", __func__, new_gps_altitude_str); | |
ret = UNKNOWN_ERROR; | |
} else { | |
if (new_gps_altitude_str) { | |
@@ -2084,7 +2089,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
const char *new_gps_timestamp_str = params.get(CameraParameters::KEY_GPS_TIMESTAMP); | |
if (mSecCamera->setGPSTimeStamp(new_gps_timestamp_str) < 0) { | |
- LOGE("%s::mSecCamera->setGPSTimeStamp(%s) fail", __func__, new_gps_timestamp_str); | |
+ ALOGE("%s::mSecCamera->setGPSTimeStamp(%s) fail", __func__, new_gps_timestamp_str); | |
ret = UNKNOWN_ERROR; | |
} else { | |
if (new_gps_timestamp_str) { | |
@@ -2098,7 +2103,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
const char *new_gps_processing_method_str = params.get(CameraParameters::KEY_GPS_PROCESSING_METHOD); | |
if (mSecCamera->setGPSProcessingMethod(new_gps_processing_method_str) < 0) { | |
- LOGE("%s::mSecCamera->setGPSProcessingMethod(%s) fail", __func__, new_gps_processing_method_str); | |
+ ALOGE("%s::mSecCamera->setGPSProcessingMethod(%s) fail", __func__, new_gps_processing_method_str); | |
ret = UNKNOWN_ERROR; | |
} else { | |
if (new_gps_processing_method_str) { | |
@@ -2114,12 +2119,12 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (0 < new_recording_width && 0 < new_recording_height) { | |
if (mSecCamera->setRecordingSize(new_recording_width, new_recording_height) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setRecordingSize(width(%d), height(%d))", __func__, new_recording_width, new_recording_height); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setRecordingSize(width(%d), height(%d))", __func__, new_recording_width, new_recording_height); | |
ret = UNKNOWN_ERROR; | |
} | |
} else { | |
if (mSecCamera->setRecordingSize(new_preview_width, new_preview_height) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setRecordingSize(width(%d), height(%d))", __func__, new_preview_width, new_preview_height); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setRecordingSize(width(%d), height(%d))", __func__, new_preview_width, new_preview_height); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -2134,13 +2139,13 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
else if (!strcmp(new_gamma_str, "on")) | |
new_gamma = GAMMA_ON; | |
else { | |
- LOGE("%s::unmatched gamma(%s)", __func__, new_gamma_str); | |
+ ALOGE("%s::unmatched gamma(%s)", __func__, new_gamma_str); | |
ret = UNKNOWN_ERROR; | |
} | |
if (0 <= new_gamma) { | |
if (mSecCamera->setGamma(new_gamma) < 0) { | |
- LOGE("%s::mSecCamera->setGamma(%d) fail", __func__, new_gamma); | |
+ ALOGE("%s::mSecCamera->setGamma(%d) fail", __func__, new_gamma); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -2157,13 +2162,13 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
else if (!strcmp(new_slow_ae_str, "on")) | |
new_slow_ae = SLOW_AE_ON; | |
else { | |
- LOGE("%s::unmatched slow_ae(%s)", __func__, new_slow_ae_str); | |
+ ALOGE("%s::unmatched slow_ae(%s)", __func__, new_slow_ae_str); | |
ret = UNKNOWN_ERROR; | |
} | |
if (0 <= new_slow_ae) { | |
if (mSecCamera->setSlowAE(new_slow_ae) < 0) { | |
- LOGE("%s::mSecCamera->setSlowAE(%d) fail", __func__, new_slow_ae); | |
+ ALOGE("%s::mSecCamera->setSlowAE(%d) fail", __func__, new_slow_ae); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -2174,7 +2179,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (0 <= new_sensor_mode) { | |
if (mSecCamera->setSensorMode(new_sensor_mode) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setSensorMode(%d)", __func__, new_sensor_mode); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setSensorMode(%d)", __func__, new_sensor_mode); | |
ret = UNKNOWN_ERROR; | |
} | |
} else { | |
@@ -2186,7 +2191,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (0 <= new_shot_mode) { | |
if (mSecCamera->setShotMode(new_shot_mode) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setShotMode(%d)", __func__, new_shot_mode); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setShotMode(%d)", __func__, new_shot_mode); | |
ret = UNKNOWN_ERROR; | |
} | |
} else { | |
@@ -2198,7 +2203,7 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (0 <= new_blur_level) { | |
if (mSecCamera->setBlur(new_blur_level) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setBlur(%d)", __func__, new_blur_level); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setBlur(%d)", __func__, new_blur_level); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
@@ -2209,18 +2214,18 @@ status_t CameraHardwareSec::setParameters(const CameraParameters& params) | |
if (0 <= new_dataline) { | |
if (mSecCamera->setDataLineCheck(new_dataline) < 0) { | |
- LOGE("ERR(%s):Fail on mSecCamera->setDataLineCheck(%d)", __func__, new_dataline); | |
+ ALOGE("ERR(%s):Fail on mSecCamera->setDataLineCheck(%d)", __func__, new_dataline); | |
ret = UNKNOWN_ERROR; | |
} | |
} | |
- LOGV("%s return ret = %d", __func__, ret); | |
+ ALOGV("%s return ret = %d", __func__, ret); | |
return ret; | |
} | |
CameraParameters CameraHardwareSec::getParameters() const | |
{ | |
- LOGV("%s :", __func__); | |
+ ALOGV("%s :", __func__); | |
return mParameters; | |
} | |
@@ -2231,7 +2236,7 @@ status_t CameraHardwareSec::sendCommand(int32_t command, int32_t arg1, int32_t a | |
void CameraHardwareSec::release() | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
/* shut down any threads we have that might be running. do it here | |
* instead of the destructor. we're guaranteed to be on another thread | |
@@ -2293,7 +2298,7 @@ status_t CameraHardwareSec::storeMetaDataInBuffers(bool enable) | |
// metadata buffer mode can be turned on or off. | |
// Samsung needs to fix this. | |
if (!enable) { | |
- LOGE("Non-metadata buffer mode is not supported!"); | |
+ ALOGE("Non-metadata buffer mode is not supported!"); | |
return INVALID_OPERATION; | |
} | |
return OK; | |
@@ -2316,7 +2321,7 @@ static camera_device_t *g_cam_device; | |
static int HAL_camera_device_close(struct hw_device_t* device) | |
{ | |
- LOGI("%s", __func__); | |
+ ALOGI("%s", __func__); | |
if (device) { | |
camera_device_t *cam_device = (camera_device_t *)device; | |
delete static_cast<CameraHardwareSec *>(cam_device->priv); | |
@@ -2335,7 +2340,7 @@ static inline CameraHardwareSec *obj(struct camera_device *dev) | |
static int HAL_camera_device_set_preview_window(struct camera_device *dev, | |
struct preview_stream_ops *buf) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->setPreviewWindow(buf); | |
} | |
@@ -2347,7 +2352,7 @@ static void HAL_camera_device_set_callbacks(struct camera_device *dev, | |
camera_request_memory get_memory, | |
void* user) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
obj(dev)->setCallbacks(notify_cb, data_cb, data_cb_timestamp, | |
get_memory, | |
user); | |
@@ -2363,7 +2368,7 @@ static void HAL_camera_device_set_callbacks(struct camera_device *dev, | |
*/ | |
static void HAL_camera_device_enable_msg_type(struct camera_device *dev, int32_t msg_type) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
obj(dev)->enableMsgType(msg_type); | |
} | |
@@ -2379,7 +2384,7 @@ static void HAL_camera_device_enable_msg_type(struct camera_device *dev, int32_t | |
*/ | |
static void HAL_camera_device_disable_msg_type(struct camera_device *dev, int32_t msg_type) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
obj(dev)->disableMsgType(msg_type); | |
} | |
@@ -2390,7 +2395,7 @@ static void HAL_camera_device_disable_msg_type(struct camera_device *dev, int32_ | |
*/ | |
static int HAL_camera_device_msg_type_enabled(struct camera_device *dev, int32_t msg_type) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->msgTypeEnabled(msg_type); | |
} | |
@@ -2399,7 +2404,7 @@ static int HAL_camera_device_msg_type_enabled(struct camera_device *dev, int32_t | |
*/ | |
static int HAL_camera_device_start_preview(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->startPreview(); | |
} | |
@@ -2408,7 +2413,7 @@ static int HAL_camera_device_start_preview(struct camera_device *dev) | |
*/ | |
static void HAL_camera_device_stop_preview(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
obj(dev)->stopPreview(); | |
} | |
@@ -2417,7 +2422,7 @@ static void HAL_camera_device_stop_preview(struct camera_device *dev) | |
*/ | |
static int HAL_camera_device_preview_enabled(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->previewEnabled(); | |
} | |
@@ -2453,7 +2458,7 @@ static int HAL_camera_device_preview_enabled(struct camera_device *dev) | |
*/ | |
static int HAL_camera_device_store_meta_data_in_buffers(struct camera_device *dev, int enable) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->storeMetaDataInBuffers(enable); | |
} | |
@@ -2469,7 +2474,7 @@ static int HAL_camera_device_store_meta_data_in_buffers(struct camera_device *de | |
*/ | |
static int HAL_camera_device_start_recording(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->startRecording(); | |
} | |
@@ -2478,7 +2483,7 @@ static int HAL_camera_device_start_recording(struct camera_device *dev) | |
*/ | |
static void HAL_camera_device_stop_recording(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
obj(dev)->stopRecording(); | |
} | |
@@ -2487,7 +2492,7 @@ static void HAL_camera_device_stop_recording(struct camera_device *dev) | |
*/ | |
static int HAL_camera_device_recording_enabled(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->recordingEnabled(); | |
} | |
@@ -2503,7 +2508,7 @@ static int HAL_camera_device_recording_enabled(struct camera_device *dev) | |
static void HAL_camera_device_release_recording_frame(struct camera_device *dev, | |
const void *opaque) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
obj(dev)->releaseRecordingFrame(opaque); | |
} | |
@@ -2514,7 +2519,7 @@ static void HAL_camera_device_release_recording_frame(struct camera_device *dev, | |
*/ | |
static int HAL_camera_device_auto_focus(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->autoFocus(); | |
} | |
@@ -2526,7 +2531,7 @@ static int HAL_camera_device_auto_focus(struct camera_device *dev) | |
*/ | |
static int HAL_camera_device_cancel_auto_focus(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->cancelAutoFocus(); | |
} | |
@@ -2535,7 +2540,7 @@ static int HAL_camera_device_cancel_auto_focus(struct camera_device *dev) | |
*/ | |
static int HAL_camera_device_take_picture(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->takePicture(); | |
} | |
@@ -2545,7 +2550,7 @@ static int HAL_camera_device_take_picture(struct camera_device *dev) | |
*/ | |
static int HAL_camera_device_cancel_picture(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->cancelPicture(); | |
} | |
@@ -2556,7 +2561,7 @@ static int HAL_camera_device_cancel_picture(struct camera_device *dev) | |
static int HAL_camera_device_set_parameters(struct camera_device *dev, | |
const char *parms) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
String8 str(parms); | |
CameraParameters p(str); | |
return obj(dev)->setParameters(p); | |
@@ -2565,7 +2570,7 @@ static int HAL_camera_device_set_parameters(struct camera_device *dev, | |
/** Return the camera parameters. */ | |
char *HAL_camera_device_get_parameters(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
String8 str; | |
CameraParameters parms = obj(dev)->getParameters(); | |
str = parms.flatten(); | |
@@ -2574,7 +2579,7 @@ char *HAL_camera_device_get_parameters(struct camera_device *dev) | |
void HAL_camera_device_put_parameters(struct camera_device *dev, char *parms) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
free(parms); | |
} | |
@@ -2584,7 +2589,7 @@ void HAL_camera_device_put_parameters(struct camera_device *dev, char *parms) | |
static int HAL_camera_device_send_command(struct camera_device *dev, | |
int32_t cmd, int32_t arg1, int32_t arg2) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->sendCommand(cmd, arg1, arg2); | |
} | |
@@ -2594,7 +2599,7 @@ static int HAL_camera_device_send_command(struct camera_device *dev, | |
*/ | |
static void HAL_camera_device_release(struct camera_device *dev) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
obj(dev)->release(); | |
} | |
@@ -2603,19 +2608,19 @@ static void HAL_camera_device_release(struct camera_device *dev) | |
*/ | |
static int HAL_camera_device_dump(struct camera_device *dev, int fd) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return obj(dev)->dump(fd); | |
} | |
static int HAL_getNumberOfCameras() | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
return sizeof(sCameraInfo) / sizeof(sCameraInfo[0]); | |
} | |
static int HAL_getCameraInfo(int cameraId, struct camera_info *cameraInfo) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
memcpy(cameraInfo, &sCameraInfo[cameraId], sizeof(CameraInfo)); | |
return 0; | |
} | |
@@ -2654,20 +2659,20 @@ static int HAL_camera_device_open(const struct hw_module_t* module, | |
const char *id, | |
struct hw_device_t** device) | |
{ | |
- LOGV("%s", __func__); | |
+ ALOGV("%s", __func__); | |
int cameraId = atoi(id); | |
if (cameraId < 0 || cameraId >= HAL_getNumberOfCameras()) { | |
- LOGE("Invalid camera ID %s", id); | |
+ ALOGE("Invalid camera ID %s", id); | |
return -EINVAL; | |
} | |
if (g_cam_device) { | |
if (obj(g_cam_device)->getCameraId() == cameraId) { | |
- LOGV("returning existing camera ID %s", id); | |
+ ALOGV("returning existing camera ID %s", id); | |
goto done; | |
} else { | |
- LOGE("Cannot open camera %d. camera %d is already running!", | |
+ ALOGE("Cannot open camera %d. camera %d is already running!", | |
cameraId, obj(g_cam_device)->getCameraId()); | |
return -ENOSYS; | |
} | |
@@ -2684,13 +2689,13 @@ static int HAL_camera_device_open(const struct hw_module_t* module, | |
g_cam_device->ops = &camera_device_ops; | |
- LOGI("%s: open camera %s", __func__, id); | |
+ ALOGI("%s: open camera %s", __func__, id); | |
g_cam_device->priv = new CameraHardwareSec(cameraId, g_cam_device); | |
done: | |
*device = (hw_device_t *)g_cam_device; | |
- LOGI("%s: opened camera %s (%p)", __func__, id, *device); | |
+ ALOGI("%s: opened camera %s (%p)", __func__, id, *device); | |
return 0; | |
} | |
diff --git a/libhwcomposer/Android.mk b/libhwcomposer/Android.mk | |
index f484dfd..72c7b59 100644 | |
--- a/libhwcomposer/Android.mk | |
+++ b/libhwcomposer/Android.mk | |
@@ -21,7 +21,7 @@ LOCAL_PATH:= $(call my-dir) | |
include $(CLEAR_VARS) | |
LOCAL_PRELINK_MODULE := false | |
LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw | |
-LOCAL_SHARED_LIBRARIES := liblog libcutils libEGL libGLESv1_CM libhardware | |
+LOCAL_SHARED_LIBRARIES := liblog libcutils libEGL libGLESv1_CM libhardware libhardware_legacy | |
LOCAL_CFLAGS += -DLOG_TAG=\"hwcomposer\" | |
LOCAL_C_INCLUDES := \ | |
diff --git a/libhwcomposer/SecHWC.cpp b/libhwcomposer/SecHWC.cpp | |
index 31c0b2c..dda1108 100644 | |
--- a/libhwcomposer/SecHWC.cpp | |
+++ b/libhwcomposer/SecHWC.cpp | |
@@ -23,10 +23,12 @@ | |
* | |
*/ | |
+#include <sys/resource.h> | |
#include <cutils/log.h> | |
#include <cutils/atomic.h> | |
#include <EGL/egl.h> | |
#include <GLES/gl.h> | |
+#include <hardware_legacy/uevent.h> | |
#include "SecHWCUtils.h" | |
static IMG_gralloc_module_public_t *gpsGrallocModule; | |
@@ -41,8 +43,8 @@ static struct hw_module_methods_t hwc_module_methods = { | |
hwc_module_t HAL_MODULE_INFO_SYM = { | |
common: { | |
tag: HARDWARE_MODULE_TAG, | |
- version_major: 1, | |
- version_minor: 0, | |
+ module_api_version: HWC_MODULE_API_VERSION_0_1, | |
+ hal_api_version: HARDWARE_HAL_API_VERSION, | |
id: HWC_HARDWARE_MODULE_ID, | |
name: "Samsung S5PC11X hwcomposer module", | |
author: "SAMSUNG", | |
@@ -51,7 +53,7 @@ hwc_module_t HAL_MODULE_INFO_SYM = { | |
}; | |
static void dump_layer(hwc_layer_t const* l) { | |
- LOGD("\ttype=%d, flags=%08x, handle=%p, tr=%02x, blend=%04x, {%d,%d,%d,%d}, {%d,%d,%d,%d}", | |
+ ALOGD("\ttype=%d, flags=%08x, handle=%p, tr=%02x, blend=%04x, {%d,%d,%d,%d}, {%d,%d,%d,%d}", | |
l->compositionType, l->flags, l->handle, l->transform, l->blending, | |
l->sourceCrop.left, | |
l->sourceCrop.top, | |
@@ -118,7 +120,7 @@ static int set_src_dst_info(hwc_layer_t *cur, | |
dst_rect->w = win->rect_info.w; | |
dst_rect->h = win->rect_info.h; | |
- LOGV("%s::sr_x %d sr_y %d sr_w %d sr_h %d dr_x %d dr_y %d dr_w %d dr_h %d ", | |
+ ALOGV("%s::sr_x %d sr_y %d sr_w %d sr_h %d dr_x %d dr_y %d dr_w %d dr_h %d ", | |
__func__, src_rect->x, src_rect->y, src_rect->w, src_rect->h, | |
dst_rect->x, dst_rect->y, dst_rect->w, dst_rect->h); | |
@@ -128,7 +130,7 @@ static int set_src_dst_info(hwc_layer_t *cur, | |
static int get_hwc_compos_decision(hwc_layer_t* cur) | |
{ | |
if(cur->flags & HWC_SKIP_LAYER || !cur->handle) { | |
- LOGV("%s::is_skip_layer %d cur->handle %x", | |
+ ALOGV("%s::is_skip_layer %d cur->handle %x", | |
__func__, cur->flags & HWC_SKIP_LAYER, (uint32_t)cur->handle); | |
return HWC_FRAMEBUFFER; | |
} | |
@@ -156,7 +158,7 @@ static int get_hwc_compos_decision(hwc_layer_t* cur) | |
else | |
compositionType = HWC_FRAMEBUFFER; | |
- LOGV("%s::compositionType %d bpp %d format %x usage %x", | |
+ ALOGV("%s::compositionType %d bpp %d format %x usage %x", | |
__func__,compositionType, prev_handle->uiBpp, prev_handle->iFormat, | |
prev_handle->usage & GRALLOC_USAGE_PHYS_CONTIG); | |
@@ -196,7 +198,7 @@ static int assign_overlay_window(struct hwc_context_t *ctx, | |
win->layer_index = layer_idx; | |
win->status = HWC_WIN_RESERVED; | |
- LOGV("%s:: win_x %d win_y %d win_w %d win_h %d lay_idx %d win_idx %d", | |
+ ALOGV("%s:: win_x %d win_y %d win_w %d win_h %d lay_idx %d win_idx %d", | |
__func__, win->rect_info.x, win->rect_info.y, win->rect_info.w, | |
win->rect_info.h, win->layer_index, win_idx ); | |
@@ -231,7 +233,7 @@ static int hwc_prepare(hwc_composer_device_t *dev, hwc_layer_list_t* list) | |
} | |
ctx->num_of_hwc_layer = 0; | |
ctx->num_of_fb_layer = 0; | |
- LOGV("%s:: hwc_prepare list->numHwLayers %d", __func__, list->numHwLayers); | |
+ ALOGV("%s:: hwc_prepare list->numHwLayers %d", __func__, list->numHwLayers); | |
for (int i = 0; i < list->numHwLayers ; i++) { | |
hwc_layer_t* cur = &list->hwLayers[i]; | |
@@ -262,7 +264,7 @@ static int hwc_prepare(hwc_composer_device_t *dev, hwc_layer_list_t* list) | |
} | |
if(list->numHwLayers != (ctx->num_of_fb_layer + ctx->num_of_hwc_layer)) | |
- LOGV("%s:: numHwLayers %d num_of_fb_layer %d num_of_hwc_layer %d ", | |
+ ALOGV("%s:: numHwLayers %d num_of_fb_layer %d num_of_hwc_layer %d ", | |
__func__, list->numHwLayers, ctx->num_of_fb_layer, | |
ctx->num_of_hwc_layer); | |
@@ -292,7 +294,6 @@ static int hwc_set(hwc_composer_device_t *dev, | |
struct sec_rect src_rect; | |
struct sec_rect dst_rect; | |
- | |
if (dpy == NULL && sur == NULL && list == NULL) { | |
// release our resources, the screen is turning off | |
// in our case, there is nothing to do. | |
@@ -358,7 +359,7 @@ static int hwc_set(hwc_composer_device_t *dev, | |
ret = gpsGrallocModule->GetPhyAddrs(gpsGrallocModule, | |
cur->handle, phyAddr); | |
if (ret) { | |
- LOGE("%s::GetPhyAddrs fail : ret=%d\n", __func__, ret); | |
+ ALOGE("%s::GetPhyAddrs fail : ret=%d\n", __func__, ret); | |
skipped_window_mask |= (1 << i); | |
continue; | |
} | |
@@ -370,7 +371,7 @@ static int hwc_set(hwc_composer_device_t *dev, | |
ret = runFimc(ctx, &src_img, &src_rect, &dst_img, &dst_rect, | |
phyAddr, cur->transform); | |
if (ret < 0){ | |
- LOGE("%s::runFimc fail : ret=%d\n", __func__, ret); | |
+ ALOGE("%s::runFimc fail : ret=%d\n", __func__, ret); | |
skipped_window_mask |= (1 << i); | |
continue; | |
} | |
@@ -378,7 +379,7 @@ static int hwc_set(hwc_composer_device_t *dev, | |
if (win->set_win_flag == 1) { | |
/* turnoff the window and set the window position with new conf... */ | |
if (window_set_pos(win) < 0) { | |
- LOGE("%s::window_set_pos is failed : %s", __func__, | |
+ ALOGE("%s::window_set_pos is failed : %s", __func__, | |
strerror(errno)); | |
skipped_window_mask |= (1 << i); | |
continue; | |
@@ -400,13 +401,13 @@ static int hwc_set(hwc_composer_device_t *dev, | |
window_show(win); | |
} else { | |
- LOGE("%s:: error : layer %d compositionType should have been \ | |
+ ALOGE("%s:: error : layer %d compositionType should have been \ | |
HWC_OVERLAY", __func__, win->layer_index); | |
skipped_window_mask |= (1 << i); | |
continue; | |
} | |
} else { | |
- LOGE("%s:: error : window status should have been HWC_WIN_RESERVED \ | |
+ ALOGE("%s:: error : window status should have been HWC_WIN_RESERVED \ | |
by now... ", __func__); | |
skipped_window_mask |= (1 << i); | |
continue; | |
@@ -424,6 +425,94 @@ static int hwc_set(hwc_composer_device_t *dev, | |
return 0; | |
} | |
+static void hwc_registerProcs(struct hwc_composer_device* dev, | |
+ hwc_procs_t const* procs) | |
+{ | |
+ struct hwc_context_t* ctx = (struct hwc_context_t*)dev; | |
+ ctx->procs = const_cast<hwc_procs_t *>(procs); | |
+} | |
+ | |
+static int hwc_query(struct hwc_composer_device* dev, | |
+ int what, int* value) | |
+{ | |
+ struct hwc_context_t* ctx = (struct hwc_context_t*)dev; | |
+ | |
+ switch (what) { | |
+ case HWC_BACKGROUND_LAYER_SUPPORTED: | |
+ // we don't support the background layer yet | |
+ value[0] = 0; | |
+ break; | |
+ case HWC_VSYNC_PERIOD: | |
+ // vsync period in nanosecond | |
+ value[0] = 1000000000.0 / gpsGrallocModule->psFrameBufferDevice->base.fps; | |
+ break; | |
+ default: | |
+ // unsupported query | |
+ return -EINVAL; | |
+ } | |
+ return 0; | |
+} | |
+ | |
+static int hwc_eventControl(struct hwc_composer_device* dev, | |
+ int event, int enabled) | |
+{ | |
+ struct hwc_context_t* ctx = (struct hwc_context_t*)dev; | |
+ | |
+ switch (event) { | |
+ case HWC_EVENT_VSYNC: | |
+ int val = !!enabled; | |
+ int err = ioctl(ctx->global_lcd_win.fd, S3CFB_SET_VSYNC_INT, &val); | |
+ if (err < 0) | |
+ return -errno; | |
+ | |
+ return 0; | |
+ } | |
+ | |
+ return -EINVAL; | |
+} | |
+ | |
+void handle_vsync_uevent(hwc_context_t *ctx, const char *buff, int len) | |
+{ | |
+ uint64_t timestamp = 0; | |
+ const char *s = buff; | |
+ | |
+ if(!ctx->procs || !ctx->procs->vsync) | |
+ return; | |
+ | |
+ s += strlen(s) + 1; | |
+ | |
+ while(*s) { | |
+ if (!strncmp(s, "VSYNC=", strlen("VSYNC="))) | |
+ timestamp = strtoull(s + strlen("VSYNC="), NULL, 0); | |
+ | |
+ s += strlen(s) + 1; | |
+ if (s - buff >= len) | |
+ break; | |
+ } | |
+ | |
+ ctx->procs->vsync(ctx->procs, 0, timestamp); | |
+} | |
+ | |
+static void *hwc_vsync_thread(void *data) | |
+{ | |
+ hwc_context_t *ctx = (hwc_context_t *)(data); | |
+ char uevent_desc[4096]; | |
+ memset(uevent_desc, 0, sizeof(uevent_desc)); | |
+ | |
+ setpriority(PRIO_PROCESS, 0, HAL_PRIORITY_URGENT_DISPLAY); | |
+ | |
+ uevent_init(); | |
+ while(true) { | |
+ int len = uevent_next_event(uevent_desc, sizeof(uevent_desc) - 2); | |
+ | |
+ bool vsync = !strcmp(uevent_desc, "change@/devices/platform/s3cfb"); | |
+ if(vsync) | |
+ handle_vsync_uevent(ctx, uevent_desc, len); | |
+ } | |
+ | |
+ return NULL; | |
+} | |
+ | |
static int hwc_device_close(struct hw_device_t *dev) | |
{ | |
struct hwc_context_t* ctx = (struct hwc_context_t*)dev; | |
@@ -432,26 +521,38 @@ static int hwc_device_close(struct hw_device_t *dev) | |
if (ctx) { | |
if (destroyFimc(&ctx->fimc) < 0) { | |
- LOGE("%s::destroyFimc fail", __func__); | |
+ ALOGE("%s::destroyFimc fail", __func__); | |
+ ret = -1; | |
+ } | |
+ | |
+ if (window_close(&ctx->global_lcd_win) < 0) { | |
+ ALOGE("%s::window_close() fail", __func__); | |
ret = -1; | |
} | |
for (i = 0; i < NUM_OF_WIN; i++) { | |
if (window_close(&ctx->win[i]) < 0) { | |
- LOGE("%s::window_close() fail", __func__); | |
+ ALOGE("%s::window_close() fail", __func__); | |
ret = -1; | |
} | |
} | |
+ // TODO: stop vsync_thread | |
+ | |
free(ctx); | |
} | |
return ret; | |
} | |
+static const struct hwc_methods hwc_methods = { | |
+ eventControl: hwc_eventControl | |
+}; | |
+ | |
static int hwc_device_open(const struct hw_module_t* module, const char* name, | |
struct hw_device_t** device) | |
{ | |
int status = 0; | |
+ int err; | |
struct hwc_win_info_t *win; | |
if(hw_get_module(GRALLOC_HARDWARE_MODULE_ID, | |
@@ -472,32 +573,42 @@ static int hwc_device_open(const struct hw_module_t* module, const char* name, | |
/* initialize the procs */ | |
dev->device.common.tag = HARDWARE_DEVICE_TAG; | |
- dev->device.common.version = 0; | |
+ dev->device.common.version = HWC_DEVICE_API_VERSION_0_3; | |
dev->device.common.module = const_cast<hw_module_t*>(module); | |
dev->device.common.close = hwc_device_close; | |
dev->device.prepare = hwc_prepare; | |
dev->device.set = hwc_set; | |
+ dev->device.registerProcs = hwc_registerProcs; | |
+ dev->device.query = hwc_query; | |
+ dev->device.methods = &hwc_methods; | |
*device = &dev->device.common; | |
/* initializing */ | |
memset(&(dev->fimc), 0, sizeof(s5p_fimc_t)); | |
- dev->fimc.dev_fd = -1; | |
+ dev->fimc.dev_fd = -1; | |
/* open WIN0 & WIN1 here */ | |
for (int i = 0; i < NUM_OF_WIN; i++) { | |
if (window_open(&(dev->win[i]), i) < 0) { | |
- LOGE("%s:: Failed to open window %d device ", __func__, i); | |
+ ALOGE("%s:: Failed to open window %d device ", __func__, i); | |
status = -EINVAL; | |
goto err; | |
} | |
} | |
+ /* open window 2, used to query global LCD info */ | |
+ if (window_open(&dev->global_lcd_win, 2) < 0) { | |
+ ALOGE("%s:: Failed to open window 2 device ", __func__); | |
+ status = -EINVAL; | |
+ goto err; | |
+ } | |
+ | |
/* get default window config */ | |
- if (window_get_global_lcd_info(&dev->lcd_info) < 0) { | |
- LOGE("%s::window_get_global_lcd_info is failed : %s", | |
- __func__, strerror(errno)); | |
+ if (window_get_global_lcd_info(dev) < 0) { | |
+ ALOGE("%s::window_get_global_lcd_info is failed : %s", | |
+ __func__, strerror(errno)); | |
status = -EINVAL; | |
goto err; | |
} | |
@@ -516,15 +627,15 @@ static int hwc_device_open(const struct hw_module_t* module, const char* name, | |
win->rect_info.h = win->var_info.yres; | |
if (window_set_pos(win) < 0) { | |
- LOGE("%s::window_set_pos is failed : %s", | |
- __func__, strerror(errno)); | |
+ ALOGE("%s::window_set_pos is failed : %s", | |
+ __func__, strerror(errno)); | |
status = -EINVAL; | |
goto err; | |
} | |
if (window_get_info(win) < 0) { | |
- LOGE("%s::window_get_info is failed : %s", | |
- __func__, strerror(errno)); | |
+ ALOGE("%s::window_get_info is failed : %s", | |
+ __func__, strerror(errno)); | |
status = -EINVAL; | |
goto err; | |
} | |
@@ -532,35 +643,45 @@ static int hwc_device_open(const struct hw_module_t* module, const char* name, | |
win->size = win->fix_info.line_length * win->var_info.yres; | |
if (!win->fix_info.smem_start){ | |
- LOGE("%s:: win-%d failed to get the reserved memory", __func__, i); | |
+ ALOGE("%s:: win-%d failed to get the reserved memory", __func__, i); | |
status = -EINVAL; | |
goto err; | |
} | |
for (int j = 0; j < NUM_OF_WIN_BUF; j++) { | |
win->addr[j] = win->fix_info.smem_start + (win->size * j); | |
- LOGI("%s::win-%d add[%d] %x ", __func__, i, j, win->addr[j]); | |
+ ALOGI("%s::win-%d add[%d] %x ", __func__, i, j, win->addr[j]); | |
} | |
} | |
/* open pp */ | |
if (createFimc(&dev->fimc) < 0) { | |
- LOGE("%s::creatFimc() fail", __func__); | |
+ ALOGE("%s::creatFimc() fail", __func__); | |
status = -EINVAL; | |
goto err; | |
} | |
- LOGD("%s:: success\n", __func__); | |
+ err = pthread_create(&dev->vsync_thread, NULL, hwc_vsync_thread, dev); | |
+ if (err) { | |
+ ALOGE("%s::pthread_create() failed : %s", __func__, strerror(err)); | |
+ status = -err; | |
+ goto err; | |
+ } | |
+ | |
+ ALOGD("%s:: success\n", __func__); | |
return 0; | |
err: | |
if (destroyFimc(&dev->fimc) < 0) | |
- LOGE("%s::destroyFimc() fail", __func__); | |
+ ALOGE("%s::destroyFimc() fail", __func__); | |
+ | |
+ if (window_close(&dev->global_lcd_win) < 0) | |
+ ALOGE("%s::window_close() fail", __func__); | |
for (int i = 0; i < NUM_OF_WIN; i++) { | |
if (window_close(&dev->win[i]) < 0) | |
- LOGE("%s::window_close() fail", __func__); | |
+ ALOGE("%s::window_close() fail", __func__); | |
} | |
return status; | |
diff --git a/libhwcomposer/SecHWCUtils.cpp b/libhwcomposer/SecHWCUtils.cpp | |
index 4a5b7b4..2b3f09f 100644 | |
--- a/libhwcomposer/SecHWCUtils.cpp | |
+++ b/libhwcomposer/SecHWCUtils.cpp | |
@@ -44,7 +44,7 @@ int window_open(struct hwc_win_info_t *win, int id) | |
case 2: | |
break; | |
default: | |
- LOGE("%s::id(%d) is weird", __func__, id); | |
+ ALOGE("%s::id(%d) is weird", __func__, id); | |
goto error; | |
} | |
@@ -52,7 +52,7 @@ int window_open(struct hwc_win_info_t *win, int id) | |
win->fd = open(name, O_RDWR); | |
if (win->fd < 0) { | |
- LOGE("%s::Failed to open window device (%s) : %s", | |
+ ALOGE("%s::Failed to open window device (%s) : %s", | |
__func__, strerror(errno), device_template); | |
goto error; | |
} | |
@@ -93,7 +93,7 @@ int window_set_pos(struct hwc_win_info_t *win) | |
win->var_info.activate |= FB_ACTIVATE_FORCE; | |
if (ioctl(win->fd, FBIOPUT_VSCREENINFO, &(win->var_info)) < 0) { | |
- LOGE("%s::FBIOPUT_VSCREENINFO(%d, %d) fail", | |
+ ALOGE("%s::FBIOPUT_VSCREENINFO(%d, %d) fail", | |
__func__, win->rect_info.w, win->rect_info.h); | |
return -1; | |
} | |
@@ -102,7 +102,7 @@ int window_set_pos(struct hwc_win_info_t *win) | |
window.y = win->rect_info.y; | |
if (ioctl(win->fd, SECFB_WIN_POSITION, &window) < 0) { | |
- LOGE("%s::S3CFB_WIN_POSITION(%d, %d) fail", | |
+ ALOGE("%s::S3CFB_WIN_POSITION(%d, %d) fail", | |
__func__, window.x, window.y); | |
return -1; | |
} | |
@@ -113,7 +113,7 @@ int window_set_pos(struct hwc_win_info_t *win) | |
int window_get_info(struct hwc_win_info_t *win) | |
{ | |
if (ioctl(win->fd, FBIOGET_FSCREENINFO, &win->fix_info) < 0) { | |
- LOGE("FBIOGET_FSCREENINFO failed : %s", strerror(errno)); | |
+ ALOGE("FBIOGET_FSCREENINFO failed : %s", strerror(errno)); | |
goto error; | |
} | |
@@ -132,7 +132,7 @@ int window_pan_display(struct hwc_win_info_t *win) | |
lcd_info->yoffset = lcd_info->yres * win->buf_index; | |
if (ioctl(win->fd, FBIOPAN_DISPLAY, lcd_info) < 0) { | |
- LOGE("%s::FBIOPAN_DISPLAY(%d / %d / %d) fail(%s)", | |
+ ALOGE("%s::FBIOPAN_DISPLAY(%d / %d / %d) fail(%s)", | |
__func__, lcd_info->yres, win->buf_index, lcd_info->yres_virtual, | |
strerror(errno)); | |
return -1; | |
@@ -144,7 +144,7 @@ int window_show(struct hwc_win_info_t *win) | |
{ | |
if(win->power_state == 0) { | |
if (ioctl(win->fd, FBIOBLANK, FB_BLANK_UNBLANK) < 0) { | |
- LOGE("%s: FBIOBLANK failed : (%d:%s)", __func__, win->fd, | |
+ ALOGE("%s: FBIOBLANK failed : (%d:%s)", __func__, win->fd, | |
strerror(errno)); | |
return -1; | |
} | |
@@ -157,7 +157,7 @@ int window_hide(struct hwc_win_info_t *win) | |
{ | |
if (win->power_state == 1) { | |
if (ioctl(win->fd, FBIOBLANK, FB_BLANK_POWERDOWN) < 0) { | |
- LOGE("%s::FBIOBLANK failed : (%d:%s)", | |
+ ALOGE("%s::FBIOBLANK failed : (%d:%s)", | |
__func__, win->fd, strerror(errno)); | |
return -1; | |
} | |
@@ -166,40 +166,30 @@ int window_hide(struct hwc_win_info_t *win) | |
return 0; | |
} | |
-int window_get_global_lcd_info(struct fb_var_screeninfo *lcd_info) | |
+int window_get_global_lcd_info(struct hwc_context_t *ctx) | |
{ | |
struct hwc_win_info_t win; | |
int ret = 0; | |
- if (window_open(&win, 2) < 0) { | |
- LOGE("%s:: Failed to open window 2 device ", __func__); | |
+ if (ioctl(ctx->global_lcd_win.fd, FBIOGET_VSCREENINFO, &ctx->lcd_info) < 0) { | |
+ ALOGE("FBIOGET_VSCREENINFO failed : %s", strerror(errno)); | |
return -1; | |
} | |
- if (ioctl(win.fd, FBIOGET_VSCREENINFO, lcd_info) < 0) { | |
- LOGE("FBIOGET_VSCREENINFO failed : %s", strerror(errno)); | |
- ret = -1; | |
- goto fun_err; | |
- } | |
- | |
- if (lcd_info->xres == 0) { | |
- lcd_info->xres = DEFAULT_LCD_WIDTH; | |
- lcd_info->xres_virtual = DEFAULT_LCD_WIDTH; | |
+ if (ctx->lcd_info.xres == 0) { | |
+ ctx->lcd_info.xres = DEFAULT_LCD_WIDTH; | |
+ ctx->lcd_info.xres_virtual = DEFAULT_LCD_WIDTH; | |
} | |
- if (lcd_info->yres == 0) { | |
- lcd_info->yres = DEFAULT_LCD_HEIGHT; | |
- lcd_info->yres_virtual = DEFAULT_LCD_HEIGHT * NUM_OF_WIN_BUF; | |
+ if (ctx->lcd_info.yres == 0) { | |
+ ctx->lcd_info.yres = DEFAULT_LCD_HEIGHT; | |
+ ctx->lcd_info.yres_virtual = DEFAULT_LCD_HEIGHT * NUM_OF_WIN_BUF; | |
} | |
- if (lcd_info->bits_per_pixel == 0) | |
- lcd_info->bits_per_pixel = DEFAULT_LCD_BPP; | |
+ if (ctx->lcd_info.bits_per_pixel == 0) | |
+ ctx->lcd_info.bits_per_pixel = DEFAULT_LCD_BPP; | |
-fun_err: | |
- if (window_close(&win) < 0) | |
- LOGE("%s::window2 close fail", __func__); | |
- | |
- return ret; | |
+ return 0; | |
} | |
int fimc_v4l2_set_src(int fd, unsigned int hw_ver, s5p_fimc_img_info *src) | |
@@ -219,7 +209,7 @@ int fimc_v4l2_set_src(int fd, unsigned int hw_ver, s5p_fimc_img_info *src) | |
fmt.fmt.pix.field = V4L2_FIELD_NONE; | |
if (ioctl (fd, VIDIOC_S_FMT, &fmt) < 0) { | |
- LOGE("VIDIOC_S_FMT failed : errno=%d (%s) : fd=%d", errno, | |
+ ALOGE("VIDIOC_S_FMT failed : errno=%d (%s) : fd=%d", errno, | |
strerror(errno), fd); | |
return -1; | |
} | |
@@ -238,7 +228,7 @@ int fimc_v4l2_set_src(int fd, unsigned int hw_ver, s5p_fimc_img_info *src) | |
crop.c.width = src->width; | |
crop.c.height = src->height; | |
if (ioctl(fd, VIDIOC_S_CROP, &crop) < 0) { | |
- LOGE("Error in video VIDIOC_S_CROP (%d, %d, %d, %d)", | |
+ ALOGE("Error in video VIDIOC_S_CROP (%d, %d, %d, %d)", | |
crop.c.left, crop.c.top, crop.c.width, crop.c.height); | |
return -1; | |
} | |
@@ -251,7 +241,7 @@ int fimc_v4l2_set_src(int fd, unsigned int hw_ver, s5p_fimc_img_info *src) | |
req.memory = V4L2_MEMORY_USERPTR; | |
if (ioctl (fd, VIDIOC_REQBUFS, &req) < 0) { | |
- LOGE("Error in VIDIOC_REQBUFS"); | |
+ ALOGE("Error in VIDIOC_REQBUFS"); | |
return -1; | |
} | |
@@ -275,21 +265,21 @@ int fimc_v4l2_set_dst(int fd, | |
vc.id = V4L2_CID_HFLIP; | |
vc.value = flag_h_flip; | |
if (ioctl(fd, VIDIOC_S_CTRL, &vc) < 0) { | |
- LOGE("Error in video VIDIOC_S_CTRL - flag_h_flip (%d)", flag_h_flip); | |
+ ALOGE("Error in video VIDIOC_S_CTRL - flag_h_flip (%d)", flag_h_flip); | |
return -1; | |
} | |
vc.id = V4L2_CID_VFLIP; | |
vc.value = flag_v_flip; | |
if (ioctl(fd, VIDIOC_S_CTRL, &vc) < 0) { | |
- LOGE("Error in video VIDIOC_S_CTRL - flag_v_flip (%d)", flag_v_flip); | |
+ ALOGE("Error in video VIDIOC_S_CTRL - flag_v_flip (%d)", flag_v_flip); | |
return -1; | |
} | |
vc.id = V4L2_CID_ROTATION; | |
vc.value = rotation; | |
if (ioctl(fd, VIDIOC_S_CTRL, &vc) < 0) { | |
- LOGE("Error in video VIDIOC_S_CTRL - rotation (%d)", rotation); | |
+ ALOGE("Error in video VIDIOC_S_CTRL - rotation (%d)", rotation); | |
return -1; | |
} | |
@@ -297,7 +287,7 @@ int fimc_v4l2_set_dst(int fd, | |
* set size, format & address for destination image (DMA-OUTPUT) | |
*/ | |
if (ioctl (fd, VIDIOC_G_FBUF, &fbuf) < 0) { | |
- LOGE("Error in video VIDIOC_G_FBUF"); | |
+ ALOGE("Error in video VIDIOC_G_FBUF"); | |
return -1; | |
} | |
@@ -306,7 +296,7 @@ int fimc_v4l2_set_dst(int fd, | |
fbuf.fmt.height = dst->full_height; | |
fbuf.fmt.pixelformat = dst->color_space; | |
if (ioctl (fd, VIDIOC_S_FBUF, &fbuf) < 0) { | |
- LOGE("Error in video VIDIOC_S_FBUF 0x%x %d %d %d", | |
+ ALOGE("Error in video VIDIOC_S_FBUF 0x%x %d %d %d", | |
(void *)addr, dst->full_width, dst->full_height, | |
dst->color_space); | |
return -1; | |
@@ -321,7 +311,7 @@ int fimc_v4l2_set_dst(int fd, | |
sFormat.fmt.win.w.width = dst->width; | |
sFormat.fmt.win.w.height = dst->height; | |
if (ioctl(fd, VIDIOC_S_FMT, &sFormat) < 0) { | |
- LOGE("Error in video VIDIOC_S_FMT %d %d %d %d", | |
+ ALOGE("Error in video VIDIOC_S_FMT %d %d %d %d", | |
dst->start_x, dst->start_y, dst->width, dst->height); | |
return -1; | |
} | |
@@ -332,7 +322,7 @@ int fimc_v4l2_set_dst(int fd, | |
int fimc_v4l2_stream_on(int fd, enum v4l2_buf_type type) | |
{ | |
if (ioctl (fd, VIDIOC_STREAMON, &type) < 0) { | |
- LOGE("Error in VIDIOC_STREAMON"); | |
+ ALOGE("Error in VIDIOC_STREAMON"); | |
return -1; | |
} | |
@@ -350,7 +340,7 @@ int fimc_v4l2_queue(int fd, struct fimc_buf *fimc_buf) | |
buf.index = 0; | |
if (ioctl (fd, VIDIOC_QBUF, &buf) < 0) { | |
- LOGE("Error in VIDIOC_QBUF"); | |
+ ALOGE("Error in VIDIOC_QBUF"); | |
return -1; | |
} | |
@@ -365,7 +355,7 @@ int fimc_v4l2_dequeue(int fd) | |
buf.memory = V4L2_MEMORY_USERPTR; | |
if (ioctl (fd, VIDIOC_DQBUF, &buf) < 0) { | |
- LOGE("Error in VIDIOC_DQBUF"); | |
+ ALOGE("Error in VIDIOC_DQBUF"); | |
return -1; | |
} | |
@@ -378,7 +368,7 @@ int fimc_v4l2_stream_off(int fd) | |
type = V4L2_BUF_TYPE_VIDEO_OUTPUT; | |
if (ioctl (fd, VIDIOC_STREAMOFF, &type) < 0) { | |
- LOGE("Error in VIDIOC_STREAMOFF"); | |
+ ALOGE("Error in VIDIOC_STREAMOFF"); | |
return -1; | |
} | |
@@ -394,7 +384,7 @@ int fimc_v4l2_clr_buf(int fd) | |
req.memory = V4L2_MEMORY_USERPTR; | |
if (ioctl (fd, VIDIOC_REQBUFS, &req) < 0) { | |
- LOGE("Error in VIDIOC_REQBUFS"); | |
+ ALOGE("Error in VIDIOC_REQBUFS"); | |
} | |
return 0; | |
@@ -405,30 +395,30 @@ int fimc_handle_oneshot(int fd, struct fimc_buf *fimc_buf) | |
int ret =0; | |
if (fimc_v4l2_stream_on(fd, V4L2_BUF_TYPE_VIDEO_OUTPUT) < 0) { | |
- LOGE("Fail : v4l2_stream_on()"); | |
+ ALOGE("Fail : v4l2_stream_on()"); | |
return -1; | |
} | |
if (fimc_v4l2_queue(fd, fimc_buf) < 0) { | |
- LOGE("Fail : v4l2_queue()"); | |
+ ALOGE("Fail : v4l2_queue()"); | |
ret = -1; | |
goto stream_off; | |
} | |
if (fimc_v4l2_dequeue(fd) < 0) { | |
- LOGE("Fail : v4l2_dequeue()"); | |
+ ALOGE("Fail : v4l2_dequeue()"); | |
ret = -1; | |
goto stream_off; | |
} | |
stream_off: | |
if (fimc_v4l2_stream_off(fd) < 0) { | |
- LOGE("Fail : v4l2_stream_off()"); | |
+ ALOGE("Fail : v4l2_stream_off()"); | |
return -1; | |
} | |
if (fimc_v4l2_clr_buf(fd) < 0) { | |
- LOGE("Fail : v4l2_clr_buf()"); | |
+ ALOGE("Fail : v4l2_clr_buf()"); | |
return -1; | |
} | |
@@ -448,12 +438,12 @@ static int get_src_phys_addr(struct hwc_context_t *ctx, | |
fimc->params.src.buf_addr_phy_cb = phyAddr[1]; | |
break; | |
default: | |
- LOGE("%s format error (format=0x%x)", __func__, | |
+ ALOGE("%s format error (format=0x%x)", __func__, | |
src_img->format); | |
return -1; | |
} | |
} else { | |
- LOGE("%s mem_type error (mem_type=%d)", __func__, src_img->mem_type); | |
+ ALOGE("%s mem_type error (mem_type=%d)", __func__, src_img->mem_type); | |
return -1; | |
} | |
@@ -468,7 +458,7 @@ static int get_dst_phys_addr(struct hwc_context_t *ctx, | |
if (HWC_PHYS_MEM_TYPE == dst_img->mem_type && 0 != dst_img->base) | |
dst_phys_addr = dst_img->base; | |
else { | |
- LOGE("%s::get_dst_phys_addr fail ", __func__); | |
+ ALOGE("%s::get_dst_phys_addr fail ", __func__); | |
dst_phys_addr = 0; | |
} | |
return dst_phys_addr; | |
@@ -639,7 +629,7 @@ static int runcFimcCore(struct hwc_context_t *ctx, | |
/* check minimum */ | |
if (src_rect->w < 16 || src_rect->h < 8) { | |
- LOGE("%s src size is not supported by fimc : f_w=%d f_h=%d x=%d y=%d \ | |
+ ALOGE("%s src size is not supported by fimc : f_w=%d f_h=%d x=%d y=%d \ | |
w=%d h=%d (ow=%d oh=%d) format=0x%x", __func__, | |
params->src.full_width, params->src.full_height, | |
params->src.start_x, params->src.start_y, params->src.width, | |
@@ -708,7 +698,7 @@ switch (rotate_value) { | |
/* check minimum */ | |
if (dst_rect->w < 8 || dst_rect->h < 4) { | |
- LOGE("%s dst size is not supported by fimc : \ | |
+ ALOGE("%s dst size is not supported by fimc : \ | |
f_w=%d f_h=%d x=%d y=%d w=%d h=%d (ow=%d oh=%d) format=0x%x", | |
__func__, params->dst.full_width, params->dst.full_height, | |
params->dst.start_x, params->dst.start_y, params->dst.width, | |
@@ -724,7 +714,7 @@ switch (rotate_value) { | |
((src_rect->w / dst_rect->w) > MAX_RESIZING_RATIO_LIMIT)) || | |
((dst_rect->w > src_rect->w) && | |
((dst_rect->w / src_rect->w) > MAX_RESIZING_RATIO_LIMIT))) { | |
- LOGE("%s over scaling limit : src.w=%d dst.w=%d (limit=%d)", | |
+ ALOGE("%s over scaling limit : src.w=%d dst.w=%d (limit=%d)", | |
__func__, src_rect->w, dst_rect->w, MAX_RESIZING_RATIO_LIMIT); | |
return -1; | |
} | |
@@ -789,24 +779,24 @@ int createFimc(s5p_fimc_t *fimc) | |
fimc->dev_fd = open(PP_DEVICE_DEV_NAME, O_RDWR); | |
if (fimc->dev_fd < 0) { | |
- LOGE("%s::Post processor open error (%d)", __func__, errno); | |
+ ALOGE("%s::Post processor open error (%d)", __func__, errno); | |
goto err; | |
} | |
} | |
/* check capability */ | |
if (ioctl(fimc->dev_fd, VIDIOC_QUERYCAP, &cap) < 0) { | |
- LOGE("VIDIOC_QUERYCAP failed"); | |
+ ALOGE("VIDIOC_QUERYCAP failed"); | |
goto err; | |
} | |
if (!(cap.capabilities & V4L2_CAP_STREAMING)) { | |
- LOGE("%d has no streaming support", fimc->dev_fd); | |
+ ALOGE("%d has no streaming support", fimc->dev_fd); | |
goto err; | |
} | |
if (!(cap.capabilities & V4L2_CAP_VIDEO_OUTPUT)) { | |
- LOGE("%d is no video output", fimc->dev_fd); | |
+ ALOGE("%d is no video output", fimc->dev_fd); | |
goto err; | |
} | |
@@ -815,7 +805,7 @@ int createFimc(s5p_fimc_t *fimc) | |
*/ | |
fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT; | |
if (ioctl(fimc->dev_fd, VIDIOC_G_FMT, &fmt) < 0) { | |
- LOGE("%s::Error in video VIDIOC_G_FMT", __func__); | |
+ ALOGE("%s::Error in video VIDIOC_G_FMT", __func__); | |
goto err; | |
} | |
@@ -823,7 +813,7 @@ int createFimc(s5p_fimc_t *fimc) | |
vc.value = 0; | |
if (ioctl(fimc->dev_fd, VIDIOC_G_CTRL, &vc) < 0) { | |
- LOGE("%s::Error in video VIDIOC_G_CTRL", __func__); | |
+ ALOGE("%s::Error in video VIDIOC_G_CTRL", __func__); | |
goto err; | |
} | |
fimc->hw_ver = vc.value; | |
diff --git a/libhwcomposer/SecHWCUtils.h b/libhwcomposer/SecHWCUtils.h | |
index 21d6598..d59c120 100644 | |
--- a/libhwcomposer/SecHWCUtils.h | |
+++ b/libhwcomposer/SecHWCUtils.h | |
@@ -113,8 +113,11 @@ struct hwc_context_t { | |
/* our private state goes below here */ | |
struct hwc_win_info_t win[NUM_OF_WIN]; | |
+ struct hwc_win_info_t global_lcd_win; | |
struct fb_var_screeninfo lcd_info; | |
s5p_fimc_t fimc; | |
+ hwc_procs_t *procs; | |
+ pthread_t vsync_thread; | |
unsigned int num_of_fb_layer; | |
unsigned int num_of_hwc_layer; | |
unsigned int num_of_fb_layer_prev; | |
@@ -127,7 +130,7 @@ int window_get_info(struct hwc_win_info_t *win); | |
int window_pan_display(struct hwc_win_info_t *win); | |
int window_show(struct hwc_win_info_t *win); | |
int window_hide(struct hwc_win_info_t *win); | |
-int window_get_global_lcd_info(struct fb_var_screeninfo *lcd_info); | |
+int window_get_global_lcd_info(struct hwc_context_t *ctx); | |
int createFimc(s5p_fimc_t *fimc); | |
int destroyFimc(s5p_fimc_t *fimc); | |
diff --git a/liblight/lights.c b/liblight/lights.c | |
index ee6416a..bee698a 100755 | |
--- a/liblight/lights.c | |
+++ b/liblight/lights.c | |
@@ -37,7 +37,7 @@ static int write_int(char const *path, int value) | |
already_warned = 0; | |
- LOGV("write_int: path %s, value %d", path, value); | |
+ ALOGV("write_int: path %s, value %d", path, value); | |
fd = open(path, O_RDWR); | |
if (fd >= 0) { | |
@@ -48,7 +48,7 @@ static int write_int(char const *path, int value) | |
return amt == -1 ? -errno : 0; | |
} else { | |
if (already_warned == 0) { | |
- LOGE("write_int failed to open %s\n", path); | |
+ ALOGE("write_int failed to open %s\n", path); | |
already_warned = 1; | |
} | |
return -errno; | |
@@ -78,7 +78,7 @@ static int set_light_backlight(struct light_device_t *dev, | |
static int close_lights(struct light_device_t *dev) | |
{ | |
- LOGV("close_light is called"); | |
+ ALOGV("close_light is called"); | |
if (dev) | |
free(dev); | |
@@ -91,7 +91,7 @@ static int open_lights(const struct hw_module_t *module, char const *name, | |
int (*set_light)(struct light_device_t *dev, | |
struct light_state_t const *state); | |
- LOGV("open_lights: open with %s", name); | |
+ ALOGV("open_lights: open with %s", name); | |
if (0 == strcmp(LIGHT_ID_BACKLIGHT, name)) | |
set_light = set_light_backlight; | |
@@ -118,7 +118,7 @@ static struct hw_module_methods_t lights_module_methods = { | |
.open = open_lights, | |
}; | |
-const struct hw_module_t HAL_MODULE_INFO_SYM = { | |
+struct hw_module_t HAL_MODULE_INFO_SYM = { | |
.tag = HARDWARE_MODULE_TAG, | |
.version_major = 1, | |
.version_minor = 0, | |
diff --git a/libs3cjpeg/JpegEncoder.cpp b/libs3cjpeg/JpegEncoder.cpp | |
index 1361bca..d2b6a6f 100644 | |
--- a/libs3cjpeg/JpegEncoder.cpp | |
+++ b/libs3cjpeg/JpegEncoder.cpp | |
@@ -40,7 +40,7 @@ JpegEncoder::JpegEncoder() : available(false) | |
mDevFd = open(JPG_DRIVER_NAME, O_RDWR); | |
if (mDevFd < 0) { | |
- LOGE("Failed to open the device"); | |
+ ALOGE("Failed to open the device"); | |
return; | |
} | |
@@ -52,20 +52,20 @@ JpegEncoder::JpegEncoder() : available(false) | |
0); | |
if (mArgs.mmapped_addr == MAP_FAILED) { | |
- LOGE("Failed to mmap"); | |
+ ALOGE("Failed to mmap"); | |
return; | |
} | |
mArgs.enc_param = new jpg_enc_proc_param; | |
if (mArgs.enc_param == NULL) { | |
- LOGE("Failed to allocate the memory for enc_param"); | |
+ ALOGE("Failed to allocate the memory for enc_param"); | |
return; | |
} | |
memset(mArgs.enc_param, 0, sizeof(jpg_enc_proc_param)); | |
mArgs.thumb_enc_param = new jpg_enc_proc_param; | |
if (mArgs.thumb_enc_param == NULL) { | |
- LOGE("Failed to allocate the memory for thumb_enc_param"); | |
+ ALOGE("Failed to allocate the memory for thumb_enc_param"); | |
delete mArgs.enc_param; | |
return; | |
} | |
@@ -154,12 +154,12 @@ jpg_return_status JpegEncoder::setConfig(jpeg_conf type, int32_t value) | |
break; | |
default: | |
- LOGE("Invalid Config type"); | |
+ ALOGE("Invalid Config type"); | |
ret = ERR_UNKNOWN; | |
} | |
if (ret == JPG_FAIL) | |
- LOGE("Invalid value(%d) for %d type", value, type); | |
+ ALOGE("Invalid value(%d) for %d type", value, type); | |
return ret; | |
} | |
@@ -170,7 +170,7 @@ void* JpegEncoder::getInBuf(uint64_t size) | |
return NULL; | |
if (size > JPG_FRAME_BUF_SIZE) { | |
- LOGE("The buffer size requested is too large"); | |
+ ALOGE("The buffer size requested is too large"); | |
return NULL; | |
} | |
mArgs.in_buf = (char *)ioctl(mDevFd, IOCTL_JPG_GET_FRMBUF, mArgs.mmapped_addr); | |
@@ -183,7 +183,7 @@ void* JpegEncoder::getOutBuf(uint64_t *size) | |
return NULL; | |
if (mArgs.enc_param->file_size <= 0) { | |
- LOGE("The buffer requested doesn't have data"); | |
+ ALOGE("The buffer requested doesn't have data"); | |
return NULL; | |
} | |
mArgs.out_buf = (char *)ioctl(mDevFd, IOCTL_JPG_GET_STRBUF, mArgs.mmapped_addr); | |
@@ -197,7 +197,7 @@ void* JpegEncoder::getThumbInBuf(uint64_t size) | |
return NULL; | |
if (size > JPG_FRAME_THUMB_BUF_SIZE) { | |
- LOGE("The buffer size requested is too large"); | |
+ ALOGE("The buffer size requested is too large"); | |
return NULL; | |
} | |
mArgs.in_thumb_buf = (char *)ioctl(mDevFd, IOCTL_JPG_GET_THUMB_FRMBUF, mArgs.mmapped_addr); | |
@@ -210,7 +210,7 @@ void* JpegEncoder::getThumbOutBuf(uint64_t *size) | |
return NULL; | |
if (mArgs.thumb_enc_param->file_size <= 0) { | |
- LOGE("The buffer requested doesn't have data"); | |
+ ALOGE("The buffer requested doesn't have data"); | |
return NULL; | |
} | |
mArgs.out_thumb_buf = (char *)ioctl(mDevFd, IOCTL_JPG_GET_THUMB_STRBUF, mArgs.mmapped_addr); | |
@@ -223,7 +223,7 @@ jpg_return_status JpegEncoder::encode(unsigned int *size, exif_attribute_t *exif | |
if (!available) | |
return JPG_FAIL; | |
- LOGD("encode E"); | |
+ ALOGD("encode E"); | |
jpg_return_status ret = JPG_FAIL; | |
unsigned char *exifOut = NULL; | |
@@ -236,7 +236,7 @@ jpg_return_status JpegEncoder::encode(unsigned int *size, exif_attribute_t *exif | |
param->enc_type = JPG_MAIN; | |
ret = (jpg_return_status)ioctl(mDevFd, IOCTL_JPG_ENCODE, &mArgs); | |
if (ret != JPG_SUCCESS) { | |
- LOGE("Failed to encode main image"); | |
+ ALOGE("Failed to encode main image"); | |
return ret; | |
} | |
@@ -249,7 +249,7 @@ jpg_return_status JpegEncoder::encode(unsigned int *size, exif_attribute_t *exif | |
if (exifInfo->enableThumb) { | |
ret = encodeThumbImg(&thumbLen); | |
if (ret != JPG_SUCCESS) { | |
- LOGE("Failed to encode for thumbnail image"); | |
+ ALOGE("Failed to encode for thumbnail image"); | |
bufSize = EXIF_FILE_SIZE; | |
exifInfo->enableThumb = false; | |
} else { | |
@@ -264,14 +264,14 @@ jpg_return_status JpegEncoder::encode(unsigned int *size, exif_attribute_t *exif | |
exifOut = new unsigned char[bufSize]; | |
if (exifOut == NULL) { | |
- LOGE("Failed to allocate for exifOut"); | |
+ ALOGE("Failed to allocate for exifOut"); | |
return ret; | |
} | |
memset(exifOut, 0, bufSize); | |
ret = makeExif (exifOut, exifInfo, &exifLen); | |
if (ret != JPG_SUCCESS) { | |
- LOGE("Failed to make EXIF"); | |
+ ALOGE("Failed to make EXIF"); | |
delete[] exifOut; | |
return ret; | |
} | |
@@ -295,7 +295,7 @@ jpg_return_status JpegEncoder::encode(unsigned int *size, exif_attribute_t *exif | |
fclose(fout); | |
#endif | |
- LOGD("encode X"); | |
+ ALOGD("encode X"); | |
return ret; | |
} | |
@@ -305,7 +305,7 @@ jpg_return_status JpegEncoder::encodeThumbImg(unsigned int *size, bool useMain) | |
if (!available) | |
return JPG_FAIL; | |
- LOGD("encodeThumbImg E"); | |
+ ALOGD("encodeThumbImg E"); | |
jpg_return_status ret = JPG_FAIL; | |
jpg_enc_proc_param *param = mArgs.thumb_enc_param; | |
@@ -313,7 +313,7 @@ jpg_return_status JpegEncoder::encodeThumbImg(unsigned int *size, bool useMain) | |
if (useMain) { | |
mArgs.in_thumb_buf = (char *)getThumbInBuf(param->width*param->height*2); | |
if (mArgs.in_thumb_buf == NULL) { | |
- LOGE("Failed to get the buffer for thumbnail"); | |
+ ALOGE("Failed to get the buffer for thumbnail"); | |
return JPG_FAIL; | |
} | |
@@ -334,7 +334,7 @@ jpg_return_status JpegEncoder::encodeThumbImg(unsigned int *size, bool useMain) | |
mArgs.enc_param->enc_type = JPG_THUMBNAIL; | |
ret = (jpg_return_status)ioctl(mDevFd, IOCTL_JPG_ENCODE, &mArgs); | |
if (ret != JPG_SUCCESS) { | |
- LOGE("Failed to encode for thumbnail"); | |
+ ALOGE("Failed to encode for thumbnail"); | |
return JPG_FAIL; | |
} | |
@@ -350,7 +350,7 @@ jpg_return_status JpegEncoder::encodeThumbImg(unsigned int *size, bool useMain) | |
fclose(fout); | |
#endif | |
- LOGD("encodeThumbImg X"); | |
+ ALOGD("encodeThumbImg X"); | |
return JPG_SUCCESS; | |
} | |
@@ -363,7 +363,7 @@ jpg_return_status JpegEncoder::makeExif (unsigned char *exifOut, | |
if (!available) | |
return JPG_FAIL; | |
- LOGD("makeExif E"); | |
+ ALOGD("makeExif E"); | |
unsigned char *pCur, *pApp1Start, *pIfdStart, *pGpsIfdPtr, *pNextIfdOffset; | |
unsigned int tmp, LongerTagOffest = 0; | |
@@ -595,7 +595,7 @@ jpg_return_status JpegEncoder::makeExif (unsigned char *exifOut, | |
unsigned char size_mm[2] = {(tmp >> 8) & 0xFF, tmp & 0xFF}; | |
memcpy(pApp1Start, size_mm, 2); | |
- LOGD("makeExif X"); | |
+ ALOGD("makeExif X"); | |
return JPG_SUCCESS; | |
} | |
@@ -625,20 +625,20 @@ jpg_return_status JpegEncoder::checkMcu(sample_mode_t sampleMode, | |
break; | |
default: | |
- LOGE("Invaild sample mode"); | |
+ ALOGE("Invaild sample mode"); | |
return JPG_FAIL; | |
} | |
if (expectedWidth == width && expectedHeight == height) | |
return JPG_SUCCESS; | |
- LOGW("The image is not matched for MCU"); | |
+ ALOGW("The image is not matched for MCU"); | |
uint32_t size = width*height * 2; | |
char *srcBuf, *dstBuf; | |
if ((srcBuf = new char[size]) == NULL) { | |
- LOGE("Failed to allocate for srcBuf"); | |
+ ALOGE("Failed to allocate for srcBuf"); | |
return JPG_FAIL; | |
} | |
@@ -662,7 +662,7 @@ bool JpegEncoder::pad(char *srcBuf, uint32_t srcWidth, uint32_t srcHight, | |
return false; | |
if (srcBuf == NULL || dstBuf == NULL) { | |
- LOGE("srcBuf or dstBuf is NULL"); | |
+ ALOGE("srcBuf or dstBuf is NULL"); | |
return false; | |
} | |
@@ -671,7 +671,7 @@ bool JpegEncoder::pad(char *srcBuf, uint32_t srcWidth, uint32_t srcHight, | |
if ((int)(dstWidth - srcWidth) < 0 || | |
(int)(dstHight - srcHight) < 0) { | |
- LOGE("dstSize is smaller than srcSize"); | |
+ ALOGE("dstSize is smaller than srcSize"); | |
return false; | |
} | |
memset(dstBuf, 0, dstWidth*dstHight * 2); | |
@@ -693,7 +693,7 @@ bool JpegEncoder::scaleDownYuv422(char *srcBuf, uint32_t srcWidth, uint32_t srcH | |
int32_t x, y, src_y_start_pos, dst_pos, src_pos; | |
if (dstWidth % 2 != 0 || dstHight % 2 != 0){ | |
- LOGE("scale_down_yuv422: invalid width, height for scaling"); | |
+ ALOGE("scale_down_yuv422: invalid width, height for scaling"); | |
return false; | |
} | |
diff --git a/libsensors/AkmSensor.cpp b/libsensors/AkmSensor.cpp | |
index 34a24f2..ce28dbf 100644 | |
--- a/libsensors/AkmSensor.cpp | |
+++ b/libsensors/AkmSensor.cpp | |
@@ -163,7 +163,7 @@ int AkmSensor::enable(int32_t handle, int en) | |
else | |
err = akm_disable_sensor(sensor_type); | |
- LOGE_IF(err, "Could not change sensor state (%s)", strerror(-err)); | |
+ ALOGE_IF(err, "Could not change sensor state (%s)", strerror(-err)); | |
if (!err) { | |
mEnabled &= ~(1<<what); | |
mEnabled |= (uint32_t(flags)<<what); | |
@@ -200,7 +200,7 @@ int AkmSensor::loadAKMLibrary() | |
akm_enable_sensor = stub_enable_disable_sensor; | |
akm_disable_sensor = stub_enable_disable_sensor; | |
akm_set_delay = stub_set_delay; | |
- LOGE("AkmSensor: unable to load AKM Library, %s", dlerror()); | |
+ ALOGE("AkmSensor: unable to load AKM Library, %s", dlerror()); | |
return -ENOENT; | |
} | |
@@ -246,7 +246,7 @@ int AkmSensor::readEvents(sensors_event_t* data, int count) | |
mInputReader.next(); | |
} | |
} else { | |
- LOGE("AkmSensor: unknown event (type=%d, code=%d)", | |
+ ALOGE("AkmSensor: unknown event (type=%d, code=%d)", | |
type, event->code); | |
mInputReader.next(); | |
} | |
diff --git a/libsensors/GyroSensor.cpp b/libsensors/GyroSensor.cpp | |
index ecebb61..c54235d 100644 | |
--- a/libsensors/GyroSensor.cpp | |
+++ b/libsensors/GyroSensor.cpp | |
@@ -164,7 +164,7 @@ again: | |
count--; | |
} | |
} else { | |
- LOGE("GyroSensor: unknown event (type=%d, code=%d)", | |
+ ALOGE("GyroSensor: unknown event (type=%d, code=%d)", | |
type, event->code); | |
} | |
mInputReader.next(); | |
diff --git a/libsensors/LightSensor.cpp b/libsensors/LightSensor.cpp | |
index 5df7cd5..fe0b8b3 100644 | |
--- a/libsensors/LightSensor.cpp | |
+++ b/libsensors/LightSensor.cpp | |
@@ -136,7 +136,7 @@ int LightSensor::readEvents(sensors_event_t* data, int count) | |
numEventReceived++; | |
} | |
} else { | |
- LOGE("LightSensor: unknown event (type=%d, code=%d)", | |
+ ALOGE("LightSensor: unknown event (type=%d, code=%d)", | |
type, event->code); | |
} | |
mInputReader.next(); | |
diff --git a/libsensors/ProximitySensor.cpp b/libsensors/ProximitySensor.cpp | |
index 794a586..77a7f3c 100644 | |
--- a/libsensors/ProximitySensor.cpp | |
+++ b/libsensors/ProximitySensor.cpp | |
@@ -129,7 +129,7 @@ int ProximitySensor::readEvents(sensors_event_t* data, int count) | |
numEventReceived++; | |
} | |
} else { | |
- LOGE("ProximitySensor: unknown event (type=%d, code=%d)", | |
+ ALOGE("ProximitySensor: unknown event (type=%d, code=%d)", | |
type, event->code); | |
} | |
mInputReader.next(); | |
diff --git a/libsensors/SensorBase.cpp b/libsensors/SensorBase.cpp | |
index d448eb2..79b1ee2 100644 | |
--- a/libsensors/SensorBase.cpp | |
+++ b/libsensors/SensorBase.cpp | |
@@ -53,7 +53,7 @@ SensorBase::~SensorBase() { | |
int SensorBase::open_device() { | |
if (dev_fd<0 && dev_name) { | |
dev_fd = open(dev_name, O_RDONLY); | |
- LOGE_IF(dev_fd<0, "Couldn't open %s (%s)", dev_name, strerror(errno)); | |
+ ALOGE_IF(dev_fd<0, "Couldn't open %s (%s)", dev_name, strerror(errno)); | |
} | |
return 0; | |
} | |
@@ -123,6 +123,6 @@ int SensorBase::openInput(const char* inputName) { | |
} | |
} | |
closedir(dir); | |
- LOGE_IF(fd<0, "couldn't find '%s' input device", inputName); | |
+ ALOGE_IF(fd<0, "couldn't find '%s' input device", inputName); | |
return fd; | |
} | |
diff --git a/libsensors/sensors.cpp b/libsensors/sensors.cpp | |
index 847f3ca..850cbf9 100644 | |
--- a/libsensors/sensors.cpp | |
+++ b/libsensors/sensors.cpp | |
@@ -190,7 +190,7 @@ sensors_poll_context_t::sensors_poll_context_t() | |
int wakeFds[2]; | |
int result = pipe(wakeFds); | |
- LOGE_IF(result<0, "error creating wake pipe (%s)", strerror(errno)); | |
+ ALOGE_IF(result<0, "error creating wake pipe (%s)", strerror(errno)); | |
fcntl(wakeFds[0], F_SETFL, O_NONBLOCK); | |
fcntl(wakeFds[1], F_SETFL, O_NONBLOCK); | |
mWritePipeFd = wakeFds[1]; | |
@@ -215,7 +215,7 @@ int sensors_poll_context_t::activate(int handle, int enabled) { | |
if (enabled && !err) { | |
const char wakeMessage(WAKE_MESSAGE); | |
int result = write(mWritePipeFd, &wakeMessage, 1); | |
- LOGE_IF(result<0, "error sending wake message (%s)", strerror(errno)); | |
+ ALOGE_IF(result<0, "error sending wake message (%s)", strerror(errno)); | |
} | |
return err; | |
} | |
@@ -256,14 +256,14 @@ int sensors_poll_context_t::pollEvents(sensors_event_t* data, int count) | |
n = poll(mPollFds, numFds, nbEvents ? 0 : -1); | |
} while (n < 0 && errno == EINTR); | |
if (n<0) { | |
- LOGE("poll() failed (%s)", strerror(errno)); | |
+ ALOGE("poll() failed (%s)", strerror(errno)); | |
return -errno; | |
} | |
if (mPollFds[wake].revents & POLLIN) { | |
char msg; | |
int result = read(mPollFds[wake].fd, &msg, 1); | |
- LOGE_IF(result<0, "error reading from wake pipe (%s)", strerror(errno)); | |
- LOGE_IF(msg != WAKE_MESSAGE, "unknown message on wake queue (0x%02x)", int(msg)); | |
+ ALOGE_IF(result<0, "error reading from wake pipe (%s)", strerror(errno)); | |
+ ALOGE_IF(msg != WAKE_MESSAGE, "unknown message on wake queue (0x%02x)", int(msg)); | |
mPollFds[wake].revents = 0; | |
} | |
} | |
diff --git a/libstagefrighthw/Android.mk b/libstagefrighthw/Android.mk | |
index 3598451..052050c 100644 | |
--- a/libstagefrighthw/Android.mk | |
+++ b/libstagefrighthw/Android.mk | |
@@ -9,7 +9,8 @@ LOCAL_SRC_FILES := \ | |
LOCAL_CFLAGS += $(PV_CFLAGS_MINUS_VISIBILITY) | |
LOCAL_C_INCLUDES:= \ | |
- $(TOP)/frameworks/base/include/media/stagefright/openmax \ | |
+ $(TOP)/frameworks/native/include/media/openmax \ | |
+ $(TOP)/frameworks/native/include/media/hardware \ | |
$(LOCAL_PATH)/../include \ | |
LOCAL_SHARED_LIBRARIES := \ | |
diff --git a/libstagefrighthw/SEC_OMX_Plugin.cpp b/libstagefrighthw/SEC_OMX_Plugin.cpp | |
index 39b4220..8347c63 100644 | |
--- a/libstagefrighthw/SEC_OMX_Plugin.cpp | |
+++ b/libstagefrighthw/SEC_OMX_Plugin.cpp | |
@@ -18,8 +18,7 @@ | |
#include <dlfcn.h> | |
-#include <media/stagefright/HardwareAPI.h> | |
-#include <media/stagefright/MediaDebug.h> | |
+#include <HardwareAPI.h> | |
namespace android { | |
@@ -37,7 +36,7 @@ SECOMXPlugin::SECOMXPlugin() | |
mGetRolesOfComponentHandle(NULL) { | |
if (mLibHandle != NULL) { | |
mInit = (InitFunc)dlsym(mLibHandle, "SEC_OMX_Init"); | |
- mDeinit = (DeinitFunc)dlsym(mLibHandle, "SEC_OMX_DeInit"); | |
+ mDeinit = (DeinitFunc)dlsym(mLibHandle, "SEC_OMX_Deinit"); | |
mComponentNameEnum = | |
(ComponentNameEnumFunc)dlsym(mLibHandle, "SEC_OMX_ComponentNameEnum"); | |
@@ -125,12 +124,15 @@ OMX_ERRORTYPE SECOMXPlugin::getRolesOfComponent( | |
err = (*mGetRolesOfComponentHandle)( | |
const_cast<OMX_STRING>(name), &numRoles2, array); | |
- CHECK_EQ(err, OMX_ErrorNone); | |
- CHECK_EQ(numRoles, numRoles2); | |
+ if (err == OMX_ErrorNone && numRoles != numRoles2) { | |
+ err = OMX_ErrorUndefined; | |
+ } | |
for (OMX_U32 i = 0; i < numRoles; ++i) { | |
- String8 s((const char *)array[i]); | |
- roles->push(s); | |
+ if (err == OMX_ErrorNone) { | |
+ String8 s((const char *)array[i]); | |
+ roles->push(s); | |
+ } | |
delete[] array[i]; | |
array[i] = NULL; | |
@@ -140,7 +142,7 @@ OMX_ERRORTYPE SECOMXPlugin::getRolesOfComponent( | |
array = NULL; | |
} | |
- return OMX_ErrorNone; | |
+ return err; | |
} | |
} // namespace android | |
diff --git a/libstagefrighthw/SEC_OMX_Plugin.h b/libstagefrighthw/SEC_OMX_Plugin.h | |
index 6df2d31..3d640db 100644 | |
--- a/libstagefrighthw/SEC_OMX_Plugin.h | |
+++ b/libstagefrighthw/SEC_OMX_Plugin.h | |
@@ -18,7 +18,7 @@ | |
#define SEC_OMX_PLUGIN | |
-#include <media/stagefright/OMXPluginBase.h> | |
+#include <OMXPluginBase.h> | |
namespace android { | |
diff --git a/media_codecs.xml b/media_codecs.xml | |
new file mode 100644 | |
index 0000000..c6f8372 | |
--- /dev/null | |
+++ b/media_codecs.xml | |
@@ -0,0 +1,116 @@ | |
+<?xml version="1.0" encoding="utf-8" ?> | |
+<!-- 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. | |
+--> | |
+ | |
+<!-- | |
+<!DOCTYPE MediaCodecs [ | |
+<!ELEMENT MediaCodecs (Decoders,Encoders)> | |
+<!ELEMENT Decoders (MediaCodec*)> | |
+<!ELEMENT Encoders (MediaCodec*)> | |
+<!ELEMENT MediaCodec (Type*,Quirk*)> | |
+<!ATTLIST MediaCodec name CDATA #REQUIRED> | |
+<!ATTLIST MediaCodec type CDATA> | |
+<!ELEMENT Type EMPTY> | |
+<!ATTLIST Type name CDATA #REQUIRED> | |
+<!ELEMENT Quirk EMPTY> | |
+<!ATTLIST Quirk name CDATA #REQUIRED> | |
+]> | |
+ | |
+There's a simple and a complex syntax to declare the availability of a | |
+media codec: | |
+ | |
+A codec that properly follows the OpenMax spec and therefore doesn't have any | |
+quirks and that only supports a single content type can be declared like so: | |
+ | |
+ <MediaCodec name="OMX.foo.bar" type="something/interesting" /> | |
+ | |
+If a codec has quirks OR supports multiple content types, the following syntax | |
+can be used: | |
+ | |
+ <MediaCodec name="OMX.foo.bar" > | |
+ <Type name="something/interesting" /> | |
+ <Type name="something/else" /> | |
+ ... | |
+ <Quirk name="requires-allocate-on-input-ports" /> | |
+ <Quirk name="requires-allocate-on-output-ports" /> | |
+ <Quirk name="output-buffers-are-unreadable" /> | |
+ </MediaCodec> | |
+ | |
+Only the three quirks included above are recognized at this point: | |
+ | |
+"requires-allocate-on-input-ports" | |
+ must be advertised if the component does not properly support specification | |
+ of input buffers using the OMX_UseBuffer(...) API but instead requires | |
+ OMX_AllocateBuffer to be used. | |
+ | |
+"requires-allocate-on-output-ports" | |
+ must be advertised if the component does not properly support specification | |
+ of output buffers using the OMX_UseBuffer(...) API but instead requires | |
+ OMX_AllocateBuffer to be used. | |
+ | |
+"output-buffers-are-unreadable" | |
+ must be advertised if the emitted output buffers of a decoder component | |
+ are not readable, i.e. use a custom format even though abusing one of | |
+ the official OMX colorspace constants. | |
+ Clients of such decoders will not be able to access the decoded data, | |
+ naturally making the component much less useful. The only use for | |
+ a component with this quirk is to render the output to the screen. | |
+ Audio decoders MUST NOT advertise this quirk. | |
+ Video decoders that advertise this quirk must be accompanied by a | |
+ corresponding color space converter for thumbnail extraction, | |
+ matching surfaceflinger support that can render the custom format to | |
+ a texture and possibly other code, so just DON'T USE THIS QUIRK. | |
+ | |
+--> | |
+ | |
+<MediaCodecs> | |
+ <Decoders> | |
+ <MediaCodec name="OMX.SEC.MPEG4.Decoder" type="video/mp4v-es" > | |
+ <Quirk name="output-buffers-are-unreadable" /> | |
+ </MediaCodec> | |
+ | |
+ <MediaCodec name="OMX.SEC.H263.Decoder" type="video/3gpp" > | |
+ <Quirk name="output-buffers-are-unreadable" /> | |
+ </MediaCodec> | |
+ | |
+ <MediaCodec name="OMX.SEC.AVC.Decoder" type="video/avc" > | |
+ <Quirk name="output-buffers-are-unreadable" /> | |
+ </MediaCodec> | |
+ | |
+ <MediaCodec name="OMX.google.mp3.decoder" type="audio/mpeg" /> | |
+ <MediaCodec name="OMX.google.amrnb.decoder" type="audio/3gpp" /> | |
+ <MediaCodec name="OMX.google.amrwb.decoder" type="audio/amr-wb" /> | |
+ <MediaCodec name="OMX.google.aac.decoder" type="audio/mp4a-latm" /> | |
+ <MediaCodec name="OMX.google.g711.alaw.decoder" type="audio/g711-alaw" /> | |
+ <MediaCodec name="OMX.google.g711.mlaw.decoder" type="audio/g711-mlaw" /> | |
+ <MediaCodec name="OMX.google.vorbis.decoder" type="audio/vorbis" /> | |
+ | |
+ <MediaCodec name="OMX.google.mpeg4.decoder" type="video/mp4v-es" /> | |
+ <MediaCodec name="OMX.google.h263.decoder" type="video/3gpp" /> | |
+ <MediaCodec name="OMX.google.h264.decoder" type="video/avc" /> | |
+ <MediaCodec name="OMX.google.vpx.decoder" type="video/x-vnd.on2.vp8" /> | |
+ </Decoders> | |
+ | |
+ <Encoders> | |
+ <MediaCodec name="OMX.SEC.MPEG4.Encoder" type="video/mp4v-es" /> | |
+ <MediaCodec name="OMX.SEC.H263.Encoder" type="video/3gpp" /> | |
+ <MediaCodec name="OMX.SEC.AVC.Encoder" type="video/avc" /> | |
+ | |
+ <MediaCodec name="OMX.google.amrnb.encoder" type="audio/3gpp" /> | |
+ <MediaCodec name="OMX.google.amrwb.encoder" type="audio/amr-wb" /> | |
+ <MediaCodec name="OMX.google.aac.encoder" type="audio/mp4a-latm" /> | |
+ <MediaCodec name="OMX.google.flac.encoder" type="audio/flac" /> | |
+ </Encoders> | |
+</MediaCodecs> | |
diff --git a/media_profiles.xml b/media_profiles.xml | |
index 67fe1a1..27e00c5 100644 | |
--- a/media_profiles.xml | |
+++ b/media_profiles.xml | |
@@ -56,7 +56,7 @@ | |
<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED> | |
<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED> | |
<!ELEMENT AudioEncoderCap EMPTY> | |
-<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED> | |
+<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|heaac|aaceld|wma) #REQUIRED> | |
<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED> | |
<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED> | |
<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED> | |
@@ -97,7 +97,7 @@ | |
frameRate="30" /> | |
<Audio codec="aac" | |
- bitRate="96000" | |
+ bitRate="24000" | |
sampleRate="16000" | |
channels="1" /> | |
</EncoderProfile> | |
@@ -125,7 +125,7 @@ | |
<!-- Audio settings are not used for timealpse video recording --> | |
<Audio codec="aac" | |
- bitRate="96000" | |
+ bitRate="24000" | |
sampleRate="16000" | |
channels="1" /> | |
</EncoderProfile> | |
@@ -160,7 +160,7 @@ | |
frameRate="15" /> | |
<Audio codec="aac" | |
- bitRate="96000" | |
+ bitRate="24000" | |
sampleRate="16000" | |
channels="1" /> | |
</EncoderProfile> | |
@@ -188,7 +188,7 @@ | |
<!-- Audio settings are not used for timealpse video recording --> | |
<Audio codec="aac" | |
- bitRate="96000" | |
+ bitRate="24000" | |
sampleRate="16000" | |
channels="1" /> | |
</EncoderProfile> | |
@@ -241,8 +241,18 @@ | |
minFrameRate="15" maxFrameRate="30" /> | |
<AudioEncoderCap name="aac" enabled="true" | |
- minBitRate="8192" maxBitRate="96000" | |
- minSampleRate="8000" maxSampleRate="16000" | |
+ minBitRate="758" maxBitRate="288000" | |
+ minSampleRate="8000" maxSampleRate="48000" | |
+ minChannels="1" maxChannels="1" /> | |
+ | |
+ <AudioEncoderCap name="heaac" enabled="true" | |
+ minBitRate="8000" maxBitRate="64000" | |
+ minSampleRate="16000" maxSampleRate="48000" | |
+ minChannels="1" maxChannels="1" /> | |
+ | |
+ <AudioEncoderCap name="aaceld" enabled="true" | |
+ minBitRate="16000" maxBitRate="192000" | |
+ minSampleRate="16000" maxSampleRate="48000" | |
minChannels="1" maxChannels="1" /> | |
<AudioEncoderCap name="amrwb" enabled="true" | |
@@ -251,7 +261,7 @@ | |
minChannels="1" maxChannels="1" /> | |
<AudioEncoderCap name="amrnb" enabled="true" | |
- minBitRate="5525" maxBitRate="12200" | |
+ minBitRate="4750" maxBitRate="12200" | |
minSampleRate="8000" maxSampleRate="8000" | |
minChannels="1" maxChannels="1" /> | |
diff --git a/media_profiles_korea.xml b/media_profiles_korea.xml | |
index 7c00e3c..3a4cab8 100644 | |
--- a/media_profiles_korea.xml | |
+++ b/media_profiles_korea.xml | |
@@ -56,7 +56,7 @@ | |
<!ATTLIST VideoEncoderCap minFrameRate CDATA #REQUIRED> | |
<!ATTLIST VideoEncoderCap maxFrameRate CDATA #REQUIRED> | |
<!ELEMENT AudioEncoderCap EMPTY> | |
-<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|wma) #REQUIRED> | |
+<!ATTLIST AudioEncoderCap name (amrnb|amrwb|aac|heaac|aaceld|wma) #REQUIRED> | |
<!ATTLIST AudioEncoderCap enabled (true|false) #REQUIRED> | |
<!ATTLIST AudioEncoderCap minBitRate CDATA #REQUIRED> | |
<!ATTLIST AudioEncoderCap maxBitRate CDATA #REQUIRED> | |
@@ -241,8 +241,18 @@ | |
minFrameRate="15" maxFrameRate="30" /> | |
<AudioEncoderCap name="aac" enabled="true" | |
- minBitRate="8192" maxBitRate="96000" | |
- minSampleRate="8000" maxSampleRate="16000" | |
+ minBitRate="758" maxBitRate="288000" | |
+ minSampleRate="8000" maxSampleRate="48000" | |
+ minChannels="1" maxChannels="1" /> | |
+ | |
+ <AudioEncoderCap name="heaac" enabled="true" | |
+ minBitRate="8000" maxBitRate="64000" | |
+ minSampleRate="16000" maxSampleRate="48000" | |
+ minChannels="1" maxChannels="1" /> | |
+ | |
+ <AudioEncoderCap name="aaceld" enabled="true" | |
+ minBitRate="16000" maxBitRate="192000" | |
+ minSampleRate="16000" maxSampleRate="48000" | |
minChannels="1" maxChannels="1" /> | |
<AudioEncoderCap name="amrwb" enabled="true" | |
@@ -251,7 +261,7 @@ | |
minChannels="1" maxChannels="1" /> | |
<AudioEncoderCap name="amrnb" enabled="true" | |
- minBitRate="5525" maxBitRate="12200" | |
+ minBitRate="4750" maxBitRate="12200" | |
minSampleRate="8000" maxSampleRate="8000" | |
minChannels="1" maxChannels="1" /> | |
diff --git a/mxt224_ts_input.kl b/mxt224_ts_input.kl | |
index bea3f40..87a756c 100644 | |
--- a/mxt224_ts_input.kl | |
+++ b/mxt224_ts_input.kl | |
@@ -14,5 +14,5 @@ | |
key 158 BACK WAKE | |
key 139 MENU WAKE | |
-key 217 SEARCH WAKE | |
+key 217 ASSIST WAKE | |
key 102 HOME WAKE | |
diff --git a/nfc/nfc_hw.c b/nfc/nfc_hw.c | |
index b604768..9bd14c6 100644 | |
--- a/nfc/nfc_hw.c | |
+++ b/nfc/nfc_hw.c | |
@@ -31,8 +31,6 @@ static uint8_t pn544_eedata_settings[][4] = { | |
,{0x00,0x9B,0xD6,0x1E} // GSP setting for this threshold | |
,{0x00,0x9B,0xDD,0x1C} // GSP setting for this threshold | |
,{0x00,0x9B,0x84,0x13} // ANACM2 setting | |
- ,{0x00,0x99,0x81,0x7F} // ANAVMID setting PCD | |
- ,{0x00,0x99,0x31,0x70} // ANAVMID setting PICC | |
// Enable PBTF | |
,{0x00,0x98,0x00,0x3F} // SECURE_ELEMENT_CONFIGURATION - No Secure Element | |
@@ -67,8 +65,8 @@ static uint8_t pn544_eedata_settings[][4] = { | |
,{0x00,0x9C,0x12,0x00} // | |
,{0x00,0x9C,0x13,0x00} // | |
- //WTX for LLCP communication | |
- ,{0x00,0x98,0xA2,0x0E} // Max value: 14 (default value: 09) | |
+ // NFC-DEP Target Waiting Time (WT) | |
+ ,{0x00,0x98,0xA2,0x08} // Set to 0x08 as required by [digital] (default value: 09) | |
//SE GPIO | |
,{0x00, 0x98, 0x93, 0x40} | |
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml | |
index ab0780b..d480b15 100644 | |
--- a/overlay/frameworks/base/core/res/res/values/config.xml | |
+++ b/overlay/frameworks/base/core/res/res/values/config.xml | |
@@ -98,7 +98,6 @@ | |
specified --> | |
<string name="default_wallpaper_component">com.android.wallpaper/.nexus.NexusWallpaper</string> | |
- <integer name="config_deskDockRotation">90</integer> | |
<integer name="config_deskDockKeepsScreenOn">0</integer> | |
<integer name="config_carDockKeepsScreenOn">1</integer> | |
@@ -108,12 +107,11 @@ | |
<!-- Default blink frequency for notification LED is 9 seconds. --> | |
<integer name="config_defaultNotificationLedOff">9000</integer> | |
- <!-- Component name of the service providing network location support. --> | |
- <string name="config_networkLocationProvider">com.google.android.location.NetworkLocationProvider</string> | |
- | |
- <!-- Component name of the service providing geocoder API support. --> | |
- <string name="config_geocodeProvider">com.google.android.location.GeocodeProvider</string> | |
+ <!-- Package name providing network location support. --> | |
+ <string name="config_networkLocationProviderPackageName" translatable="false">com.google.android.location</string> | |
+ <!-- Package name providing geocoder API support. --> | |
+ <string name="config_geocodeProviderPackageName" translatable="false">com.google.android.location</string> | |
<!-- XXXXX NOTE THE FOLLOWING RESOURCES USE THE WRONG NAMING CONVENTION. | |
Please don't copy them, copy anything else. --> | |
@@ -169,7 +167,7 @@ | |
Wifi interfaces. If the device doesn't want to support tethering over Wifi this | |
should be empty. An example would be "softap.*" --> | |
<string-array translatable="false" name="config_tether_wifi_regexs"> | |
- <item>"wl0.1"</item> | |
+ <item>"wlan0"</item> | |
</string-array> | |
<!-- List of regexpressions describing the interface (if any) that represent tetherable | |
@@ -210,4 +208,7 @@ | |
<bool name="config_ui_enableFadingMarquee">false</bool> | |
+ <!-- The attenuation in dB applied to the sound effects played | |
+ through AudioManager.playSoundEffect() when no volume is specified. --> | |
+ <integer name="config_soundEffectVolumeDb">-12</integer> | |
</resources> | |
diff --git a/overlay/frameworks/base/core/res/res/xml/storage_list.xml b/overlay/frameworks/base/core/res/res/xml/storage_list.xml | |
index 9670ba5..3df9d42 100644 | |
--- a/overlay/frameworks/base/core/res/res/xml/storage_list.xml | |
+++ b/overlay/frameworks/base/core/res/res/xml/storage_list.xml | |
@@ -36,7 +36,7 @@ | |
<StorageList xmlns:android="http://schemas.android.com/apk/res/android"> | |
<!-- removable is not set in nosdcard product --> | |
- <storage android:mountPoint="/mnt/sdcard" | |
+ <storage android:mountPoint="/storage/sdcard0" | |
android:storageDescription="@string/storage_usb" | |
android:primary="true" | |
android:allowMassStorage="true" | |
diff --git a/proprietary-blobs.txt b/proprietary-blobs.txt | |
new file mode 100644 | |
index 0000000..c4c56e0 | |
--- /dev/null | |
+++ b/proprietary-blobs.txt | |
@@ -0,0 +1,38 @@ | |
+# Copyright (C) 2011 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. | |
+ | |
+# This file is generated by device/common/generate-blob-lists.sh - DO NOT EDIT | |
+ | |
+/system/lib/libdrmdecrypt.so | |
+/system/lib/libsecril-client.so | |
+/system/vendor/bin/gpsd | |
+/system/vendor/bin/pvrsrvinit | |
+/system/vendor/firmware/bcm4329.hcd | |
+/system/vendor/firmware/cypress-touchkey.bin | |
+/system/vendor/firmware/libpn544_fw.so | |
+/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 | |
+/system/vendor/lib/hw/gps.s5pc110.so | |
+/system/vendor/lib/hw/gralloc.s5pc110.so | |
+/system/vendor/lib/libakm.so | |
+/system/vendor/lib/libglslcompiler.so | |
+/system/vendor/lib/libIMGegl.so | |
+/system/vendor/lib/libpvr2d.so | |
+/system/vendor/lib/libpvrANDROID_WSEGL.so | |
+/system/vendor/lib/libPVRScopeServices.so | |
+/system/vendor/lib/libsec-ril.so | |
+/system/vendor/lib/libsrv_init.so | |
+/system/vendor/lib/libsrv_um.so | |
+/system/vendor/lib/libusc.so | |
diff --git a/recovery/Android.mk b/recovery/Android.mk | |
index 2100f3d..0d65438 100644 | |
--- a/recovery/Android.mk | |
+++ b/recovery/Android.mk | |
@@ -5,7 +5,7 @@ include $(CLEAR_VARS) | |
LOCAL_MODULE_TAGS := eng | |
LOCAL_C_INCLUDES += bootable/recovery | |
-LOCAL_SRC_FILES := recovery_ui.c | |
+LOCAL_SRC_FILES := recovery_ui.cpp | |
# should match TARGET_RECOVERY_UI_LIB set in BoardConfig.mk | |
LOCAL_MODULE := librecovery_ui_crespo | |
diff --git a/recovery/recovery_ui.c b/recovery/recovery_ui.c | |
deleted file mode 100644 | |
index 81ed4f2..0000000 | |
--- a/recovery/recovery_ui.c | |
+++ /dev/null | |
@@ -1,115 +0,0 @@ | |
-/* | |
- * Copyright (C) 2010 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. | |
- */ | |
- | |
-#include <linux/input.h> | |
-#include <sys/stat.h> | |
-#include <errno.h> | |
-#include <string.h> | |
- | |
-#include "recovery_ui.h" | |
-#include "common.h" | |
- | |
-char* MENU_HEADERS[] = { "Volume up/down to move highlight;", | |
- "power button to select.", | |
- "", | |
- NULL }; | |
- | |
-char* MENU_ITEMS[] = { "reboot system now", | |
- "apply update from /sdcard", | |
- "wipe data/factory reset", | |
- "wipe cache partition", | |
- NULL }; | |
- | |
-void device_ui_init(UIParameters* ui_parameters) { | |
-} | |
- | |
-int device_recovery_start() { | |
- // recovery can get started before the kernel has created the EMMC | |
- // devices, which will make the wipe_data operation fail (trying | |
- // to open a device that doesn't exist). Hold up the start of | |
- // recovery for up to 5 seconds waiting for the userdata partition | |
- // block device to exist. | |
- | |
- const char* fn = "/dev/block/platform/s3c-sdhci.0/by-name/userdata"; | |
- | |
- int tries = 0; | |
- int ret; | |
- struct stat buf; | |
- do { | |
- ++tries; | |
- ret = stat(fn, &buf); | |
- if (ret) { | |
- printf("try %d: %s\n", tries, strerror(errno)); | |
- sleep(1); | |
- } | |
- } while (ret && tries < 5); | |
- if (!ret) { | |
- printf("stat() of %s succeeded on try %d\n", fn, tries); | |
- } else { | |
- printf("failed to stat %s\n", fn); | |
- } | |
- | |
- // We let recovery attempt to carry on even if the stat never | |
- // succeeded. | |
- | |
- return 0; | |
-} | |
- | |
-int device_toggle_display(volatile char* key_pressed, int key_code) { | |
- // hold power and press volume-up | |
- return key_pressed[KEY_POWER] && key_code == KEY_VOLUMEUP; | |
-} | |
- | |
-int device_reboot_now(volatile char* key_pressed, int key_code) { | |
- // Reboot if the power key is pressed five times in a row, with | |
- // no other keys in between. | |
- static int presses = 0; | |
- if (key_code == KEY_POWER) { // power button | |
- ++presses; | |
- return presses == 5; | |
- } else { | |
- presses = 0; | |
- return 0; | |
- } | |
-} | |
- | |
-int device_handle_key(int key_code, int visible) { | |
- if (visible) { | |
- switch (key_code) { | |
- case KEY_DOWN: | |
- case KEY_VOLUMEDOWN: | |
- return HIGHLIGHT_DOWN; | |
- | |
- case KEY_UP: | |
- case KEY_VOLUMEUP: | |
- return HIGHLIGHT_UP; | |
- | |
- case KEY_ENTER: | |
- case KEY_POWER: // crespo power | |
- return SELECT_ITEM; | |
- } | |
- } | |
- | |
- return NO_ACTION; | |
-} | |
- | |
-int device_perform_action(int which) { | |
- return which; | |
-} | |
- | |
-int device_wipe_data() { | |
- return 0; | |
-} | |
diff --git a/recovery/recovery_ui.cpp b/recovery/recovery_ui.cpp | |
new file mode 100644 | |
index 0000000..4f97407 | |
--- /dev/null | |
+++ b/recovery/recovery_ui.cpp | |
@@ -0,0 +1,110 @@ | |
+/* | |
+ * Copyright (C) 2010 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. | |
+ */ | |
+ | |
+#include <linux/input.h> | |
+#include <sys/stat.h> | |
+#include <errno.h> | |
+#include <string.h> | |
+ | |
+#include "common.h" | |
+#include "device.h" | |
+#include "screen_ui.h" | |
+ | |
+const char* HEADERS[] = { "Volume up/down to move highlight;", | |
+ "power button to select.", | |
+ "", | |
+ NULL }; | |
+ | |
+const char* ITEMS[] = { "reboot system now", | |
+ "apply update from ADB", | |
+ "apply update from /sdcard", | |
+ "wipe data/factory reset", | |
+ "wipe cache partition", | |
+ NULL }; | |
+ | |
+class CrespoUI : public ScreenRecoveryUI { | |
+ public: | |
+ CrespoUI() : | |
+ consecutive_power_keys(0) { | |
+ } | |
+ | |
+ virtual KeyAction CheckKey(int key) { | |
+ if (IsKeyPressed(KEY_POWER) && key == KEY_VOLUMEUP) { | |
+ return TOGGLE; | |
+ } | |
+ if (key == KEY_POWER) { | |
+ ++consecutive_power_keys; | |
+ if (consecutive_power_keys >= 7) { | |
+ return REBOOT; | |
+ } | |
+ } else { | |
+ consecutive_power_keys = 0; | |
+ } | |
+ return ENQUEUE; | |
+ } | |
+ | |
+ private: | |
+ int consecutive_power_keys; | |
+}; | |
+ | |
+class CrespoDevice : public Device { | |
+ public: | |
+ CrespoDevice() : | |
+ ui(new CrespoUI) { | |
+ } | |
+ | |
+ RecoveryUI* GetUI() { return ui; } | |
+ | |
+ int HandleMenuKey(int key_code, int visible) { | |
+ if (visible) { | |
+ switch (key_code) { | |
+ case KEY_DOWN: | |
+ case KEY_VOLUMEDOWN: | |
+ return kHighlightDown; | |
+ | |
+ case KEY_UP: | |
+ case KEY_VOLUMEUP: | |
+ return kHighlightUp; | |
+ | |
+ case KEY_POWER: | |
+ return kInvokeItem; | |
+ } | |
+ } | |
+ | |
+ return kNoAction; | |
+ } | |
+ | |
+ BuiltinAction InvokeMenuItem(int menu_position) { | |
+ switch (menu_position) { | |
+ case 0: return REBOOT; | |
+ case 1: return APPLY_ADB_SIDELOAD; | |
+ case 2: return APPLY_EXT; | |
+ case 3: return WIPE_DATA; | |
+ case 4: return WIPE_CACHE; | |
+ default: return NO_ACTION; | |
+ } | |
+ } | |
+ | |
+ const char* const* GetMenuHeaders() { return HEADERS; } | |
+ const char* const* GetMenuItems() { return ITEMS; } | |
+ | |
+ private: | |
+ RecoveryUI* ui; | |
+}; | |
+ | |
+Device* make_device() { | |
+ return new CrespoDevice; | |
+} | |
diff --git a/sec_mm/sec_omx/sec_codecs/video/mfc_c110/dec/src/SsbSipMfcDecAPI.c b/sec_mm/sec_omx/sec_codecs/video/mfc_c110/dec/src/SsbSipMfcDecAPI.c | |
index 8e47683..6c64ef8 100644 | |
--- a/sec_mm/sec_omx/sec_codecs/video/mfc_c110/dec/src/SsbSipMfcDecAPI.c | |
+++ b/sec_mm/sec_omx/sec_codecs/video/mfc_c110/dec/src/SsbSipMfcDecAPI.c | |
@@ -56,8 +56,8 @@ static mfc_packed_mode isPBPacked(_MFCLIB *pCtx, int length) | |
while (1) { | |
while (startCode != USR_DATA_START_CODE) { | |
if (startCode == VOP_START_CODE) { | |
- LOGV("isPBPacked: VOP START Found !!.....return\n"); | |
- LOGV("isPBPacked: Non Packed PB\n"); | |
+ ALOGV("isPBPacked: VOP START Found !!.....return\n"); | |
+ ALOGV("isPBPacked: Non Packed PB\n"); | |
return MFC_UNPACKED_PB; | |
} | |
getAByte(strmBuffer, &startCode); | |
@@ -65,11 +65,11 @@ static mfc_packed_mode isPBPacked(_MFCLIB *pCtx, int length) | |
if (strmBuffer >= strmBufferEnd) | |
goto out; | |
} | |
- LOGV("isPBPacked: User Data Found !!\n"); | |
+ ALOGV("isPBPacked: User Data Found !!\n"); | |
do { | |
if (*strmBuffer == 'p') { | |
- LOGI("isPBPacked: Packed PB\n"); | |
+ ALOGI("isPBPacked: Packed PB\n"); | |
return MFC_PACKED_PB; | |
} | |
getAByte(strmBuffer, &startCode); | |
@@ -80,7 +80,7 @@ static mfc_packed_mode isPBPacked(_MFCLIB *pCtx, int length) | |
} | |
out: | |
- LOGV("isPBPacked: Non Packed PB\n"); | |
+ ALOGV("isPBPacked: Non Packed PB\n"); | |
return MFC_UNPACKED_PB; | |
} | |
@@ -94,14 +94,14 @@ void *SsbSipMfcDecOpen(void *value) | |
pCTX = (_MFCLIB *)malloc(sizeof(_MFCLIB)); | |
if (pCTX == NULL) { | |
- LOGE("SsbSipMfcDecOpen: malloc failed.\n"); | |
+ ALOGE("SsbSipMfcDecOpen: malloc failed.\n"); | |
return NULL; | |
} | |
memset(pCTX, 0, sizeof(_MFCLIB)); | |
hMFCOpen = open(S5PC110_MFC_DEV_NAME, O_RDWR | O_NDELAY); | |
if (hMFCOpen < 0) { | |
- LOGE("SsbSipMfcDecOpen: MFC Open failure\n"); | |
+ ALOGE("SsbSipMfcDecOpen: MFC Open failure\n"); | |
return NULL; | |
} | |
@@ -110,15 +110,15 @@ void *SsbSipMfcDecOpen(void *value) | |
DecArg.args.buf_type = *(unsigned int *)value; | |
ret_code = ioctl(hMFCOpen, IOCTL_MFC_BUF_CACHE, &DecArg); | |
if (DecArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcDecOpenExt: IOCTL_MFC_BUF_CACHE (%d) failed\n", DecArg.ret_code); | |
+ ALOGE("SsbSipMfcDecOpenExt: IOCTL_MFC_BUF_CACHE (%d) failed\n", DecArg.ret_code); | |
} | |
} else { | |
- LOGE("SsbSipMfcDecOpenExt: value is invalid, value: %d\n", *(int *)value); | |
+ ALOGE("SsbSipMfcDecOpenExt: value is invalid, value: %d\n", *(int *)value); | |
} | |
mapped_addr = (unsigned int)mmap(0, MMAP_BUFFER_SIZE_MMAP, PROT_READ | PROT_WRITE, MAP_SHARED, hMFCOpen, 0); | |
if (!mapped_addr) { | |
- LOGE("SsbSipMfcDecOpen: FIMV5.0 driver address mapping failed\n"); | |
+ ALOGE("SsbSipMfcDecOpen: FIMV5.0 driver address mapping failed\n"); | |
return NULL; | |
} | |
@@ -138,7 +138,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecInit(void *openHandle, SSBSIP_MFC_CODEC_TYPE c | |
_MFCLIB *pCTX; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcDecSetConfig: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcDecSetConfig: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -157,7 +157,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecInit(void *openHandle, SSBSIP_MFC_CODEC_TYPE c | |
(codec_type != XVID_DEC) && | |
(codec_type != VC1RCV_DEC) && | |
(codec_type != VC1_DEC)) { | |
- LOGE("SsbSipMfcDecOpen: Undefined codec type.\n"); | |
+ ALOGE("SsbSipMfcDecOpen: Undefined codec type.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -182,7 +182,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecInit(void *openHandle, SSBSIP_MFC_CODEC_TYPE c | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_DEC_INIT, &DecArg); | |
if (DecArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcDecInit: IOCTL_MFC_DEC_INIT (%d) failed\n", DecArg.ret_code); | |
+ ALOGE("SsbSipMfcDecInit: IOCTL_MFC_DEC_INIT (%d) failed\n", DecArg.ret_code); | |
return MFC_RET_DEC_INIT_FAIL; | |
} | |
@@ -218,12 +218,12 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecExe(void *openHandle, int lengthBufFill) | |
mfc_common_args DecArg; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcDecExe: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcDecExe: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
if ((lengthBufFill < 0) || (lengthBufFill > MAX_DECODER_INPUT_BUFFER_SIZE)) { | |
- LOGE("SsbSipMfcDecExe: lengthBufFill is invalid. (lengthBufFill=%d)\n", lengthBufFill); | |
+ ALOGE("SsbSipMfcDecExe: lengthBufFill is invalid. (lengthBufFill=%d)\n", lengthBufFill); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -241,7 +241,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecExe(void *openHandle, int lengthBufFill) | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_DEC_EXE, &DecArg); | |
if (DecArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcDecExe: IOCTL_MFC_DEC_EXE failed(ret : %d)\n", DecArg.ret_code); | |
+ ALOGE("SsbSipMfcDecExe: IOCTL_MFC_DEC_EXE failed(ret : %d)\n", DecArg.ret_code); | |
return MFC_RET_DEC_EXE_ERR; | |
} | |
@@ -274,7 +274,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecClose(void *openHandle) | |
mfc_common_args free_arg; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcDecClose: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcDecClose: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -308,12 +308,12 @@ void *SsbSipMfcDecGetInBuf(void *openHandle, void **phyInBuf, int inputBufferSiz | |
mfc_common_args user_addr_arg, phys_addr_arg; | |
if (inputBufferSize < 0) { | |
- LOGE("SsbSipMfcDecGetInBuf: inputBufferSize = %d is invalid\n", inputBufferSize); | |
+ ALOGE("SsbSipMfcDecGetInBuf: inputBufferSize = %d is invalid\n", inputBufferSize); | |
return NULL; | |
} | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcDecGetInBuf: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcDecGetInBuf: openHandle is NULL\n"); | |
return NULL; | |
} | |
@@ -324,7 +324,7 @@ void *SsbSipMfcDecGetInBuf(void *openHandle, void **phyInBuf, int inputBufferSiz | |
user_addr_arg.args.mem_alloc.mapped_addr = pCTX->mapped_addr; | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_GET_IN_BUF, &user_addr_arg); | |
if (ret_code < 0) { | |
- LOGE("SsbSipMfcDecGetInBuf: IOCTL_MFC_GET_IN_BUF failed\n"); | |
+ ALOGE("SsbSipMfcDecGetInBuf: IOCTL_MFC_GET_IN_BUF failed\n"); | |
return NULL; | |
} | |
pCTX->virStrmBuf = user_addr_arg.args.mem_alloc.out_uaddr; | |
@@ -342,7 +342,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecSetInBuf(void *openHandle, void *phyInBuf, voi | |
_MFCLIB *pCTX; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcDecSetInBuf: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcDecSetInBuf: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -359,7 +359,7 @@ SSBSIP_MFC_DEC_OUTBUF_STATUS SsbSipMfcDecGetOutBuf(void *openHandle, SSBSIP_MFC_ | |
_MFCLIB *pCTX; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcDecGetOutBuf: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcDecGetOutBuf: openHandle is NULL\n"); | |
return MFC_GETOUTBUF_DISPLAY_END; | |
} | |
@@ -401,12 +401,12 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecSetConfig(void *openHandle, SSBSIP_MFC_DEC_CON | |
SSBSIP_MFC_IMG_RESOLUTION *img_resolution; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcDecSetConfig: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcDecSetConfig: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
if (value == NULL) { | |
- LOGE("SsbSipMfcDecSetConfig: value is NULL\n"); | |
+ ALOGE("SsbSipMfcDecSetConfig: value is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -437,13 +437,13 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecSetConfig(void *openHandle, SSBSIP_MFC_DEC_CON | |
return MFC_RET_OK; | |
default: | |
- LOGE("SsbSipMfcDecSetConfig: No such conf_type is supported.\n"); | |
+ ALOGE("SsbSipMfcDecSetConfig: No such conf_type is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_SET_CONFIG, &DecArg); | |
if (DecArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcDecSetConfig: IOCTL_MFC_SET_CONFIG failed(ret : %d, conf_type: %d)\n", DecArg.ret_code, conf_type); | |
+ ALOGE("SsbSipMfcDecSetConfig: IOCTL_MFC_SET_CONFIG failed(ret : %d, conf_type: %d)\n", DecArg.ret_code, conf_type); | |
return MFC_RET_DEC_SET_CONF_FAIL; | |
} | |
@@ -461,12 +461,12 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecGetConfig(void *openHandle, SSBSIP_MFC_DEC_CON | |
MFC_CRC_DATA *crc_data; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcDecGetConfig: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcDecGetConfig: openHandle is NULL\n"); | |
return MFC_RET_FAIL; | |
} | |
if (value == NULL) { | |
- LOGE("SsbSipMfcDecGetConfig: value is NULL\n"); | |
+ ALOGE("SsbSipMfcDecGetConfig: value is NULL\n"); | |
return MFC_RET_FAIL; | |
} | |
@@ -498,7 +498,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecGetConfig(void *openHandle, SSBSIP_MFC_DEC_CON | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_GET_CONFIG, &DecArg); | |
if (DecArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcDecGetConfig: IOCTL_MFC_GET_CONFIG failed(ret : %d, conf_type: %d)\n", DecArg.ret_code, conf_type); | |
+ ALOGE("SsbSipMfcDecGetConfig: IOCTL_MFC_GET_CONFIG failed(ret : %d, conf_type: %d)\n", DecArg.ret_code, conf_type); | |
return MFC_RET_DEC_GET_CONF_FAIL; | |
} | |
crc_data->luma0 = DecArg.args.get_config.out_config_value[0]; | |
@@ -510,7 +510,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcDecGetConfig(void *openHandle, SSBSIP_MFC_DEC_CON | |
break; | |
default: | |
- LOGE("SsbSipMfcDecGetConfig: No such conf_type is supported.\n"); | |
+ ALOGE("SsbSipMfcDecGetConfig: No such conf_type is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
diff --git a/sec_mm/sec_omx/sec_codecs/video/mfc_c110/enc/src/SsbSipMfcEncAPI.c b/sec_mm/sec_omx/sec_codecs/video/mfc_c110/enc/src/SsbSipMfcEncAPI.c | |
index b51a55f..a27fcc0 100644 | |
--- a/sec_mm/sec_omx/sec_codecs/video/mfc_c110/enc/src/SsbSipMfcEncAPI.c | |
+++ b/sec_mm/sec_omx/sec_codecs/video/mfc_c110/enc/src/SsbSipMfcEncAPI.c | |
@@ -40,13 +40,13 @@ void *SsbSipMfcEncOpen(void *value) | |
hMFCOpen = open(S5PC110_MFC_DEV_NAME, O_RDWR | O_NDELAY); | |
if (hMFCOpen < 0) { | |
- LOGE("SsbSipMfcEncOpen: MFC Open failure\n"); | |
+ ALOGE("SsbSipMfcEncOpen: MFC Open failure\n"); | |
return NULL; | |
} | |
pCTX = (_MFCLIB *)malloc(sizeof(_MFCLIB)); | |
if (pCTX == NULL) { | |
- LOGE("SsbSipMfcEncOpen: malloc failed.\n"); | |
+ ALOGE("SsbSipMfcEncOpen: malloc failed.\n"); | |
close(hMFCOpen); | |
return NULL; | |
} | |
@@ -56,15 +56,15 @@ void *SsbSipMfcEncOpen(void *value) | |
EncArg.args.buf_type = *(unsigned int *)value; | |
ret_code = ioctl(hMFCOpen, IOCTL_MFC_BUF_CACHE, &EncArg); | |
if (EncArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcDecOpenExt: IOCTL_MFC_BUF_CACHE (%d) failed\n", EncArg.ret_code); | |
+ ALOGE("SsbSipMfcDecOpenExt: IOCTL_MFC_BUF_CACHE (%d) failed\n", EncArg.ret_code); | |
} | |
} else { | |
- LOGE("SsbSipMfcDecOpenExt: value is invalid, value: %d\n", *(int *)value); | |
+ ALOGE("SsbSipMfcDecOpenExt: value is invalid, value: %d\n", *(int *)value); | |
} | |
mapped_addr = (unsigned int)mmap(0, MMAP_BUFFER_SIZE_MMAP, PROT_READ | PROT_WRITE, MAP_SHARED, hMFCOpen, 0); | |
if (!mapped_addr) { | |
- LOGE("SsbSipMfcEncOpen: FIMV5.0 driver address mapping failed\n"); | |
+ ALOGE("SsbSipMfcEncOpen: FIMV5.0 driver address mapping failed\n"); | |
return NULL; | |
} | |
@@ -94,7 +94,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
pCTX = (_MFCLIB *)openHandle; | |
memset(&EncArg, 0, sizeof(mfc_common_args)); | |
- LOGV("SsbSipMfcEncInit: Encode Init start\n"); | |
+ ALOGV("SsbSipMfcEncInit: Encode Init start\n"); | |
mpeg4_arg = (SSBSIP_MFC_ENC_MPEG4_PARAM *)param; | |
codec_type = mpeg4_arg->codecType; | |
@@ -102,7 +102,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
if ((codec_type != MPEG4_ENC) && | |
(codec_type != H264_ENC) && | |
(codec_type != H263_ENC)) { | |
- LOGE("SsbSipMfcEncOpen: Undefined codec type.\n"); | |
+ ALOGE("SsbSipMfcEncOpen: Undefined codec type.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -110,7 +110,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
switch (pCTX->codec_type) { | |
case MPEG4_ENC: | |
- LOGV("SsbSipMfcEncInit: MPEG4 Encode\n"); | |
+ ALOGV("SsbSipMfcEncInit: MPEG4 Encode\n"); | |
mpeg4_arg = (SSBSIP_MFC_ENC_MPEG4_PARAM *)param; | |
pCTX->width = mpeg4_arg->SourceWidth; | |
@@ -118,7 +118,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
break; | |
case H263_ENC: | |
- LOGV("SsbSipMfcEncInit: H263 Encode\n"); | |
+ ALOGV("SsbSipMfcEncInit: H263 Encode\n"); | |
h263_arg = (SSBSIP_MFC_ENC_H263_PARAM *)param; | |
pCTX->width = h263_arg->SourceWidth; | |
@@ -126,7 +126,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
break; | |
case H264_ENC: | |
- LOGV("SsbSipMfcEncInit: H264 Encode\n"); | |
+ ALOGV("SsbSipMfcEncInit: H264 Encode\n"); | |
h264_arg = (SSBSIP_MFC_ENC_H264_PARAM *)param; | |
pCTX->width = h264_arg->SourceWidth; | |
@@ -156,7 +156,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
EncArg.args.enc_init_mpeg4.in_MS_size = mpeg4_arg->SliceArgument; | |
if (mpeg4_arg->NumberBFrames > 2) { | |
- LOGE("SsbSipMfcEncInit: No such BframeNum is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such BframeNum is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_mpeg4.in_BframeNum = mpeg4_arg->NumberBFrames; | |
@@ -165,7 +165,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
/* rate control*/ | |
EncArg.args.enc_init_mpeg4.in_RC_frm_enable = mpeg4_arg->EnableFRMRateControl; | |
if ((mpeg4_arg->QSCodeMin > 51) || (mpeg4_arg->QSCodeMax > 51)) { | |
- LOGE("SsbSipMfcEncInit: No such Min/Max QP is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such Min/Max QP is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_mpeg4.in_RC_qbound = ENC_RC_QBOUND(mpeg4_arg->QSCodeMin, mpeg4_arg->QSCodeMax); | |
@@ -174,7 +174,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
/* pad control */ | |
EncArg.args.enc_init_mpeg4.in_pad_ctrl_on = mpeg4_arg->PadControlOn; | |
if ((mpeg4_arg->LumaPadVal > 255) || (mpeg4_arg->CbPadVal > 255) || (mpeg4_arg->CrPadVal > 255)) { | |
- LOGE("SsbSipMfcEncInit: No such Pad value is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such Pad value is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_mpeg4.in_luma_pad_val = mpeg4_arg->LumaPadVal; | |
@@ -187,7 +187,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
EncArg.args.enc_init_mpeg4.in_RC_framerate = (mpeg4_arg->TimeIncreamentRes / mpeg4_arg->VopTimeIncreament); | |
EncArg.args.enc_init_mpeg4.in_RC_bitrate = mpeg4_arg->Bitrate; | |
if ((mpeg4_arg->FrameQp > 51) || (mpeg4_arg->FrameQp_P) > 51 || (mpeg4_arg->FrameQp_B > 51)) { | |
- LOGE("SsbSipMfcEncInit: No such FrameQp is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such FrameQp is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_mpeg4.in_frame_qp = mpeg4_arg->FrameQp; | |
@@ -217,7 +217,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
/* rate control*/ | |
EncArg.args.enc_init_mpeg4.in_RC_frm_enable = h263_arg->EnableFRMRateControl; | |
if ((h263_arg->QSCodeMin > 51) || (h263_arg->QSCodeMax > 51)) { | |
- LOGE("SsbSipMfcEncInit: No such Min/Max QP is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such Min/Max QP is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_mpeg4.in_RC_qbound = ENC_RC_QBOUND(h263_arg->QSCodeMin, h263_arg->QSCodeMax); | |
@@ -226,7 +226,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
/* pad control */ | |
EncArg.args.enc_init_mpeg4.in_pad_ctrl_on = h263_arg->PadControlOn; | |
if ((h263_arg->LumaPadVal > 255) || (h263_arg->CbPadVal > 255) || (h263_arg->CrPadVal > 255)) { | |
- LOGE("SsbSipMfcEncInit: No such Pad value is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such Pad value is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_mpeg4.in_luma_pad_val = h263_arg->LumaPadVal; | |
@@ -237,7 +237,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
EncArg.args.enc_init_mpeg4.in_RC_framerate = h263_arg->FrameRate; | |
EncArg.args.enc_init_mpeg4.in_RC_bitrate = h263_arg->Bitrate; | |
if (h263_arg->FrameQp > 51) { | |
- LOGE("SsbSipMfcEncInit: No such FrameQp is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such FrameQp is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_mpeg4.in_frame_qp = h263_arg->FrameQp; | |
@@ -259,7 +259,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
EncArg.args.enc_init_h264.in_gop_num = h264_arg->IDRPeriod; | |
if ((h264_arg->NumberRefForPframes > 2) || (h264_arg->NumberReferenceFrames > 2)) { | |
- LOGE("SsbSipMfcEncInit: No such ref Num is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such ref Num is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_h264.in_reference_num = h264_arg->NumberReferenceFrames; | |
@@ -269,20 +269,20 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
(h264_arg->SliceMode == 2) || (h264_arg->SliceMode == 4)) { | |
EncArg.args.enc_init_h264.in_MS_mode = h264_arg->SliceMode; | |
} else { | |
- LOGE("SsbSipMfcEncInit: No such slice mode is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such slice mode is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_h264.in_MS_size = h264_arg->SliceArgument; | |
if (h264_arg->NumberBFrames > 2) { | |
- LOGE("SsbSipMfcEncInit: No such BframeNum is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such BframeNum is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_h264.in_BframeNum = h264_arg->NumberBFrames; | |
EncArg.args.enc_init_h264.in_deblock_filt = h264_arg->LoopFilterDisable; | |
if ((abs(h264_arg->LoopFilterAlphaC0Offset) > 6) || (abs(h264_arg->LoopFilterBetaOffset) > 6)) { | |
- LOGE("SsbSipMfcEncInit: No such AlphaC0Offset or BetaOffset is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such AlphaC0Offset or BetaOffset is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_h264.in_deblock_alpha_C0 = h264_arg->LoopFilterAlphaC0Offset; | |
@@ -297,7 +297,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
/* pad control */ | |
EncArg.args.enc_init_h264.in_pad_ctrl_on = h264_arg->PadControlOn; | |
if ((h264_arg->LumaPadVal > 255) || (h264_arg->CbPadVal > 255) || (h264_arg->CrPadVal > 255)) { | |
- LOGE("SsbSipMfcEncInit: No such Pad value is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such Pad value is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_h264.in_luma_pad_val = h264_arg->LumaPadVal; | |
@@ -311,7 +311,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
EncArg.args.enc_init_h264.in_RC_framerate = h264_arg->FrameRate; | |
EncArg.args.enc_init_h264.in_RC_bitrate = h264_arg->Bitrate; | |
if (h264_arg->FrameQp > 51) { | |
- LOGE("SsbSipMfcEncInit: No such FrameQp is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such FrameQp is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_h264.in_frame_qp = h264_arg->FrameQp; | |
@@ -325,7 +325,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
EncArg.args.enc_init_h264.in_frame_B_qp = h264_arg->FrameQp; | |
if ((h264_arg->QSCodeMin > 51) || (h264_arg->QSCodeMax > 51)) { | |
- LOGE("SsbSipMfcEncInit: No such Min/Max QP is supported.\n"); | |
+ ALOGE("SsbSipMfcEncInit: No such Min/Max QP is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
EncArg.args.enc_init_h264.in_RC_qbound = ENC_RC_QBOUND(h264_arg->QSCodeMin, h264_arg->QSCodeMax); | |
@@ -348,7 +348,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncInit(void *openHandle, void *param) | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_ENC_INIT, &EncArg); | |
if (EncArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcEncInit: IOCTL_MFC_ENC_INIT (%d) failed\n", EncArg.ret_code); | |
+ ALOGE("SsbSipMfcEncInit: IOCTL_MFC_ENC_INIT (%d) failed\n", EncArg.ret_code); | |
return MFC_RET_ENC_INIT_FAIL; | |
} | |
@@ -371,7 +371,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncExe(void *openHandle) | |
mfc_common_args EncArg; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcEncExe: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcEncExe: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -397,7 +397,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncExe(void *openHandle) | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_ENC_EXE, &EncArg); | |
if (EncArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcDecExe: IOCTL_MFC_ENC_EXE failed(ret : %d)\n", EncArg.ret_code); | |
+ ALOGE("SsbSipMfcDecExe: IOCTL_MFC_ENC_EXE failed(ret : %d)\n", EncArg.ret_code); | |
return MFC_RET_ENC_EXE_ERR; | |
} | |
@@ -418,7 +418,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncClose(void *openHandle) | |
mfc_common_args free_arg; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcEncClose: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcEncClose: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -475,7 +475,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncGetInBuf(void *openHandle, SSBSIP_MFC_ENC_INPU | |
int aligned_y_size, aligned_c_size; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcEncGetInBuf: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcEncGetInBuf: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -494,7 +494,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncGetInBuf(void *openHandle, SSBSIP_MFC_ENC_INPU | |
user_addr_arg.args.mem_alloc.mapped_addr = pCTX->mapped_addr; | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_GET_IN_BUF, &user_addr_arg); | |
if (ret_code < 0) { | |
- LOGE("SsbSipMfcEncGetInBuf: IOCTL_MFC_GET_IN_BUF failed\n"); | |
+ ALOGE("SsbSipMfcEncGetInBuf: IOCTL_MFC_GET_IN_BUF failed\n"); | |
return MFC_RET_ENC_GET_INBUF_FAIL; | |
} | |
pCTX->virFrmBuf.luma = user_addr_arg.args.mem_alloc.out_uaddr; | |
@@ -522,11 +522,11 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncSetInBuf(void *openHandle, SSBSIP_MFC_ENC_INPU | |
_MFCLIB *pCTX; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcEncSetInBuf: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcEncSetInBuf: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
- LOGV("SsbSipMfcEncSetInBuf: input_info->YPhyAddr & input_info->CPhyAddr should be 64KB aligned\n"); | |
+ ALOGV("SsbSipMfcEncSetInBuf: input_info->YPhyAddr & input_info->CPhyAddr should be 64KB aligned\n"); | |
pCTX = (_MFCLIB *)openHandle; | |
@@ -546,7 +546,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncGetOutBuf(void *openHandle, SSBSIP_MFC_ENC_OUT | |
_MFCLIB *pCTX; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcEncGetOutBuf: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcEncGetOutBuf: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -577,7 +577,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncGetOutBuf(void *openHandle, SSBSIP_MFC_ENC_OUT | |
else if (pCTX->encodedframeType == 4) | |
output_info->frameType = MFC_FRAME_TYPE_OTHERS; | |
else { | |
- LOGE("Strange encoded frame type = %d\n", pCTX->encodedframeType); | |
+ ALOGE("Strange encoded frame type = %d\n", pCTX->encodedframeType); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -592,7 +592,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncSetOutBuf(void *openHandle, void *phyOutbuf, v | |
_MFCLIB *pCTX; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcEncSetOutBuf: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcEncSetOutBuf: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -612,12 +612,12 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncSetConfig(void *openHandle, SSBSIP_MFC_ENC_CON | |
mfc_common_args EncArg; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcEncSetConfig: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcEncSetConfig: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
if (value == NULL) { | |
- LOGE("SsbSipMfcEncSetConfig: value is NULL\n"); | |
+ ALOGE("SsbSipMfcEncSetConfig: value is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -639,13 +639,13 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncSetConfig(void *openHandle, SSBSIP_MFC_ENC_CON | |
return MFC_RET_OK; | |
default: | |
- LOGE("SsbSipMfcEncSetConfig: No such conf_type is supported.\n"); | |
+ ALOGE("SsbSipMfcEncSetConfig: No such conf_type is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
ret_code = ioctl(pCTX->hMFC, IOCTL_MFC_SET_CONFIG, &EncArg); | |
if (EncArg.ret_code != MFC_RET_OK) { | |
- LOGE("SsbSipMfcEncSetConfig: IOCTL_MFC_SET_CONFIG failed(ret : %d)\n", EncArg.ret_code); | |
+ ALOGE("SsbSipMfcEncSetConfig: IOCTL_MFC_SET_CONFIG failed(ret : %d)\n", EncArg.ret_code); | |
return MFC_RET_ENC_SET_CONF_FAIL; | |
} | |
@@ -661,11 +661,11 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncGetConfig(void *openHandle, SSBSIP_MFC_ENC_CON | |
pCTX = (_MFCLIB *)openHandle; | |
if (openHandle == NULL) { | |
- LOGE("SsbSipMfcEncGetConfig: openHandle is NULL\n"); | |
+ ALOGE("SsbSipMfcEncGetConfig: openHandle is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
if (value == NULL) { | |
- LOGE("SsbSipMfcEncGetConfig: value is NULL\n"); | |
+ ALOGE("SsbSipMfcEncGetConfig: value is NULL\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
@@ -678,7 +678,7 @@ SSBSIP_MFC_ERROR_CODE SsbSipMfcEncGetConfig(void *openHandle, SSBSIP_MFC_ENC_CON | |
break; | |
default: | |
- LOGE("SsbSipMfcEncGetConfig: No such conf_type is supported.\n"); | |
+ ALOGE("SsbSipMfcEncGetConfig: No such conf_type is supported.\n"); | |
return MFC_RET_INVALID_PARAM; | |
} | |
diff --git a/sec_mm/sec_omx/sec_omx_component/video/dec/h264dec/SEC_OMX_H264dec.c b/sec_mm/sec_omx/sec_omx_component/video/dec/h264dec/SEC_OMX_H264dec.c | |
index 07e1a89..cd19cd1 100644 | |
--- a/sec_mm/sec_omx/sec_omx_component/video/dec/h264dec/SEC_OMX_H264dec.c | |
+++ b/sec_mm/sec_omx/sec_omx_component/video/dec/h264dec/SEC_OMX_H264dec.c | |
@@ -1035,7 +1035,7 @@ OMX_ERRORTYPE SEC_MFC_H264_Decode(OMX_COMPONENTTYPE *pOMXComponent, SEC_OMX_DATA | |
if ((SsbSipMfcDecGetConfig(pH264Dec->hMFCH264Handle.hMFCHandle, MFC_DEC_GETCONF_FRAME_TAG, &indexTimestamp) != MFC_RET_OK) || | |
(((indexTimestamp < 0) || (indexTimestamp >= MAX_TIMESTAMP)))) { | |
pOutputData->timeStamp = pInputData->timeStamp; | |
- pOutputData->nFlags = pInputData->nFlags; | |
+ pOutputData->nFlags = (pInputData->nFlags & (~OMX_BUFFERFLAG_EOS)); | |
} else { | |
pOutputData->timeStamp = pSECComponent->timeStamp[indexTimestamp]; | |
pOutputData->nFlags = pSECComponent->nFlags[indexTimestamp]; | |
@@ -1055,7 +1055,7 @@ OMX_ERRORTYPE SEC_MFC_H264_Decode(OMX_COMPONENTTYPE *pOMXComponent, SEC_OMX_DATA | |
if(status == MFC_GETOUTBUF_DECODING_ONLY) { | |
if (((pInputData->nFlags & OMX_BUFFERFLAG_EOS) != OMX_BUFFERFLAG_EOS) && | |
- (pSECComponent->bSaveFlagEOS == OMX_TRUE)) { | |
+ ((pSECComponent->bSaveFlagEOS == OMX_TRUE) || (pSECComponent->getAllDelayBuffer == OMX_TRUE))) { | |
pInputData->nFlags |= OMX_BUFFERFLAG_EOS; | |
pSECComponent->getAllDelayBuffer = OMX_TRUE; | |
ret = OMX_ErrorInputDataDecodeYet; | |
@@ -1074,6 +1074,8 @@ OMX_ERRORTYPE SEC_MFC_H264_Decode(OMX_COMPONENTTYPE *pOMXComponent, SEC_OMX_DATA | |
} else | |
#endif | |
if ((pInputData->nFlags & OMX_BUFFERFLAG_EOS) == OMX_BUFFERFLAG_EOS) { | |
+ //setConfVal = 1; | |
+ //SsbSipMfcDecSetConfig(pH264Dec->hMFCH264Handle.hMFCHandle, MFC_DEC_SETCONF_IS_LAST_FRAME, &setConfVal); | |
pInputData->nFlags = (pOutputData->nFlags & (~OMX_BUFFERFLAG_EOS)); | |
pSECComponent->getAllDelayBuffer = OMX_TRUE; | |
ret = OMX_ErrorInputDataDecodeYet; | |
@@ -1093,6 +1095,7 @@ OMX_ERRORTYPE SEC_MFC_H264_Decode(OMX_COMPONENTTYPE *pOMXComponent, SEC_OMX_DATA | |
} | |
if ((pH264Dec->bFirstFrame == OMX_TRUE) && | |
((pOutputData->nFlags & OMX_BUFFERFLAG_EOS) == OMX_BUFFERFLAG_EOS)) { | |
+ pInputData->nFlags = (pInputData->nFlags | OMX_BUFFERFLAG_EOS); | |
pOutputData->nFlags = (pOutputData->nFlags & (~OMX_BUFFERFLAG_EOS)); | |
} | |
diff --git a/sec_mm/sec_omx/sec_omx_component/video/dec/mpeg4dec/SEC_OMX_Mpeg4dec.c b/sec_mm/sec_omx/sec_omx_component/video/dec/mpeg4dec/SEC_OMX_Mpeg4dec.c | |
index 052a4c9..dc99826 100644 | |
--- a/sec_mm/sec_omx/sec_omx_component/video/dec/mpeg4dec/SEC_OMX_Mpeg4dec.c | |
+++ b/sec_mm/sec_omx/sec_omx_component/video/dec/mpeg4dec/SEC_OMX_Mpeg4dec.c | |
@@ -1180,7 +1180,7 @@ OMX_ERRORTYPE SEC_MFC_Mpeg4_Decode(OMX_COMPONENTTYPE *pOMXComponent, SEC_OMX_DAT | |
if ((SsbSipMfcDecGetConfig(hMFCHandle, MFC_DEC_GETCONF_FRAME_TAG, &indexTimestamp) != MFC_RET_OK) || | |
(((indexTimestamp < 0) || (indexTimestamp >= MAX_TIMESTAMP)))) { | |
pOutputData->timeStamp = pInputData->timeStamp; | |
- pOutputData->nFlags = pInputData->nFlags; | |
+ pOutputData->nFlags = (pInputData->nFlags & (~OMX_BUFFERFLAG_EOS)); | |
} else { | |
pOutputData->timeStamp = pSECComponent->timeStamp[indexTimestamp]; | |
pOutputData->nFlags = pSECComponent->nFlags[indexTimestamp]; | |
@@ -1200,7 +1200,7 @@ OMX_ERRORTYPE SEC_MFC_Mpeg4_Decode(OMX_COMPONENTTYPE *pOMXComponent, SEC_OMX_DAT | |
if (status == MFC_GETOUTBUF_DECODING_ONLY) { | |
if (((pInputData->nFlags & OMX_BUFFERFLAG_EOS) != OMX_BUFFERFLAG_EOS) && | |
- (pSECComponent->bSaveFlagEOS == OMX_TRUE)) { | |
+ ((pSECComponent->bSaveFlagEOS == OMX_TRUE) || (pSECComponent->getAllDelayBuffer == OMX_TRUE))) { | |
pInputData->nFlags |= OMX_BUFFERFLAG_EOS; | |
pSECComponent->getAllDelayBuffer = OMX_TRUE; | |
ret = OMX_ErrorInputDataDecodeYet; | |
@@ -1219,6 +1219,8 @@ OMX_ERRORTYPE SEC_MFC_Mpeg4_Decode(OMX_COMPONENTTYPE *pOMXComponent, SEC_OMX_DAT | |
} else | |
#endif | |
if ((pInputData->nFlags & OMX_BUFFERFLAG_EOS) == OMX_BUFFERFLAG_EOS) { | |
+ //configValue = 1; | |
+ //SsbSipMfcDecSetConfig(pMpeg4Dec->hMFCMpeg4Handle.hMFCHandle, MFC_DEC_SETCONF_IS_LAST_FRAME, &configValue); | |
pInputData->nFlags = (pOutputData->nFlags & (~OMX_BUFFERFLAG_EOS)); | |
pSECComponent->getAllDelayBuffer = OMX_TRUE; | |
ret = OMX_ErrorInputDataDecodeYet; | |
@@ -1238,6 +1240,7 @@ OMX_ERRORTYPE SEC_MFC_Mpeg4_Decode(OMX_COMPONENTTYPE *pOMXComponent, SEC_OMX_DAT | |
} | |
if ((pMpeg4Dec->bFirstFrame == OMX_TRUE) && | |
((pOutputData->nFlags & OMX_BUFFERFLAG_EOS) == OMX_BUFFERFLAG_EOS)) { | |
+ pInputData->nFlags = (pInputData->nFlags | OMX_BUFFERFLAG_EOS); | |
pOutputData->nFlags = (pOutputData->nFlags & (~OMX_BUFFERFLAG_EOS)); | |
} | |
diff --git a/sec_mm/sec_omx/sec_omx_core/SEC_OMX_Core.c b/sec_mm/sec_omx/sec_omx_core/SEC_OMX_Core.c | |
index fe84d8d..fb2875d 100644 | |
--- a/sec_mm/sec_omx/sec_omx_core/SEC_OMX_Core.c | |
+++ b/sec_mm/sec_omx/sec_omx_core/SEC_OMX_Core.c | |
@@ -29,8 +29,11 @@ | |
#include <stdio.h> | |
#include <stdlib.h> | |
#include <string.h> | |
+#include <pthread.h> // for pthread related functions | |
#include "SEC_OMX_Core.h" | |
+#include "SEC_OSAL_Mutex.h" // for mutext related functions | |
+#include "SEC_OSAL_ETC.h" // for SEC_OSAL_Strcmp, etc | |
#include "SEC_OMX_Component_Register.h" | |
#include "SEC_OSAL_Memory.h" | |
#include "SEC_OMX_Resourcemanager.h" | |
@@ -42,11 +45,11 @@ | |
static int gInitialized = 0; | |
-static int gComponentNum = 0; | |
+static OMX_U32 gComponentNum = 0; | |
static SEC_OMX_COMPONENT_REGLIST *gComponentList = NULL; | |
static SEC_OMX_COMPONENT *gLoadComponentList = NULL; | |
-static OMX_HANDLETYPE ghLoadComponentListMutex = NULL; | |
+static pthread_mutex_t ghLoadComponentListMutex = PTHREAD_MUTEX_INITIALIZER; | |
OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_Init(void) | |
@@ -55,6 +58,7 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_Init(void) | |
FunctionIn(); | |
+ SEC_OSAL_MutexLock(&ghLoadComponentListMutex); | |
if (gInitialized == 0) { | |
if (SEC_OMX_Component_Register(&gComponentList, &gComponentNum)) { | |
ret = OMX_ErrorInsufficientResources; | |
@@ -63,14 +67,12 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_Init(void) | |
} | |
SEC_OMX_ResourceManager_Init(); | |
- | |
- SEC_OSAL_MutexCreate(&ghLoadComponentListMutex); | |
- | |
- gInitialized = 1; | |
SEC_OSAL_Log(SEC_LOG_TRACE, "SEC_OMX_Init : %s", "OMX_ErrorNone"); | |
} | |
+ ++gInitialized; | |
EXIT: | |
+ SEC_OSAL_MutexUnlock(&ghLoadComponentListMutex); | |
FunctionOut(); | |
return ret; | |
@@ -82,8 +84,16 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_Deinit(void) | |
FunctionIn(); | |
- SEC_OSAL_MutexTerminate(ghLoadComponentListMutex); | |
- ghLoadComponentListMutex = NULL; | |
+ SEC_OSAL_MutexLock(&ghLoadComponentListMutex); | |
+ if (gInitialized > 0) { | |
+ --gInitialized; | |
+ } | |
+ | |
+ if (gInitialized != 0) { | |
+ // Some component still uses the core. | |
+ // Nothing needs to be done | |
+ goto EXIT; | |
+ } | |
SEC_OMX_ResourceManager_Deinit(); | |
@@ -93,9 +103,9 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_Deinit(void) | |
} | |
gComponentList = NULL; | |
gComponentNum = 0; | |
- gInitialized = 0; | |
EXIT: | |
+ SEC_OSAL_MutexUnlock(&ghLoadComponentListMutex); | |
FunctionOut(); | |
return ret; | |
@@ -133,7 +143,6 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_GetHandle( | |
OMX_ERRORTYPE ret = OMX_ErrorNone; | |
SEC_OMX_COMPONENT *loadComponent; | |
SEC_OMX_COMPONENT *currentComponent; | |
- int i = 0; | |
FunctionIn(); | |
@@ -148,6 +157,7 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_GetHandle( | |
} | |
SEC_OSAL_Log(SEC_LOG_TRACE, "ComponentName : %s", cComponentName); | |
+ OMX_U32 i = 0; | |
for (i = 0; i < gComponentNum; i++) { | |
if (SEC_OSAL_Strcmp(cComponentName, gComponentList[i].component.componentName) == 0) { | |
loadComponent = SEC_OSAL_Malloc(sizeof(SEC_OMX_COMPONENT)); | |
@@ -170,7 +180,7 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_GetHandle( | |
goto EXIT; | |
} | |
- SEC_OSAL_MutexLock(ghLoadComponentListMutex); | |
+ SEC_OSAL_MutexLock(&ghLoadComponentListMutex); | |
if (gLoadComponentList == NULL) { | |
gLoadComponentList = loadComponent; | |
} else { | |
@@ -180,7 +190,7 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_GetHandle( | |
} | |
currentComponent->nextOMXComp = loadComponent; | |
} | |
- SEC_OSAL_MutexUnlock(ghLoadComponentListMutex); | |
+ SEC_OSAL_MutexUnlock(&ghLoadComponentListMutex); | |
*pHandle = loadComponent->pOMXComponent; | |
ret = OMX_ErrorNone; | |
@@ -215,7 +225,7 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_FreeHandle(OMX_IN OMX_HANDLETYPE hCom | |
goto EXIT; | |
} | |
- SEC_OSAL_MutexLock(ghLoadComponentListMutex); | |
+ SEC_OSAL_MutexLock(&ghLoadComponentListMutex); | |
currentComponent = gLoadComponentList; | |
if (gLoadComponentList->pOMXComponent == hComponent) { | |
deleteComponent = gLoadComponentList; | |
@@ -229,16 +239,15 @@ OMX_API OMX_ERRORTYPE OMX_APIENTRY SEC_OMX_FreeHandle(OMX_IN OMX_HANDLETYPE hCom | |
currentComponent->nextOMXComp = deleteComponent->nextOMXComp; | |
} else if (currentComponent == NULL) { | |
ret = OMX_ErrorComponentNotFound; | |
- SEC_OSAL_MutexUnlock(ghLoadComponentListMutex); | |
goto EXIT; | |
} | |
} | |
- SEC_OSAL_MutexUnlock(ghLoadComponentListMutex); | |
SEC_OMX_ComponentUnload(deleteComponent); | |
SEC_OSAL_Free(deleteComponent); | |
EXIT: | |
+ SEC_OSAL_MutexUnlock(&ghLoadComponentListMutex); | |
FunctionOut(); | |
return ret; | |
diff --git a/sec_mm/sec_omx/sec_osal/Android.mk b/sec_mm/sec_omx/sec_osal/Android.mk | |
index a98e884..a020149 100644 | |
--- a/sec_mm/sec_omx/sec_osal/Android.mk | |
+++ b/sec_mm/sec_omx/sec_osal/Android.mk | |
@@ -22,18 +22,17 @@ LOCAL_CFLAGS := | |
LOCAL_STATIC_LIBRARIES := | |
-LOCAL_SHARED_LIBRARIES := libcutils libutils \ | |
+LOCAL_SHARED_LIBRARIES := libcutils \ | |
+ libutils \ | |
libui \ | |
libhardware \ | |
- libandroid_runtime \ | |
- libsurfaceflinger_client \ | |
- libbinder \ | |
- libmedia | |
+ libandroid_runtime | |
LOCAL_C_INCLUDES := $(SEC_OMX_INC)/khronos \ | |
$(SEC_OMX_INC)/sec \ | |
$(SEC_OMX_TOP)/sec_osal \ | |
$(SEC_OMX_COMPONENT)/common \ | |
- $(SEC_OMX_TOP)/../../include | |
+ $(SEC_OMX_TOP)/../../include \ | |
+ $(TOP)/frameworks/native/include/media/hardware | |
include $(BUILD_STATIC_LIBRARY) | |
diff --git a/sec_mm/sec_omx/sec_osal/SEC_OSAL_Buffer.cpp b/sec_mm/sec_omx/sec_osal/SEC_OSAL_Buffer.cpp | |
index 949fc19..c92ac18 100644 | |
--- a/sec_mm/sec_omx/sec_osal/SEC_OSAL_Buffer.cpp | |
+++ b/sec_mm/sec_omx/sec_osal/SEC_OSAL_Buffer.cpp | |
@@ -47,13 +47,12 @@ extern "C" { | |
} | |
#endif | |
-#include <ui/android_native_buffer.h> | |
#include <ui/GraphicBuffer.h> | |
#include <ui/GraphicBufferMapper.h> | |
#include <ui/Rect.h> | |
-#include <media/stagefright/HardwareAPI.h> | |
+#include <HardwareAPI.h> | |
#include <hardware/hardware.h> | |
-#include <media/stagefright/MetadataBufferType.h> | |
+#include <MetadataBufferType.h> | |
#include "hal_public.h" | |
#define HAL_PIXEL_FORMAT_C110_NV12 0x100 | |
diff --git a/self-extractors/generate-packages.sh b/self-extractors/generate-packages.sh | |
index cf72db1..1a99385 100755 | |
--- a/self-extractors/generate-packages.sh | |
+++ b/self-extractors/generate-packages.sh | |
@@ -28,8 +28,22 @@ | |
# 138179 = IRJ89 | |
# 146649 = IRK18 | |
# 185907 = IRK76 | |
-ZIP=soju-ota-185907.zip | |
-BUILD=irk76 | |
+# 236517 = IML70C | |
+# 237179 = IML73 | |
+# 237867 = IML74B | |
+# 238432 = IML74E | |
+# 238649 = IML74G | |
+# 239410 = IML74K | |
+# 257829 = IMM30B | |
+# 262866 = IMM30D | |
+# 299849 = IMM76D | |
+# end ics-mr1 | |
+BRANCH=ics-mr1 | |
+if test $BRANCH=ics-mr1 | |
+then | |
+ ZIP=soju-ota-299849.zip | |
+ BUILD=imm76d | |
+fi # ics-mr1 | |
ROOTDEVICE=crespo | |
DEVICE=crespo | |
MANUFACTURER=samsung | |
diff --git a/setup-makefiles.sh b/setup-makefiles.sh | |
deleted file mode 100755 | |
index cf06f2d..0000000 | |
--- a/setup-makefiles.sh | |
+++ /dev/null | |
@@ -1,58 +0,0 @@ | |
-#!/bin/sh | |
- | |
-# Copyright (C) 2010 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. | |
- | |
-DEVICE=crespo | |
-MANUFACTURER=samsung | |
- | |
-mkdir -p ../../../vendor/$MANUFACTURER/$DEVICE | |
- | |
-(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/device-vendor.mk | |
-# Copyright (C) 2010 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. | |
- | |
-# This file is generated by device/__MANUFACTURER__/__DEVICE__/setup-makefiles.sh | |
- | |
-\$(call inherit-product, vendor/__MANUFACTURER__/__DEVICE__/device-vendor-blobs.mk) | |
-EOF | |
- | |
-(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/BoardConfigVendor.mk | |
-# Copyright (C) 2010 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. | |
- | |
-# This file is generated by device/__MANUFACTURER__/__DEVICE__/setup-makefiles.sh | |
-EOF | |
diff --git a/unzip-files.sh b/unzip-files.sh | |
deleted file mode 100755 | |
index f5e35ab..0000000 | |
--- a/unzip-files.sh | |
+++ /dev/null | |
@@ -1,119 +0,0 @@ | |
-#!/bin/sh | |
- | |
-# Copyright (C) 2010 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. | |
- | |
-# This file is generated by device/common/generate-blob-scripts.sh - DO NOT EDIT | |
- | |
-DEVICE=crespo | |
-MANUFACTURER=samsung | |
- | |
-mkdir -p ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/lib/libsecril-client.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/bin/gpsd -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-chmod 755 ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/gpsd | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/bin/pvrsrvinit -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-chmod 755 ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/pvrsrvinit | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/firmware/bcm4329.hcd -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/firmware/cypress-touchkey.bin -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/firmware/libpn544_fw.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/hw/gps.s5pc110.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/hw/gralloc.s5pc110.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libakm.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libglslcompiler.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libIMGegl.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libpvr2d.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libpvrANDROID_WSEGL.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libPVRScopeServices.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libsec-ril.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libsrv_init.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libsrv_um.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
-unzip -j -o ../../../${DEVICE}_update.zip system/vendor/lib/libusc.so -d ../../../vendor/$MANUFACTURER/$DEVICE/proprietary | |
- | |
-(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/device-vendor-blobs.mk | |
-# Copyright (C) 2010 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. | |
- | |
-# This file is generated by device/__MANUFACTURER__/__DEVICE__/unzip-files.sh - DO NOT EDIT | |
- | |
-# Prebuilt libraries that are needed to build open-source libraries | |
-PRODUCT_COPY_FILES := \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsecril-client.so:obj/lib/libsecril-client.so | |
- | |
-# All the blobs necessary for crespo | |
-PRODUCT_COPY_FILES += \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsecril-client.so:system/lib/libsecril-client.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/gpsd:system/vendor/bin/gpsd \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/pvrsrvinit:system/vendor/bin/pvrsrvinit \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/bcm4329.hcd:system/vendor/firmware/bcm4329.hcd \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/cypress-touchkey.bin:system/vendor/firmware/cypress-touchkey.bin \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libpn544_fw.so:system/vendor/firmware/libpn544_fw.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libEGL_POWERVR_SGX540_120.so:system/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libGLESv1_CM_POWERVR_SGX540_120.so:system/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libGLESv2_POWERVR_SGX540_120.so:system/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/gps.s5pc110.so:system/vendor/lib/hw/gps.s5pc110.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/gralloc.s5pc110.so:system/vendor/lib/hw/gralloc.s5pc110.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libakm.so:system/vendor/lib/libakm.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libglslcompiler.so:system/vendor/lib/libglslcompiler.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libIMGegl.so:system/vendor/lib/libIMGegl.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libpvr2d.so:system/vendor/lib/libpvr2d.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libpvrANDROID_WSEGL.so:system/vendor/lib/libpvrANDROID_WSEGL.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libPVRScopeServices.so:system/vendor/lib/libPVRScopeServices.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsec-ril.so:system/vendor/lib/libsec-ril.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsrv_init.so:system/vendor/lib/libsrv_init.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libsrv_um.so:system/vendor/lib/libsrv_um.so \\ | |
- vendor/__MANUFACTURER__/__DEVICE__/proprietary/libusc.so:system/vendor/lib/libusc.so | |
- | |
- | |
-EOF | |
- | |
-(cat << EOF) | sed s/__DEVICE__/$DEVICE/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > ../../../vendor/$MANUFACTURER/$DEVICE/proprietary/Android.mk | |
-# Copyright (C) 2011 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. | |
- | |
-# This file is generated by device/__MANUFACTURER__/__DEVICE__/unzip-files.sh - DO NOT EDIT | |
- | |
-ifeq (\$(TARGET_DEVICE),crespo) | |
-LOCAL_PATH:=\$(call my-dir) | |
- | |
-endif | |
- | |
-EOF | |
- | |
-./setup-makefiles.sh | |
diff --git a/vold.fstab b/vold.fstab | |
index 974dd6a..3b520b8 100644 | |
--- a/vold.fstab | |
+++ b/vold.fstab | |
@@ -13,4 +13,4 @@ | |
## flags - (optional) Comma separated list of flags, must not contain '/' character | |
###################### | |
-dev_mount sdcard /mnt/sdcard 3 /devices/platform/s3c-sdhci.0/mmc_host/mmc0/mmc0:0001/block/mmcblk0 nonremovable,encryptable | |
+dev_mount sdcard /storage/sdcard0 3 /devices/platform/s3c-sdhci.0/mmc_host/mmc0/mmc0:0001/block/mmcblk0 nonremovable,encryptable |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment