tizen porting on odroid u3...2. change sdbd service file – modified so that the script is running...
TRANSCRIPT
-
SKKU Embedded Software Lab.
87
1
Tizen Porting on Odroid U3
-
SKKU Embedded Software Lab.
87
2
• Building a kernel
• Building a Tizen platform
• Bootloader
• Configuring Partitions & Platform Image Fusing
• Configure platform
• Working check
• Trouble shooting
Index
-
SKKU Embedded Software Lab.
87
3
Building a kernel
-
SKKU Embedded Software Lab.
87
4
• Setting for kernel build– Installing required libraries
• Enter the following command in terminal
• sudo apt-get install libncurses5-dev build-essential
Default Environment Setting
-
SKKU Embedded Software Lab.
87
5
• Source Code download– Gerrit (https://review.tizen.org/gerrit/#/)
Kernel Check
https://review.tizen.org/gerrit/#/
-
SKKU Embedded Software Lab.
87
6
• Gerrit
Kernel Download
-
SKKU Embedded Software Lab.
87
7
• Kernel source download– git clone tizen:platform/kernel/linux-3.10
• Set branch– Perform code version management
– Check version list
• “git branch –a” -> Run in target directory
– Checkout to Tizen barnch
• git checkout tizen
Kernel Download
-
SKKU Embedded Software Lab.
87
8
• Check cross toolchain– Arm architecture can be compiled in the X86 environment
– Automatically installed with Tizen SDK
• Path : ~/tizen-sdk/tools/arm-linux-gnueabi-gcc-4.5
Cross Compile Configure
-
SKKU Embedded Software Lab.
87
9
• Two Options1. Manual config – Export cross compile information
• export ARCH=arm
• export CROSS_COMPILE=/”SDK PATH”/tizen-sdk/tools/arm-linux-gnueabi-gcc-4.5/bin/arm-linux-gnueabi-
2. Edit makefile
• Various configuration options for compile or build
• Edit makefile in kernel directory “gedit Makefile”
• Edit ARCH & CROSS_COMPILE
Cross Compile Configure
-
SKKU Embedded Software Lab.
87
10
• Defconfig– Kernel configuration file
– Position in ./arch/arm/configs/
– Default tizen defconfig is “tizen_defconfig”
• Apply odroid defconfig– make tizen_odroid_defconfig
Apply Defconfig
-
SKKU Embedded Software Lab.
87
11
• Change kernel config using make menuconfig
Kernel Configuration
-
SKKU Embedded Software Lab.
87
12
• Temperature problem in tizen default config– The temperature is too high in performance governor
– Change governor from performance to ondemad– CPU Power Management -> CPU Frequency scaling -> Default CPUFreq
governor
Change CPU Governor
-
SKKU Embedded Software Lab.
87
13
• Support Odroid WiFi module (RTL8192)– Networking support -> Wireless
• Enable 80211 protocol support
– Device Driver -> Network device support -> Wireless LAN
• Wireless device driver config
WiFi Support
-
SKKU Embedded Software Lab.
87
14
• Enable Bluetooth support for tizen– Networking support > Bluetooth subsystem support
– Bluetooth device drivers
Bluetooth Support
-
SKKU Embedded Software Lab.
87
15
• Enable Rfkill– Amall userspace tool to query the state of the rfkill switches,
buttons and subsystem interfaces
– Networking support
Bluetooth Support 2
-
SKKU Embedded Software Lab.
87
16
• Current CPU Driver version does not match with DDK
• Default GPU driver version is changed in latest version– Change from R4P0 to R3P2 version
Change Default GPU Driver [1/3]
-
SKKU Embedded Software Lab.
87
17Change Default GPU Driver [2/3]
-Graphics support
-ARM GPU configuration
-Mali-400 support
-
SKKU Embedded Software Lab.
87
18Change Default GPU Driver [3/3]
Change to R3P2 version
-Select MALI Ver
①
②
-
SKKU Embedded Software Lab.
87
19
• Make zImage– sudo make zImage –j 4
– Set number of thread “-j 4”
• Typically set about 1.5 times the number of CPU threads
Kernel Build
-
SKKU Embedded Software Lab.
87
20
• What is device tree– Data structure for describing hardware
– Can be described in a data structure that is passed to the operating system at boot time
– Data structure itself is a simple tree of named nodes and properties
– File organization
• dtsi : platform common
• dts : board specific
• dtb : binary file
Device Tree
-
SKKU Embedded Software Lab.
87
21
• Make Device Tree– make exynos4412-odroidu3.dtb
• Make final zIamge– cat arch/arm/boot/zImage arch/arm/boot/dts/exynos4412-
odroidu3.dtb > ./zImage
– Created zImage in the root directory of the kernel
Kernel Build
-
SKKU Embedded Software Lab.
87
22
Building a Tizen platform
-
SKKU Embedded Software Lab.
87
23
• Three image files– platform.img
– data.img
– ums.img
• • Refer to “Tizen-Platform-Build” (Previous class)
Tizen Platform Image
-
SKKU Embedded Software Lab.
87
24
Bootloader
-
SKKU Embedded Software Lab.
87
25
• Download Rpm package– u-boot-2014.10-16.1.armv7l.rpm
http://download.tizen.org/live/Tizen:/Common/arm-wayland/armv7l/u-boot-2015.01-19.3.armv7l.rpm
• Decompress Rpm pakage– rpm2cpio u-boot-2014.07-9.3.armv7l.rpm | cpio –idmv
• Copy u-boot-mmc.bin from ./var/tmp/u-boot to current directory
Tizen u-boot Binary Download
http://download.tizen.org/live/Tizen:/Common/arm-wayland/armv7l/u-boot-2015.01-19.3.armv7l.rpm
-
SKKU Embedded Software Lab.
87
26
• U-boot bootloader– Boot process
• Rom(In SOC) -> bl1 -> bl2(->uboot.bin)
Additional Binary Download
Need Bl1.bin / bl2.bin
-
SKKU Embedded Software Lab.
87
27
• Download binary & script – Only signed file can be executed for odroid
• $ wget -q https://github.com/hardkernel/U-Boot/raw/odroid-v2010.12/sd_fuse/bl1.HardKernel
• $ wget -q https://github.com/hardkernel/U-Boot/raw/odroid-v2010.12/sd_fuse/bl2.HardKernel
• $ wget -q https://github.com/hardkernel/U-Boot/raw/odroid-v2010.12/sd_fuse/tzsw.HardKernel
• $ wget -q https://github.com/hardkernel/U-Boot/raw/odroid-v2010.12/sd_fuse/sd_fusing.sh
• Edit sd_fusing.sh – vi sd_fusing.sh
Additional Binary Download
if=../u-boot.bin
-
SKKU Embedded Software Lab.
87
28
• Check device node after connecting sd reader– ls /dev/sd*
– In general, node is set to sdb
• Set execute permission– chmod +x sd_fusing.sh
• Fusing – sudo ./sd_fusing.sh /dev/sdb
Fusing
-
SKKU Embedded Software Lab.
87
29
Configuring Partitions & Platform Image Fusing
-
SKKU Embedded Software Lab.
87
30
• Tizen partition configuration– 7 partitions : mmcblk0p1 ~ mmcblk0p7
– MBR(Master Boot Record) is only supports up to four partitions
Partition Information
-
SKKU Embedded Software Lab.
87
31
• Use important partitions– Boot, platform, data, ums
Partition Information
PartitionMountPoint
Option Description
/dev/mmcblk0p1 /csa Rw Configuration Saved Area
/dev/mmcblk0p2 /boot Ro Kernel image
/dev/mmcblk0p3 - - Reserved
/dev/mmcblk0p4 /mnt/csc RwCustomer Software Configuration , default language, time, etc.
/dev/mmcblk0p5 / Ro Platform
/dev/mmcblk0p6 /opt Rw Data, App, etc
/dev/mmcblk0p7 /opt/media rw User space
-
SKKU Embedded Software Lab.
87
32
• Manually set partition by gparted– Install gparted
• sudo apt-get install gparted
– Create partition except first 2mb space
• Space bootloader & MBR
Partition Configuration 1
-
SKKU Embedded Software Lab.
87
33Partition Configuration 1
Sapce for Uboot
-
SKKU Embedded Software Lab.
87
34
• Automatic partition setup by using scripts– Create mkpar.sh file
Partition Configuration 2
#!/bin/bash
DISK=$1SIZE=`sfdisk -s $DISK`SIZE_MB=$((SIZE >> 10))
BOOT_SZ=128PLATFORM_SZ=2048DATA_SZ=3072let "UMS_SZ = $SIZE_MB - $BOOT_SZ - $PLATFORM_SZ - $DATA_SZ"
BOOT=bootPLATFORM=platformDATA=dataUMS=ums
if [[ $UMS_SZ -le 100 ]]then
echo "We recommend to use more than 4GB disk"exit 0
fi
echo "Label dev size"echo $BOOT" " $DISK"1 " $BOOT_SZ "MB"echo $PLATFORM" " $DISK"2 " $PLATFORM_SZ "MB"echo $DATA" " $DISK"3 " $DATA_SZ "MB"echo $UMS" " $DISK"4 " $UMS_SZ "MB"
MOUNT_LIST=`mount | grep $DISK | awk '{print $1}'`for mnt in $MOUNT_LISTdo
umount $mntdone
echo "Remove partition table..." dd if=/dev/zero of=$DISK bs=512 count=1 conv=notrunc
sfdisk --in-order --Linux --unit M $DISK
-
SKKU Embedded Software Lab.
87
35
• Set execute permission– chmod +x mkpar.sh
• Execute script with node name– sudo ./mkpar.sh /dev/sdb
Partition Configuration 2
-
SKKU Embedded Software Lab.
87
36
• Use three platform images– platform.img / data.img / ums.img
– Platform.img : 2nd partition
– Data.img : 3rd partition
– Ums.img : 4th partition
• Use dd command– sudo dd if=./platform.img of=/dev/sdb2 bs=512k
– sudo dd if=./data.img of=/dev/sdb3 bs=512k
– sudo dd if=./ums.img of=/dev/sdb4 bs=512k
Image Flash
-
SKKU Embedded Software Lab.
87
37
• Resolve partition size problem by gparted– Partition size is not displayed properly because entire partition
image
– Use check function of gparted
Partition Resize
-
SKKU Embedded Software Lab.
87
38
• Perform same work for other partitions
Partition Resize
Displayed properly
-
SKKU Embedded Software Lab.
87
39
• don’t need to flash kernel image if you use TizenUboot– Copy zImage to 1st boot partition
Kernel Image Copy
-
SKKU Embedded Software Lab.
87
40
• Kernel modules build & install– Execute in kernel build directory
1. Module build
• sudo make modules
2. Module install
• Make directory
– mkdir platform
• Mount platform partition
– sudo mount /dev/sdb2 ./platform
• Install modules
– sudo make INSTALL_MOD_PATH=./platform modules_install
Kernel Module Copy
-
SKKU Embedded Software Lab.
87
41
Configure Platform
-
SKKU Embedded Software Lab.
87
42
• Platform image mount– Make directory for mount
• mkdir platform
– Mount platform image
• sudo mount /dev/sdb2 ./platform
Prepare for Platform Configuration
-
SKKU Embedded Software Lab.
87
43
• Change mount partition in systemd– Path : ./usr/lib/systemd/system/local-fs.target.wants
– Mount special file system & storage
– Delete unused mount service • Csa.mount
• Boot.mount
Mount Option
Edit Edit
Edit
-
SKKU Embedded Software Lab.
87
44
• Chage mount device name in systemd– Change root partition
• -.mount : /dev/mmcblk0p5 -> /dev/mmcblk0p2
– Change data partition
• Opt.mount : /dev/mmcblk0p6 -> /dev/mmcblk0p3
– Change ums partition
• Opt-usr.mount : /dev/mmcblk0p7 -> /dev/mmcblk0p4
Mount Option
-
SKKU Embedded Software Lab.
87
45
• Edit fstab– Specify the required mount operations
– Path : /etc/fstab
– Annotating all option
Mount Option
-
SKKU Embedded Software Lab.
87
46
• Samsung Debug Bridge (Similar function with ADB와)– Can connect ODROID-U3 with Host PC
• Tizen on ODROID-U3:– Need to set SDB daemon.
SDB
-
SKKU Embedded Software Lab.
87
47
1. Create a script to run before starting SDBD1. Activate Sdb device
– chmod +x pre-sdbd.sh
SDB: Activation [1/3]
#!/bin/bashecho sdb > /sys/class/usb_mode/usb0/funcs_fconfecho 1 > /sys/class/usb_mode/usb0/enablesdbd
/bin/pre-sdbd.sh
-
SKKU Embedded Software Lab.
87
48
2. Change SDBD service file– Modified so that the script is running in the SDB service
SDB: Activation [2/3]
[Unit]Description=sdbdAfter=default.target
[Service]Type=forkingEnvironment=DISPLAY=:0PIDFile=/tmp/.sdbd.pidRemainAfterExit=yesExecStartPre=/bin/bash /bin/pre-sdbd.shExecStart=/usr/sbin/sdbd
[Install]WantedBy=multi-user.target
/usr/lib/systemd/system/sdbd.service
script to perform before the start sdbd service
Run after the multi-user.target
-
SKKU Embedded Software Lab.
87
49
2. SDBD service activation– Select one of the following methods
1) Manual activation
Make a symbolic link to sdbd.service at /usr/lib/system/systemd/system/multi-user.target.wants
2) Auto activation
Enter the following command after connecting odroid via UART
- systemctl enable sdbd.service
SDB: Activation [3/3]
-
SKKU Embedded Software Lab.
87
50
• Install USB driver for SDB– Install “SAMSUNG_USB_Driver_for_Mobile_Phones.exe”
Install Device Driver [1/2]
-
SKKU Embedded Software Lab.
87
51
• Install Uart device driver– Uart Interface driver
– CP210xVCPInstaller_x64.exe
Install Device Driver [2/2]
-
SKKU Embedded Software Lab.
87
52
Working check
-
SKKU Embedded Software Lab.
87
53Hardware Connection
AC Adapter
Odroid VU Touch
HDMI
AC Adapter
WiFI or Bluetooth
UART
SD Card
USB
Odroid U3
-
SKKU Embedded Software Lab.
87
54
• Putty Intall– Linux
• Apt-get install putty
– Windows
• http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe
• Putty Config– Linux
– Windows
• Device manager -> Check port number
UART Connection by Putty
-
SKKU Embedded Software Lab.
87
55
• Caution – Connect HDMI cable after power on
• The following screen output to putty
Odroid Boot
-
SKKU Embedded Software Lab.
87
56
• When the booting is completed, you can connect to the device vi UART
– Login ID : root
Tizen Platform Login
-
SKKU Embedded Software Lab.
87
57
• Install sdb– sudo apt-get install sdb
• Connect odroid to PC with the USB cable
• Check that the device has been recognized in vmware
– Connect “Samsung slp” device
SDB Connection 1
-
SKKU Embedded Software Lab.
87
58
• Check sdb connection– “sdb devices”
– “sdb shell”
SDB Connection 2
-
SKKU Embedded Software Lab.
87
59
Trouble shooting
-
SKKU Embedded Software Lab.
87
60
• • Hardware platforms are different
Change Various Settings for Odroid
RD-PQTizen reference phone
Odroid U3
StorageDisplay Input
-
SKKU Embedded Software Lab.
87
61
• If there is no input for a certain period of time, device enters sleep state
– Can’t use sdb, UART in sleep state
– Activated by pressing the power button
• Disable power-manager.service order to avoid entering entering into a sleep state– Remove symbolic link “power-manager.service” in
/usr/lib/system/systemd/system/multi-user.target.wants
• • Or should change the power-manager service
Power Management Features
-
SKKU Embedded Software Lab.
87
62
• Search source code in gerrit
• Download source code
• Check & change branch
0. Edit Power-manager Service [1/5]
-
SKKU Embedded Software Lab.
87
63
• Pm_core.c code– Trans_table: operations in power states
– Change action of sleep state from sleep to LCDOFF
0. Edit Power-manager Service [2/5]
-
SKKU Embedded Software Lab.
87
64
• Build with GBS
• Check package
– Power-manager-1.3.23-9.armv7l.rpm
• Output
– Power-manager-debuginfo-1.3.23-9.armv7l.rpm
• For debug
– Power-manager-debugsource-1.3.23-9.armv7l.rpm
• Source code
0. Edit Power-manager Service [3/5]
-
SKKU Embedded Software Lab.
87
65
• Copy the package file to odroid via sdb
• Install package
– Uvh : File update
– Force : Force install
– Nodeps : disregard dependency
• Check installed package
• To remove package
0. Edit Power-manager Service [4/5]
-
SKKU Embedded Software Lab.
87
66
• Use systemctl– Can check the current status of the service that are managed
by the Systemd
– Check power-manager
0. Edit Power-manager Service [5/5]
Service name state descryption
-
SKKU Embedded Software Lab.
87
67
• Device Dependent X– Is connected to the display on the Xorg
– DDX in the tizen does not operate properly if there is no lcd.
1. Display Output - Xorg DDX [1/2]
-
SKKU Embedded Software Lab.
87
68
• Replace DDX– File name : exynos_drv.so
• Download : https://drive.google.com/file/d/0B3hOqlhVI7BvbkdtNnM5alZlVDQ/view?usp=sharing
– Copy the replacement file to under path• /usr/lib/xrog/module/driver/
• Get sdb root permission & File push– sdb root on
– sdb push exynos_drv.so /usr/lib/xorg/modules/drivers/
• Reboot– sdb shell
– reboot -f
1. Display Output - Xorg DDX [2/2]
https://drive.google.com/file/d/0B3hOqlhVI7BvbkdtNnM5alZlVDQ/view?usp=sharing
-
SKKU Embedded Software Lab.
87
69
• With Odroid Vu, touch-coordinate error
• Xorg provides its own touch calibration function– Path : /etc/X11/xorg.conf.d/input.conf
– Add calibaration option to InputClass
• Can know the correction values using xinput_calibrator
2. Touch Screen Calibrate [1/2]
Section "InputClass"Identifier "evdev touchscreen catchall"MatchIsTouchScreen "on"MatchDevicePath "/dev/input/event*"Driver "evdevmultitouch“Option "MultiTouch" "10"Option "Calibration" “Calibration Value"
EndSection
-
SKKU Embedded Software Lab.
87
70
• Xinput_calibrator– Push xinput_calibrator package by sdb push
• Download : https://drive.google.com/file/d/0B3hOqlhVI7BvaGlCSldSSmtVYlk/view?usp=sharing
– Install the package with sdb shell• rpm -Uvh --force --nodeps xinput_calibrator
– Generally use this value in Odroid VU• Option "Calibration" "-1 1282 -4 888”
2. Touch Screen Calibrate [2/2]
https://drive.google.com/file/d/0B3hOqlhVI7BvaGlCSldSSmtVYlk/view?usp=sharing
-
SKKU Embedded Software Lab.
87
71
• No support on the software key– Need hardware key such as home / back
• Only one hardware keys(GPIO Buttion) in Odroid– Key mappings is required for other input
– Path : ./etc/X11/Xmodmap
– Modifying the values for key button
3. Key Mapping [1/2]
keycode 67 = XF86AudioRaiseVolumekeycode 68 = XF86AudioLowerVolumekeycode 69 = Cancelkeycode 70 = XF86Sendkeycode 71 = XF86Phonekeycode 72 = XF86Stopkeycode 73 = XF86Search
-
SKKU Embedded Software Lab.
87
72
• Keycode can be checked using xev
– Keyboard input example
– Mapping the desired key• Can use function keys such as F1 ~ F12
• Also you can use GPIO button (power button)
3. Key Mapping [2/2]
keycode
-
SKKU Embedded Software Lab.
87
73
• WiFi firmware copy– For some devices, the device can load the firmware from
outside in the initialization phase
• Copy rtl8195 firmware to /lib/firmware directory
• In odroid “lib/firmware/rtlwifi/WIFI_FIRMWARE”
• Download : https://drive.google.com/file/d/0B3hOqlhVI7BvWFJlQTZzWV84c2c/view?usp=sharing
• Should modify a shell script – /usr/bin/wlan.sh
4. Platform Setting for WiFi [1/2]
https://drive.google.com/file/d/0B3hOqlhVI7BvWFJlQTZzWV84c2c/view?usp=sharing
-
SKKU Embedded Software Lab.
87
74
• /bin/echo wlan.sh [start] [stop] [softap] [p2p] [check_hw]– Can support hotspot / WiDi
– Apply only regular net functionality
4. wlan.sh Script [2/2]
#!/bin/shIFACE_NAME=wlan0start(){
/sbin/ifconfig ${IFACE_NAME} up}
stop(){
/sbin/ifconfig ${IFACE_NAME} down}
case $1 in"start")start;;"stop")stop;;*)/bin/echo wlan.sh [start] [stop]exit 1;;esac
-
SKKU Embedded Software Lab.
87
75
• Scripts for Bluetooth– Path
• /usr/etc/bluetooth
– Required files
• bt-stack-up.sh
– Bluetooth activate
• bt-stack-down.sh
– Bluetooth deactivate
• bt-reset-env.sh
– Reset Bluetooth environment
• bt-set-addr.sh (Use original file of Tizen 2.2)
– Create Bluetooth address
5. Platform Setting for Bluetooth [1/4]
-
SKKU Embedded Software Lab.
87
76
• Need the device initialization for USB type BT – No separate device-specific initialization is required
5. Bt-stack-up.sh [2/4]
#!/bin/sh
## Script for executing Bluetooth stack#
# Register BT Device
# Set BT address: This will internally check for the file presence/usr/bin/setbd
# Activate BT Devicerfkill unblock bluetooth/usr/sbin/hciconfig hci0 up
# dbus path settingexport DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/app/dbus/user_bus_socket
# Execute BlueZ BT stack/usr/sbin/bluetoothd -d/usr/bin/bluetooth-share &
exit 0
Device activation -> Dbus Settings -> Daemon is running
-
SKKU Embedded Software Lab.
87
775. Bt-stack-down.sh [3/4]
#!/bin/sh
## Script for stopping Bluetooth stack#
# Remove BT device/usr/sbin/hciconfig hci0 downrfkill block bluetooth
# Kill BlueZ bluetooth stackkillall obexd obex-clientkillall bt-syspopupkillall bluetooth-sharekillall bluetooth-pb-agentkillall bluetooth-map-agentkillall bluetooth-hfp-agentkillall bluetoothd
# resultexit 0
Device Disable -> Daemon & Services Stop
-
SKKU Embedded Software Lab.
87
785. Bt-reset-env.sh [4/4]
#!/bin/sh
# BT Stack and device stop/usr/sbin/hciconfig hci0 downrfkill block bluetooth
# Remove BT files and settingrm -rf /opt/data/bluetooth/.bt_pairedrm -rf /var/lib/bluetooth/*
# Initialize BT vconf valuesvconftool set -tf int db/bluetooth/status "0" -g 6520vconftool set -tf int file/private/bt-service/flight_mode_deactivated "0" -g 6520 -ivconftool set -tf string memory/bluetooth/sco_headset_name "" -g 6520 -ivconftool set -tf int memory/bluetooth/device "0" -g 6520 -ivconftool set -tf int memory/bluetooth/btsco "0" -g 6520 -ivconftool set -tf int file/private/libug-setting-bluetooth-efl/visibility_time "0" -g 6520vconftool set -tf bool memory/private/bluetooth-share/quickpanel_clear_btn_status FALSE -g 6520 -ivconftool set -tf bool memory/private/bluetooth-share/opp_server_init FALSE -g 6520 -i
# Remove BT shared memorylist=`ipcs -m | awk '$1==0x0001000 {print $2}'`for i in $listdo
ipcrm -m $idoneipcs -m | grep "0x00001000" | awk '{ print $2 }'
Disable Device -> All Reset
-
SKKU Embedded Software Lab.
87
79
• Some features and apps, including Bluetooth, cannot be run on a low battery– Odroid has no battery
– Normal battery information is not displayed
6. Battery Problem [1/3]
-
SKKU Embedded Software Lab.
87
80
• Need to modify battery-related modules in the OAL(OEM Adaptation Layer)
6. Battery Problem [2/3]
-
SKKU Embedded Software Lab.
87
81
• Edit Device-manager-plugin-exynos– device_manager_plugin_exynos.c
• Modifying the battery remaining capacity to 100%
• Build & Install– Create Rpm package
– Copy the package to device & install• rpm –Uvh --nodeps --force device-manager-plugin-exynos-0.0.26-
0.armv7l.rpm
6. Battery Problem [3/3]
-
SKKU Embedded Software Lab.
87
82
• Tizen Sound System– ALSA : Kernel-level subsystems for sound support
– Pulse Audio : Third-party open-source framework to provide more sound-related functions
• Sound output device are different
• Need to change sound settings – Check sound device
• “aplay –l”
7. Sound Problem [1/2]
Card : 0 / Device : 1
-
SKKU Embedded Software Lab.
87
83
• Change output device in Pulse Audio setting– path : /etc/pulse/system.pa
– Change output device from hw:0,2 to hw:0,1
7. Sound Problem [2/2]
-
SKKU Embedded Software Lab.
87
84
• Library installation is required in order to use the OpenGL– Mali-D아
– Download
• https://wiki.tizen.org/wiki/Enable_3D_Acceleration_on_Tizen
8. Install OpenGL Library for 3D Acceleration [1/3]
https://wiki.tizen.org/wiki/Enable_3D_Acceleration_on_Tizen
-
SKKU Embedded Software Lab.
87
85
• Library Configuration
8. OpenGL Library [2/3]
platform-independent API
Open Graphics Library for Embedded System
-
SKKU Embedded Software Lab.
87
868. Install OpenGL Library [3/3]
• Copy DDK files
– Remove Virtual driver• rpm -e --nodeps opengl-es-virtual-drv
– Install new package• rpm -ivh --force *.rpm
– Sync & reboot• Sync ; reboot - f
-
SKKU Embedded Software Lab.
87
879. Notification Bar Problem [1/2]
• In Quick panel operation, rotation problem occurs
NormalRotation
Forced rotation of 90 degrees
-
SKKU Embedded Software Lab.
87
88
• • Edit the initialization codes related to rotation angle
– quickpanel/daemon/quickpanel-ui.c
– Comment out some initialization code
9. Notification Bar Problem [2/2]
-
SKKU Embedded Software Lab.
87
89Porting is Completed
-
SKKU Embedded Software Lab.
87
90Remaining Issues
• Movie Player Not Working
• Screen Orientation
• Software key