Skip to content
This repository has been archived by the owner on Nov 3, 2021. It is now read-only.

Commit

Permalink
Add otoro port
Browse files Browse the repository at this point in the history
  • Loading branch information
michaelwu committed Jun 4, 2012
0 parents commit 6b0f89e
Show file tree
Hide file tree
Showing 6 changed files with 304 additions and 0 deletions.
1 change: 1 addition & 0 deletions AndroidBoard.mk
@@ -0,0 +1 @@
include device/qcom/msm7627a/AndroidBoard.mk
1 change: 1 addition & 0 deletions AndroidProducts.mk
@@ -0,0 +1 @@
PRODUCT_MAKEFILES := $(LOCAL_DIR)/full_otoro.mk
33 changes: 33 additions & 0 deletions BoardConfig.mk
@@ -0,0 +1,33 @@
include device/qcom/msm7627a/BoardConfig.mk

TARGET_NO_BOOTLOADER := true
TARGET_NO_KERNEL := true

TARGET_USERIMAGES_USE_EXT4 := false

BOARD_EGL_CFG := device/qcom/msm7627a/egl.cfg

BOARD_BOOTIMAGE_PARTITION_SIZE := 8388608
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 245366784
BOARD_USERDATAIMAGE_PARTITION_SIZE := 159907840
BOARD_PERSISTIMAGE_PARTITION_SIZE := 1572864
BOARD_CACHEIMAGE_PARTITION_SIZE := 60293120
BOARD_FLASH_BLOCK_SIZE := 131072

# hack to prevent llvm from building
BOARD_USE_QCOM_LLVM_CLANG_RS := true

BOARD_HAS_ATH_WLAN := true

BOARD_WPA_SUPPLICANT_DRIVER := WEXT
CONFIG_DRIVER_WEXT := y
WPA_SUPPLICANT_VERSION := VER_0_8_X
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_wext
WIFI_DRIVER_MODULE_PATH := "/system/wifi/ar6000.ko"
WIFI_MODULE_NAME := "ar6000"

WIFI_TEST_INTERFACE := "sta"
WIFI_DRIVER_FW_PATH_STA := "sta"
WIFI_DRIVER_FW_PATH_AP := "ap"
WIFI_DRIVER_FW_PATH_P2P := "p2p"

1 change: 1 addition & 0 deletions Fts-touchscreen.idc
@@ -0,0 +1 @@
touch.deviceType = touchScreen
249 changes: 249 additions & 0 deletions extract-files.sh
@@ -0,0 +1,249 @@
#!/bin/bash

# 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=otoro
COMMON=common
MANUFACTURER=qcom

if [[ -z "${ANDROIDFS_DIR}" ]]; then
DEVICE_BUILD_ID=`adb shell cat /system/build.prop | grep ro.build.display.id | sed -e 's/ro.build.display.id=//' | tr -d '\n\r'`
else
DEVICE_BUILD_ID=`cat ${ANDROIDFS_DIR}/system/build.prop | grep ro.build.display.id | sed -e 's/ro.build.display.id=//' | tr -d '\n\r'`
fi

case "$DEVICE_BUILD_ID" in
*)
echo Found firmware with build ID $DEVICE_BUILD_ID >&2
;;
esac

BASE_PROPRIETARY_COMMON_DIR=vendor/$MANUFACTURER/$COMMON/proprietary
PROPRIETARY_DEVICE_DIR=../../../vendor/$MANUFACTURER/$DEVICE/proprietary
PROPRIETARY_COMMON_DIR=../../../$BASE_PROPRIETARY_COMMON_DIR

mkdir -p $PROPRIETARY_DEVICE_DIR

for NAME in audio hw wifi etc
do
mkdir -p $PROPRIETARY_COMMON_DIR/$NAME
done


COMMON_BLOBS_LIST=../../../vendor/$MANUFACTURER/$COMMON/vendor-blobs.mk

