Developmentof Mobile Linu m Developmentof Mobile Linu x Open ...

baroohspottyMobile - Wireless

Jul 19, 2012 (5 years and 4 months ago)

1,119 views

Development of Mobile Linux
Open Platform
Development of Mobile Linux
Open Platform
April 16, 2008
Jyunji Kondo
Fujitsu Software Technologies Limited
Ideas
Ideas
Application
package
(.
apk
)
Dalvik
byte code
(.
dex
)
Dalvik
VM(ARMv5)
extract
convert
Class
libraries
CPU native
code
(ARMv5)
CPU native
code
(ARMv5)
convert
linkage
Linux
kernel
(ARMv5

BSP)
Linux kernel
(ex. i.MX31)
Application
package
(.
apk
)
Dalvik
byte code
(.
dex
)
Dalvik
VM(ARMv5)
extract
convert
Class
libraries
CPU native
code
(ARMv5)
CPU native
code
(ARMv5)
convert
linkage
Emulator
Real Hardware
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Main thesis
Main thesis
“It's not so difficult
“It's not so difficult
to just enable functions of
to just enable functions of
Android
Android
using well
using well
-
-
maintained
maintained
Linux BSP!”
Linux BSP!”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Real
Hardwares
Real
Hardwares
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
i.MX31 Product Development Kit
Topics
Topics
1.
input device
2.
sound
3.
power management
4.
telephony
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Input device
Input device
“If Linux BSP supports keyboards, mice, and
“If Linux BSP supports keyboards, mice, and
touch screens as input device, Android can
touch screens as input device, Android can
handle those.”
handle those.”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Facts:
Android emulator supports keyboards and mice.
Internals:
Android watch all files under /dev/input/.
Input device
Input device
“If Linux BSP supports keyboards, mice, and
“If Linux BSP supports keyboards, mice, and
touch screens as input device, Android can
touch screens as input device, Android can
handle those.”
handle those.”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Hypothesis:
Touch screens can be handled with
event interface of input device.
Result:
Achieved with small modification of input driver.
Input device
Input device
“If Linux BSP supports keyboards, mice, and
“If Linux BSP supports keyboards, mice, and
touch screens as input device, Android can
touch screens as input device, Android can
handle those.”
handle those.”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
How:

changing X
-
Y coordinate

X, Y direction

resolution

changing event type

EV_ABS/ABS_PRESSURE

EV_KEY/BTN_TOUCH
Sound
Sound
“If Linux BSP supports ALSA driver,
“If Linux BSP supports ALSA driver,
Android can play
Android can play
musics
musics
.”
.”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Facts:
Android emulator can play music on PC.
“If Linux BSP supports ALSA driver,
“If Linux BSP supports ALSA driver,
Android can play
Android can play
musics
musics
.”
.”
Real
Hardware
Emulator
Android
Sound
Sound
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Internals:
MP3/3GPP
MediaPlayer
API
Linux
kernel
EAC
driver
PCM
ALSA
driver
(ex. pcmC0D0p)
PCM
Host PC’s sound driver
pseudo H/W
PCM
real H/W
(PMIC)
PCM
(SDMA)
Hypothesis:
Power management
Power management


If Linux BSP supports to control
If Linux BSP supports to control
CPU clock
CPU clock
and
and
backlight brightness
backlight brightness
,
,
power management of android can be supported.”
power management of android can be supported.”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Facts:
Android provides 2 lock types

partial wake lock

full wake lock
Android also control backlight brightness
Power management
Power management


If Linux BSP supports to control
If Linux BSP supports to control
CPU clock
CPU clock
and
and
backlight brightness
backlight brightness
,
,
power management of android can be supported.”
power management of android can be supported.”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Internals:
Android operates
sysfs
files

/sys/
android_power
/
acquire_full_wake_lock

/sys/
android_power
/
acquire_partial_wake_lock

/sys/class/
leds
/keyboard
-
backlight/brightness

/sys/class/
leds
/
lcd
-
backlight/brightness

/sys/class/
leds
/button
-
backlight/brightness
“If Linux BSP supports to control
“If Linux BSP supports to control
CPU clock
CPU clock
and
and
backlight brightness
backlight brightness
,
,
power management of android can be supported.”
power management of android can be supported.”
Real
Hardware
Emulator
Android
Power management
Power management
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Internals:
wake lock
PowerManager
API
acquire/release
Linux
kernel
android power
driver
real H/W (CPU/IPU)
leds
class
DPM
Hypothesis:
Power management
Power management


If Linux BSP supports to control
If Linux BSP supports to control
CPU clock
CPU clock
and
and
backlight brightness
backlight brightness
,
,
power management of android can be supported.”
power management of android can be supported.”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
How:

CPU freq

defines 4 OPs and policies

532M, 399M, 266M, 133M

throttle
down every 3 seconds during no activities

LCD backlight

become darker every 15 seconds.
Telephony
Telephony


If Linux BSP can control baseband with serial I/F,
If Linux BSP can control baseband with serial I/F,
you can make a phone call with android.”
you can make a phone call with android.”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Facts:

Android emulator supports a pseudo GSM
modem device.

There is the
rild
(Radio I/F Layer Daemon).


If Linux BSP can control baseband with serial I/F,
If Linux BSP can control baseband with serial I/F,
you can make a phone call with android.”
you can make a phone call with android.”
Real
Hardware
Emulator
Android
Telephony
Telephony
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
Internals:
Linux
kernel
serial
driver
W
-
SIM
(PHS)
Hypothesis:
rild
libreference
-
ril.so
android modem
(pseudo GSM)
Android
modem
(GSM)
wsimd
VT
Conclusion
Conclusion
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED
“It's not so difficult
“It's not so difficult
to just enable functions of
to just enable functions of
Android
Android
using well
using well
-
-
maintained
maintained
Linux BSP!”
Linux BSP!”
Copyright 2008 FUJITSU SOFTWARE TECHNOGIES LIMITED