From 6b2fe38f47949530285a5f5d6870145075022c6e Mon Sep 17 00:00:00 2001 From: Vishal Bhoj Date: Thu, 22 Aug 2013 06:06:13 +0100 Subject: Initial Fujitsu build configuration Signed-off-by: Vishal Bhoj --- Android.mk | 2 + AndroidProducts.mk | 2 + BoardConfig.mk | 50 ++++++++++++++++++ README.txt | 11 ++++ config | 18 +++++++ device.mk | 26 ++++++++++ egl.cfg | 1 + fstab.fujitsusemiconductormb8ac0300-e | 9 ++++ fujitsu.mk | 10 ++++ init.fujitsusemiconductormb8ac0300-e.rc | 57 +++++++++++++++++++++ initlogo.rle | Bin 0 -> 39148 bytes .../frameworks/base/core/res/res/values/config.xml | 57 +++++++++++++++++++++ .../base/core/res/res/xml/storage_list.xml | 40 +++++++++++++++ set_irq_affinity.sh | 45 ++++++++++++++++ system.prop | 6 +++ ueventd.fujitsusemiconductormb8ac0300-e.rc | 1 + vendorsetup.sh | 1 + 17 files changed, 336 insertions(+) create mode 100644 Android.mk create mode 100644 AndroidProducts.mk create mode 100644 BoardConfig.mk create mode 100644 README.txt create mode 100644 config create mode 100644 device.mk create mode 100644 egl.cfg create mode 100644 fstab.fujitsusemiconductormb8ac0300-e create mode 100644 fujitsu.mk create mode 100755 init.fujitsusemiconductormb8ac0300-e.rc create mode 100644 initlogo.rle create mode 100644 overlay/frameworks/base/core/res/res/values/config.xml create mode 100644 overlay/frameworks/base/core/res/res/xml/storage_list.xml create mode 100755 set_irq_affinity.sh create mode 100644 system.prop create mode 100644 ueventd.fujitsusemiconductormb8ac0300-e.rc create mode 100644 vendorsetup.sh diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..6361f9b --- /dev/null +++ b/Android.mk @@ -0,0 +1,2 @@ +LOCAL_PATH := $(call my-dir) +include $(call all-makefiles-under,$(LOCAL_PATH)) diff --git a/AndroidProducts.mk b/AndroidProducts.mk new file mode 100644 index 0000000..3955ba1 --- /dev/null +++ b/AndroidProducts.mk @@ -0,0 +1,2 @@ +PRODUCT_MAKEFILES := \ + $(LOCAL_DIR)/fujitsu.mk diff --git a/BoardConfig.mk b/BoardConfig.mk new file mode 100644 index 0000000..7b4a9c8 --- /dev/null +++ b/BoardConfig.mk @@ -0,0 +1,50 @@ +# config.mk +# +# Product-specific compile-time definitions. +# + +TARGET_BOARD_PLATFORM := fujitsusemiconductormb8ac0300e +TARGET_NO_BOOTLOADER := true # We use our own methods for building bootloaders +TARGET_NO_KERNEL := false +TARGET_HWPACK_CONFIG := device/linaro/fujitsu/config + +TARGET_USE_XLOADER := false +TARGET_USE_UBOOT := true +UBOOT_CONFIG := mb8ac0300eb +TARGET_NO_RECOVERY := true +TARGET_NO_RADIOIMAGE := true +BOARD_USES_GENERIC_AUDIO := false +BOARD_USES_ALSA_AUDIO := false +HARDWARE_OMX := false +USE_CAMERA_STUB := false + +BOARD_HAVE_BLUETOOTH := false + +TARGET_CPU_ABI := armeabi-v7a +TARGET_CPU_ABI2 := armeabi +TARGET_MODULES_OUT := out/target/product/fujitsu/root/ + +TARGET_ARCH := arm +# Enable NEON feature +TARGET_ARCH_VARIANT := armv7-a-neon +ARCH_ARM_HAVE_TLS_REGISTER := true + +EXTRA_PACKAGE_MANAGEMENT := false + +TARGET_USERIMAGES_USE_EXT4 := true +TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true + +TARGET_CPU_SMP := true + +# ARMs gator (DS-5) +TARGET_USE_GATOR:= true + +KERNEL_CONFIG := arch/arm/configs/fujitsu_defconfig linaro/configs/android.conf + +DEVICE_TREES := mb8ac0300eb:mb8ac0300eb.dtb \ + +INSTALLED_KERNEL_TARGET_NAME := uImage +INSTALLED_RAMDISK_TARGET_NAME := uInitrd +INCLUDE_PERF := 0 + +TARGET_BOOTLOADER_TYPE := uboot diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..0fd2438 --- /dev/null +++ b/README.txt @@ -0,0 +1,11 @@ +Summary: Linaro Evaluation Build for Android + +Author: Linaro Limited + +Description: + In order to ensure that Software Components developed and improved work + well and really matter in a production like environment, Linaro Platform + Releases introduced a concept called "Evaluation Builds". + + Evaluation Builds are images that can be installed on high volume member + boards supported by Linaro Platform and Landing Teams. diff --git a/config b/config new file mode 100644 index 0000000..aec5a98 --- /dev/null +++ b/config @@ -0,0 +1,18 @@ +format: 3.0 +extra_serial_options: + - console=ttyS0,115200 +android_specific_args: + - init=/init + - androidboot.console=ttyS0 +boot_script: boot.scr +bootloader_file_in_boot_part: True +bootloader_flavor: ca9x4_ct_vxp +fat_size: 16 +initrd_addr: '0x42000000' +kernel_addr: '0x40000000' +kernel_flavors: + - linaro-vexpress +load_addr: '0x40008000' +serial_tty: ttyS0 +live_serial_options: + - serialtty=ttyS0 diff --git a/device.mk b/device.mk new file mode 100644 index 0000000..832afe2 --- /dev/null +++ b/device.mk @@ -0,0 +1,26 @@ +PRODUCT_COPY_FILES := \ + device/linaro/fujitsu/fstab.fujitsusemiconductormb8ac0300-e:root/fstab.fujitsusemiconductormb8ac0300-e \ + device/linaro/fujitsu/vold.fstab:system/etc/vold.fstab \ + device/linaro/fujitsu/egl.cfg:system/lib/egl/egl.cfg + +PRODUCT_COPY_FILES += \ + device/linaro/fujitsu/init.fujitsusemiconductormb8ac0300-e.rc:root/init.fujitsusemiconductormb8ac0300-e.rc \ + device/linaro/fujitsu/ueventd.fujitsusemiconductormb8ac0300-e.rc:root/ueventd.fujitsusemiconductormb8ac0300-e.rc \ + device/linaro/fujitsu/initlogo.rle:root/initlogo.rle \ + device/linaro/common/android.hardware.screen.xml:system/etc/permissions/android.hardware.screen.xml \ + frameworks/native/data/etc/android.hardware.bluetooth.xml:system/etc/permissions/android.hardware.bluetooth.xml \ + frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml + +PRODUCT_CHARACTERISTICS := tablet,nosdcard + +DEVICE_PACKAGE_OVERLAYS := \ + device/linaro/fujitsu/overlay + +PRODUCT_PROPERTY_OVERRIDES += \ + ro.nohardwaregfx=true \ + debug.sf.no_hw_vsync=1 + +PRODUCT_TAGS += dalvik.gc.type-precise + +$(call inherit-product-if-exists, external/linaro-android-kernel-test/product.mk) +$(call inherit-product-if-exists, frameworks/native/build/tablet-dalvik-heap.mk) diff --git a/egl.cfg b/egl.cfg new file mode 100644 index 0000000..c4a1437 --- /dev/null +++ b/egl.cfg @@ -0,0 +1 @@ +0 0 android diff --git a/fstab.fujitsusemiconductormb8ac0300-e b/fstab.fujitsusemiconductormb8ac0300-e new file mode 100644 index 0000000..4975247 --- /dev/null +++ b/fstab.fujitsusemiconductormb8ac0300-e @@ -0,0 +1,9 @@ +# Android fstab file. +# +# 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/mmcblk0p2 /system ext4 ro wait +/dev/block/mmcblk0p3 /cache ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait +/dev/block/mmcblk0p5 /data ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait diff --git a/fujitsu.mk b/fujitsu.mk new file mode 100644 index 0000000..4e465d3 --- /dev/null +++ b/fujitsu.mk @@ -0,0 +1,10 @@ +# The fujitsusemiconductormb8ac0300-e product that is specialized for fujitsu. +$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base.mk) +$(call inherit-product, device/linaro/common/common.mk) +$(call inherit-product, device/linaro/fujitsu/device.mk) + +PRODUCT_BRAND := fujitsu +PRODUCT_DEVICE := fujitsu +PRODUCT_NAME := fujitsu +PRODUCT_MODEL := fujitsu +PRODUCT_MANUFACTURER := Fujitsu diff --git a/init.fujitsusemiconductormb8ac0300-e.rc b/init.fujitsusemiconductormb8ac0300-e.rc new file mode 100755 index 0000000..6ac7487 --- /dev/null +++ b/init.fujitsusemiconductormb8ac0300-e.rc @@ -0,0 +1,57 @@ +on init + export EXTERNAL_STORAGE /mnt/sdcard + symlink /mnt/sdcard /storage/sdcard0 + symlink /mnt/sdcard /sdcard + + # mount debugfs + mount debugfs /sys/kernel/debug /sys/kernel/debug + +# power management +# Enable off mode by default + #write /sys/kernel/debug/pm_debug/enable_off_mode 1 + +on boot + + insmod /modules/usb-common.ko + insmod /modules/usbcore.ko + insmod /modules/f_usb20hdc-hcd.ko + insmod /modules/hid.ko + insmod /modules/hid-generic.ko + insmod /modules/usbhid.ko + insmod /modules/af_packet.ko + insmod /modules/unix.ko + insmod /modules/tun.ko + insmod /modules/logger.ko + insmod /modules/evdev.ko + insmod /modules/vfat.ko + + # create dhcpcd dir + mkdir /data/misc/dhcp 0770 dhcp dhcp + chmod 0770 /data/misc/dhcp + + # change permissions for alsa nodes + #chmod 0777 /dev/snd/pcmC0D0c + #chmod 0777 /dev/snd/pcmC0D0p + #chmod 0777 /dev/snd/controlC0 + #chmod 0777 /dev/snd/timer + + #change permissions for alsa nodes for audio modem + #chmod 0777 /dev/snd/pcmC0D5c + #chmod 0777 /dev/snd/pcmC0D5p + + #change permissions for alsa nodes for HDMI + #chmod 777 /dev/snd/pcmC0D7p + + chown system system /sys/class/graphics/fb0/overlays + chown system system /sys/class/graphics/fb0/fit_to_screen + #chown system system /sys/class/graphics/fb1/overlays + +on fs + mount_all /fstab.fujitsusemiconductormb8ac0300-e + +# hack to start networking early during boot, this will enable use of +# ADB and gator without further manual intervention +service netcfghack /system/bin/netcfg eth0 dhcp + class main + user root + oneshot diff --git a/initlogo.rle b/initlogo.rle new file mode 100644 index 0000000..4636d93 Binary files /dev/null and b/initlogo.rle differ diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml new file mode 100644 index 0000000..029bdec --- /dev/null +++ b/overlay/frameworks/base/core/res/res/values/config.xml @@ -0,0 +1,57 @@ + + + + + + + + false + + + false + + + true + + + + + + + "wifi,1,1,1,-1,true" + "wifi_p2p,13,1,0,-1,true" + "ethernet,9,9,2,-1,true" + + + + + + "1,1" + "9,1" + + + + diff --git a/overlay/frameworks/base/core/res/res/xml/storage_list.xml b/overlay/frameworks/base/core/res/res/xml/storage_list.xml new file mode 100644 index 0000000..4df343c --- /dev/null +++ b/overlay/frameworks/base/core/res/res/xml/storage_list.xml @@ -0,0 +1,40 @@ + + + + + + + + diff --git a/set_irq_affinity.sh b/set_irq_affinity.sh new file mode 100755 index 0000000..fbf8fa4 --- /dev/null +++ b/set_irq_affinity.sh @@ -0,0 +1,45 @@ +#!/system/bin/sh + +# This script sets the default affinity to the processors with the given part id. +# - part id is in hex (as seen in /proc/cpuinfo) + +function build_mask_from_part_id { + local IFS + local mask + local ref_part_id + + ref_part_id=$1 + IFS=$'\n' + + for line in `cat /proc/cpuinfo` + do + IFS=':' + set -A tokens $line + + if [ "${line#'processor'}" != "$line" ] + then + cpu="${tokens[1]##' '}" + elif [ "${line#'CPU part'}" != "$line" ] + then + part_id="${tokens[1]##' '}" + + if [ "$part_id" == "$ref_part_id" ] + then + (( mask |= 1 << $cpu )) + fi + fi + done + echo $(printf "%x" $mask) +} + +ref_part_id=$(echo $1 | tr '[A-Z]' '[a-z]') +mask=$(build_mask_from_part_id $ref_part_id) +[ -z "$mask" ] && exit + +echo $mask > /proc/irq/default_smp_affinity + +for i in `ls /proc/irq` +do + affinity_file="/proc/irq/$i/smp_affinity" + [ -e $affinity_file ] && echo $mask > $affinity_file +done diff --git a/system.prop b/system.prop new file mode 100644 index 0000000..91c3bcf --- /dev/null +++ b/system.prop @@ -0,0 +1,6 @@ +# +# system.prop +# + +rild.libpath=/system/lib/libreference-ril.so +rild.libargs=-d /dev/ttyUSB2 diff --git a/ueventd.fujitsusemiconductormb8ac0300-e.rc b/ueventd.fujitsusemiconductormb8ac0300-e.rc new file mode 100644 index 0000000..ddd45f9 --- /dev/null +++ b/ueventd.fujitsusemiconductormb8ac0300-e.rc @@ -0,0 +1 @@ +/dev/video* 0666 root root diff --git a/vendorsetup.sh b/vendorsetup.sh new file mode 100644 index 0000000..6bf653f --- /dev/null +++ b/vendorsetup.sh @@ -0,0 +1 @@ +add_lunch_combo fujitsu-eng -- cgit v1.2.3