(cat << EOF) | sed s/__COMMON__/$COMMON/g | sed s/__MANUFACTURER__/$MANUFACTURER/g > $COMMON_BLOBS_LIST
# 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.
# Prebuilt libraries that are needed to build open-source libraries
PRODUCT_COPY_FILES := device/sample/etc/apns-full-conf.xml:system/etc/apns-conf.xml
# All the blobs
PRODUCT_COPY_FILES += \\
EOF
# copy_file
# pull file from the device and adds the file to the list of blobs
#
# $1 = src name
# $2 = dst name
# $3 = directory path on device
# $4 = directory name in $PROPRIETARY_COMMON_DIR
copy_file()
{
echo Pulling \"$1\"
if [[ -z "${ANDROIDFS_DIR}" ]]; then
adb pull /$3/$1 $PROPRIETARY_COMMON_DIR/$4/$2
else
# Hint: Uncomment the next line to populate a fresh ANDROIDFS_DIR
# (TODO: Make this a command-line option or something.)
# adb pull /$3/$1 ${ANDROIDFS_DIR}/$3/$1
cp ${ANDROIDFS_DIR}/$3/$1 $PROPRIETARY_COMMON_DIR/$4/$2
fi
if [[ -f $PROPRIETARY_COMMON_DIR/$4/$2 ]]; then
echo $BASE_PROPRIETARY_COMMON_DIR/$4/$2:$3/$2 \\ >> $COMMON_BLOBS_LIST
else
echo Failed to pull $1. Giving up.
exit -1
fi
}
# copy_files
# pulls a list of files from the device and adds the files to the list of blobs
#
# $1 = list of files
# $2 = directory path on device
# $3 = directory name in $PROPRIETARY_COMMON_DIR
copy_files()
{
for NAME in $1
do
copy_file "$NAME" "$NAME" "$2" "$3"
done
}
# copy_local_files
# puts files in this directory on the list of blobs to install
#
# $1 = list of files
# $2 = directory path on device
# $3 = local directory path
copy_local_files()
{
for NAME in $1
do
echo Adding \"$NAME\"
echo device/$MANUFACTURER/$DEVICE/$3/$NAME:$2/$NAME \\ >> $COMMON_BLOBS_LIST
done
}
COMMON_LIBS="
libauth.so
libcm.so
libdiag.so
libdsi_netctrl.so
libdsm.so
libdss.so
libdsutils.so
libgsdi_exp.so
libgstk_exp.so
libidl.so
libmmgsdilib.so
libnetmgr.so
libnv.so
liboncrpc.so
libpbmlib.so
libqdp.so
libqmi.so
libqmiservices.so
libqueue.so
libril-qc-1.so
libril-qc-qmi-1.so
libril-qcril-hook-oem.so
libSimCardAuth.so
libwms.so
libwmsts.so
"
copy_files "$COMMON_LIBS" "system/lib" ""
COMMON_BINS="
ATFWD-daemon
akmd8962
amploader
bridgemgrd
dhcpcd
fm_qsoc_patches
fmconfig
hci_qcomm_init
netd
netmgrd
port-bridge
proximity.init
qmiproxy
qmuxd
"
copy_files "$COMMON_BINS" "system/bin" ""
COMMON_HW="
sensors.default.so
"
copy_files "$COMMON_HW" "system/lib/hw" "hw"
COMMON_WIFI="
ar6000.ko
kineto_gan.ko
"
copy_files "$COMMON_WIFI" "system/wifi" "wifi"
COMMON_ATH6K="
athtcmd_ram.bin
athwlan.bin
athwlan_mobile.bin
athwlan_router.bin
athwlan_tablet.bin
bdata.SD31.bin
data.patch.hw3_0.bin
device.bin
otp.bin
"
copy_files "$COMMON_ATH6K" "system/wifi/ath6k/AR6003/hw2.1.1" "wifi"
COMMON_ETC="init.qcom.bt.sh"
copy_files "$COMMON_ETC" "system/etc" "etc"
COMMON_AUDIO="
"
#copy_files "$COMMON_AUDIO" "system/lib" "audio"
if [ ! -f "Adreno200-AU_LINUX_ANDROID_ICS_CHOCO_CS.04.00.03.06.001.zip" ]; then
echo Adreno driver not found. Please download the ARMv7 adreno driver from
echo https://developer.qualcomm.com/mobile-development/mobile-technologies/gaming-graphics-optimization-adreno/tools-and-resources
echo and put it in $PWD
fi
unzip -o -d ../../../vendor/$MANUFACTURER/$DEVICE Adreno200-AU_LINUX_ANDROID_ICS_CHOCO_CS.04.00.03.06.001.zip
(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.
LOCAL_PATH := vendor/$MANUFACTURER/$DEVICE
PRODUCT_COPY_FILES := \
\$(LOCAL_PATH)/system/etc/firmware/a300_pm4.fw:system/etc/firmware/a300_pm4.fw \\
\$(LOCAL_PATH)/system/etc/firmware/a225_pm4.fw:system/etc/firmware/a225_pm4.fw \\
\$(LOCAL_PATH)/system/etc/firmware/a300_pfp.fw:system/etc/firmware/a300_pfp.fw \\
\$(LOCAL_PATH)/system/etc/firmware/a225p5_pm4.fw:system/etc/firmware/a225p5_pm4.fw \\
\$(LOCAL_PATH)/system/etc/firmware/leia_pfp_470.fw:system/etc/firmware/leia_pfp_470.fw \\
\$(LOCAL_PATH)/system/etc/firmware/a225_pfp.fw:system/etc/firmware/a225_pfp.fw \\
\$(LOCAL_PATH)/system/etc/firmware/leia_pm4_470.fw:system/etc/firmware/leia_pm4_470.fw \\
\$(LOCAL_PATH)/system/etc/firmware/yamato_pfp.fw:system/etc/firmware/yamato_pfp.fw \\
\$(LOCAL_PATH)/system/etc/firmware/yamato_pm4.fw:system/etc/firmware/yamato_pm4.fw \\
\$(LOCAL_PATH)/system/lib/libC2D2.so:system/lib/libC2D2.so \\
\$(LOCAL_PATH)/system/lib/libsc-a2xx.so:system/lib/libsc-a2xx.so \\
\$(LOCAL_PATH)/system/lib/libgsl.so:system/lib/libgsl.so \\
\$(LOCAL_PATH)/system/lib/libOpenVG.so:system/lib/libOpenVG.so \\
\$(LOCAL_PATH)/system/lib/egl/egl.cfg:system/lib/egl.cfg \\
\$(LOCAL_PATH)/system/lib/egl/libGLESv1_CM_adreno200.so:system/lib/egl/libGLESv1_CM_adreno200.so \\
\$(LOCAL_PATH)/system/lib/egl/libEGL_adreno200.so:system/lib/egl/libEGL_adreno200.so \\
\$(LOCAL_PATH)/system/lib/egl/eglsubAndroid.so:system/lib/egl/eglsubAndroid.so \\
\$(LOCAL_PATH)/system/lib/egl/libGLESv2_adreno200.so:system/lib/egl/libGLESv2_adreno200.so \\
\$(LOCAL_PATH)/system/lib/egl/libq3dtools_adreno200.so:system/lib/egl/libq3dtools_adreno200.so \\
\$(LOCAL_PATH)/system/lib/egl/libGLES_android.so:system/lib/egl/libGLES_android.so
EOF
19 changes: 19 additions & 0 deletions full_otoro.mk
@@ -0,0 +1,19 @@
$(call inherit-product, device/qcom/common/common.mk)
PRODUCT_COPY_FILES := \
device/qcom/otoro/Fts-touchscreen.idc:system/usr/idc/Fts-touchscreen.idc

$(call inherit-product-if-exists, vendor/qcom/otoro/device-otoro.mk)
$(call inherit-product-if-exists, vendor/qcom/common/vendor-blobs.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/full.mk)

PRODUCT_PROPERTY_OVERRIDES += \
rild.libpath=/system/lib/libril-qc-1.so \
rild.libargs=-d/dev/smd0

# Discard inherited values and use our own instead.
PRODUCT_NAME := full_otoro
PRODUCT_DEVICE := otoro
PRODUCT_BRAND := toro
PRODUCT_MANUFACTURER := toro
PRODUCT_MODEL := otoro1

0 comments on commit 6b0f89e

Please sign in to comment.