2013年6月9日 星期日

Remote debugging EDK2 BeagleBoardPkg on qEmu

Get ARM none EABI toolchain

arm-none-eabi-gdb included
http://www.codesourcery.com/sgpp/lite/arm/portal/package7813/public/arm-none-eabi/arm-2010.09-51-arm-none-eabi-i686-pc-linux-gnu.tar.bz2

Get module symbol information

Check Build/BeagleBoard/DEBUG_ARMGCC/FV/FVMAIN_COMPACT.Fv.map
Get .textbaseaddress and .databaseaddress

Load symbol information

arm-none-eabi-gdb
(gdb) add-symbol-file <BEAGLEROOT>/Build/BeagleBoard/DEBUG_ARMGCC/ARM/ArmPlatformPkg/PrePi/PeiUniCore/DEBUG/ArmPlatformPrePiUniCore.dll 0x0080008180 -s data 0x008001b5e4

add symbol table from file <BEAGLEROOT>/Build/BeagleBoard/DEBUG_ARMGCC/ARM/ArmPlatformPkg/PrePi/PeiUniCore/DEBUG/ArmPlatformPrePiUniCore.dll" at
.text_addr = 0x80008180
data_addr = 0x8001b5e4
(y or n) y

Reading symbols from <BEAGLEROOT>/Build/BeagleBoard/DEBUG_ARMGCC/ARM/ArmPlatformPkg/PrePi/PeiUniCore/DEBUG/ArmPlatformPrePiUniCore.dll...warning: section data not found in <BEAGLEROOT>/Build/BeagleBoard/DEBUG_ARMGCC/ARM/ArmPlatformPkg/PrePi/PeiUniCore/DEBUG/ArmPlatformPrePiUniCore.dll
done.

Start ARM qEmu

qemu-system-arm -M beagle -s -S -serial stdio -sd beagle.img
-s for waiting for gdb connection
-S for stopping execution when qEmu starts up

Connecting qEmu using GDB

(gdb) target remote :1234
Remote debugging using :1234
0x40014000 in ?? ()

Example

(gdb) b _ModuleEntryPoint
Breakpoint 1 at 0x80008188: file /home/kurt/programming/edk2/src/beagle/Build/BeagleBoard/DEBUG_ARMGCC/ARM/ArmPlatformPkg/PrePi/PeiUniCore/OUTPUT/Arm/ModuleEntryPoint.iii, line 39.

Connecting qEmu using DDD

sudo apt-get install ddd
ddd --debugger arm-none-eabi-gdb

In DDD using GDB command line

Get module symbol information
Load symbol information
Connecting qEmu using GDB




2013年6月7日 星期五

Build EDK2 BeagleBoardPkg on Mac OS X

Install XCode


Install MacPorts


Install ARM toolchain 

sudo port install arm-none-eabi-gcc 

Within Darwin section in  BeagleBoardPkg/build.sh

Change XCODE32 to ARMGCC

Build

./build.sh

Linaro image tools for Mac OS X

Not available yet
https://bugs.launchpad.net/linaro-image-tools
My workaround is making image on the Ubuntu and load it to Mac
Looking forward tools for Mac OS X
Temporarily switch back to Ubuntu 

Build and install Linaro qEmu on Mac OS X

Download source code

https://launchpad.net/qemu-linaro/

Configure and build 

./configure --target-list=arm-softmmu \
--prefix=/Users/<user_name>/qemu/linaro/1.4.0-2013.03/

make

Tricky modification and install

Search LIBTOOL in config-host.mak
Change libtool to glibtool

make install

2013年6月6日 星期四

Build and install Linaro qEmu on Ubuntu

Install necessary packages

sudo apt-get install build-essential autoconf libtool libpixman zlibc libsdl-dev libsdl1.2-dev texinfo

Download and unpack Linaro qEmu

tar zxf qemu-linaro-<version>.gz

Build and install Linaro ARM qEmu

mkdir -p /home/<user_name>/bin/qemu/linaro-<version>/
cd $QEMU-LINARO-<version>-ROOT
./configure --target-list=arm-softmmu,arm-linux-user --prefix=/home/<user_name>/bin/qemu/linaro-<version>/arm
make 
make install

ARM EABI big endian

./configure --target-list=arm-softmmu,armeb-linux-user --prefix=/home/<user_name>/bin/qemu/linaro-<version>/armeb

Build BeagleBoardPkg using gcc-arm-linux-gnueabi

Install ARM EABI GCC

sudo apt-get install gcc-arm-linux-gnueabi

Modification in BeagleBoardPkg/build.sh

#
# Pick a default tool type for a given OS if no toolchain already defined
#
...
#TARGET_TOOLS=ARMGCC
TARGET_TOOLS=ARMLINUXGCC
...

undefined reference to `__stack_chk_fail'
undefined reference to `__stack_chk_guard'

Append -fno-stack-protector to DEBUG_ARMLINUXGCC_ARM_CC_FLAGS
Append -fno-stack-protector to RELEASE_ARMLINUXGCC_ARM_CC_FLAGS

2013年6月3日 星期一

海洋音樂祭 2013 海洋獨立音樂大賞 會前賽 @ 淡水

看到很多優缺點學習了很多
純屬個人意見
歡迎"討論" ^^

開場:IO

聲音平衡當天聽下來是平均以上
表演畫面也是協調的
歌迷很熱情
IO結束後就一哄而散
貝斯聲音還滿喜歡
是場穩健的表演

一:P!SCO缺席

戰略性調整賽程日期?

二:北極光

溫溫的穩穩的沒有特別突出
貝斯手有些律動感

三:許書豪

一個人用木吉他和Loop機器表演
看起來有點單薄
第一首歌低頻調錯音
旋律、和聲、貝斯到節奏一人包辦
第三手和聲編寫豐富
整體律動好聽

四:鹿角

聽到主持人介紹funk, rock, blues的結合會期待
但會前賽的歌都比較軟
律動是鬆的
我想聽緊的
團員協調感好

五:陳冠銓

不知何故吉他在外場整個不見
聲響彷彿變成基音樂團
電子琴的低頻跟貝斯打架
主唱有試圖展現唱功
團員組成有點違和感
吉他手染金長髮金屬味濃厚
貝斯手緊身褲彩色護腕運動感十足
律動不太協調

六:蜜糖女郎

Rockabilly風味的樂團
很可惜的第五團吉他出問題之後
蜜糖女郎的吉他手聲音也出不來
表現整體是好的

七:小豬撲滿

女主唱有點可愛
彌補了音準的不足
團員有點放不開
第三首歌水煮牛編得好聽
貝斯手法俐落

八:中Tone

唱功像是唱KTV但是很開朗的主唱
熱情一直不斷感染而來有點感動
鼓手對Program還不夠熟
貝斯手編曲有點豐富

九:暗黑白領階級

主唱的音色有亮點
鼓手律動好聽編曲不落俗套
把整個團的律動襯托出來
客語歌詞與小喇叭讓人有印象
有首是Shuffle不過吉他手刷成16分拍不明顯
整體是會讓人印象深刻樂團

十:文藝復興

主唱聲樂底共鳴直穿人肺部
舉止優雅端莊但表演時不只佇立唱歌
還會跟隨節奏搖擺
團員律動一致
貝斯渾厚有力包圍整場
以歌德力量金而言
吉他tone有點客氣
小鼓有點客氣
是好聽的金屬團

2013年6月2日 星期日

紅豬 加藤登紀子 時には昔の話を 歌詞 和弦

歌詞參照

作詞/作曲:加藤登紀子

歡迎轉載:)

Key: F Play:F

Intro
F C F
Gm C-C7bD Dm-G-C

F C/E Dm Am
時には昔の話をしようか
bB Am Gm C
通いなれた なじみのあの店
F C/E Dm Am
マロニエの並木が窓辺に見えてた
bB Am Gm C
コーヒーを一杯で一日
Dm Am Dm Am
見えない明日を むやみにさがして
bB Bdim7 C
誰もが希望をたくした

bB C Am-C-Dm
ゆれていた時代の熱い風にふかれて
bB-Am-Gm-F-C/E C
体中で瞬間(とき)を感じた 
F C F
そうだね
Gm C-C7bD Dm-G-C

F C/E Dm Am
道端で眠ったこともあったね
bB Am Gm C
どこにも行けない みんなで
F C/E Dm Am
お金はなくても なんとか生きてた
bB Am Gm C
貧しさが明日を運んだ
Dm Am Dm Am
小さな下宿屋にいく人もおしかけ
bB Bdim7 C
朝まで騒いで眠った

bB C Am-C-Dm
嵐のように毎日が燃えていた
bB-Am-Gm-F-C/E C
息がきれるまで走った 
F G Am
そうだね
F G A9-Am
bB C Dm
Gm C

F C/E Dm Am
一枚残った写真をごらんよ
bB Am Gm C
ひげづらの男は君だね
F C/E Dm Am
どこにいるのか今ではわからない
bB Am Gm C
友達もいく人かいるけど
Dm Am Dm Am
あの日のすべてが空しいものだと
bB Bdim7 C
それは誰にも言えない

bB C Am-C-Dm
今でも同じように見果てぬ夢を描いて
bB-Am-Gm-F-C/E C
走りつづけているよね 
F C F
どこかで
Gm C-C7bD Dm-G-C
F

2013年6月1日 星期六

UEFI Boot Linaro images on qEmu based BeagleBoard

Build EDK2 BeagleBoardPkg


Boot Linaro-m alip (Kubuntu 10.10)

Install needed packages
KPH$ sudo apt-get install parted dosfstools uboot-mkimage python-argparse python-dbus python-debian python-parted qemu-arm-static btrfs-tools command-not-found

Create and change to working directory
KPH$ cd $(WORKROOT)
KPH$ mkdir -p linaro-m/alip && cd linaro-m/alip

Get image and hardware packs
KPH$ wget http://releases.linaro.org/platform/linaro-m/alip/final/linaro-m-alip-tar-20101109-0.tar.gz http://releases.linaro.org/platform/linaro-m/hwpacks/final/hwpack_linaro-omap3_20101109-1_armel_supported.tar.gz

Install Linaro image tools
KPH$ sudo add-apt-repository ppa:linaro-maintainers/tools
KPHsudo apt-get update
KPHsudo apt-get install linaro-image-tools

Create u-boot and Linux Linaro image
KPHsudo linaro-media-create --image_file alip.img --dev beagle --binary linaro-m-alip-tar-20101109-0.tar.gz --hwpack hwpack_linaro-omap3_20101109-1_armel_supported.tar.gz
KPH$ sudo chmod a+rw alip.img

Replace u-boot.bin with UEFI
KPHmkdir /tmp/alip_boot/
KPHsudo mount -o loop,offset=$[63*512] $(WORKROOT)/linaro-m/alip/alip.img /tmp/alip_boot
KPH$ sudo cp $(EDK2ROOT)/edk2/Build/BeagleBoard/RELEASE_ARMGCC/FV/BEAGLEBOARD_EFI.fd /tmp/alip_boot/u-boot.bin
KPH$ sudo umount /tmp/alip_boot

ARM UEFI only supports zImage currently, so add zImage to the sdcard
KPH$ tar xzf hwpack_linaro-omap3_20101109-1_armel_supported.tar.gz
KPH$ cd pkgs/
KPH$ dpkg -x linux-image-2.6.35-1008-linaro-omap_2.6.35-1008.15_armel.deb .
KPH$ sudo mount -o loop,offset=$[63*512] $(WORKROOT)/linaro-m/alip/alip.img /tmp/alip_boot
KPH$ sudo cp boot/vmlinuz-2.6.35-1008-linaro-omap /tmp/alip_boot/zImage

Install ARM qEmu
KPH$ sudo add-apt-repository ppa:linaro-maintainers/tools
KPH$ sudo apt-get update
KPH$ sudo apt-get install qemu-user-static qemu-system

Test UEFI on qEmu
KPH$ sudo qemu-system-arm -M beagle -serial stdio -sd alip.img

Add a boot device entry and boot from it

The default boot selection will start in   7 seconds

[1] Linux from SD

[2] Shell
[3] Boot Manager
Start: 3
[1] Add Boot Device Entry
[2] Update Boot Device Entry
[3] Remove Boot Device Entry
[4] Update FDT path
[5] Return to main menu
Choice: 1
[1] SemihostFs (0 MB)
[2] boot (51 MB)
[3] VenHw(4D00EF14-C4E0-426B-81B7-30A00A14AAD6)
Select the Boot Device: 2
File path of the EFI Application or the kernel: zImage
Has FDT support? [y/n] nAdd an initrd: [y/n] yFile path of the initrd: uInitrd
Arguments to pass to the binary: console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw earlyprintk fixrtc nocompcache vram=12M omapfb.mode=dvi:1280x720MR-16@60
Description for this new Entry: alip
[1] Add Boot Device Entry
[2] Update Boot Device Entry
[3] Remove Boot Device Entry
[4] Update FDT path
[5] Return to main menu
Choice: 5
[1] Linux from SD
[2] alip
[3] Shell
[4] Boot Manager
Start: 2
   PEI    661 ms
   DXE   4558 ms
   BDS   5380 ms
Total Time = 10600 ms
Uncompressing Linux... done, booting the kernel.
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 2.6.35-1008-linaro-omap (buildd@hawthorn) (gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5) ) #15-Ubuntu Fri Oct 22 11:56:29 UTC 2010 (Ubuntu 2.6.35-1008.15-linaro-omap 2.6.35.7)

(booting messages)

Seeing messages below on Terminal means boot is done
Welcome to Linaro!
 * Documentation:  http://www.linaro.org

1 package can be updated.
0 updates are security updates.

root@localhost:~# 

Takes a while for the GUI desktop on qEmu



























With similar steps you could try another images you like. 
Enjoy. :)

==================================================

Issues

SD: CMD12 in a wrong state
Mouse and keyboard do not work
==================================================

References

Follow steps in the link below first
https://wiki.linaro.org/Resources/HowTo/Qemu-beagleboard

Choose pre-built images of linaro-m (older Ubuntu Maverick version)
http://releases.linaro.org/platform/linaro-m/

Using UEFI to boot Linux
http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=BeagleBoardPkg#Using_UEFI_to_boot_Linux

Ciacia 何欣穗 於是 歌詞 和弦

歌詞參照

http://mojim.com/twy100031x2x2.htm

作詞/作曲:何欣穗(Ciacia)

歡迎轉載:)

Key: C to F Play: C

C Em Am F
你抽的菸模糊了我視線 
C Em Am F
緩慢圍繞著我卻沒有愛
C Em Am F
腳邊的貓牠緊緊貼著我 
C Em Am F
我的口罩忘了戴
C Em Am F
於是你抽了一口菸 
C Em Am F
手插口袋心不在焉 
C Em Am F
於是我胸口的左邊被你摧毀
C Em Am F
於是我花了一整天 
C Em Am F
找尋屬於我的品味
C Em Am F
我於是等貓安靜走開 
C Em Am F
等陰晴圓缺
Dm bB F
可是貓撒嬌鬼精靈 
C Gm
像你的菸它不願散去 喔
Dm bB F
我會帶我自己飛走 飛往天空 
Gm bB G
Wanna be alive 補充dioxide

Solo
C Em Am F
C G bB bB
C Em Am F
C G bB bB

C Em Am F
於是我偷了你的菸 愛什麼時候成了second hand
C Em Am F
於是我收起了無奈 我喝了一口beer任意撒野
C Em Am F
於是我將貓咪引開 土黃色的塵埃找到了肺
C Em Am F
於是我掙脫了鎖鏈 兩個世界沒關聯

魔女の宅急便 やさしさに包まれたなら 和弦 歌詞

歌詞參照


作詞 荒井由実 
作曲 荒井由実
松任谷由実(荒井由実)

歡迎轉載:)

Key: bG Play: G 

Intro
G Gsus4 G Gsus4

G A #Fm Bm Em
小さい頃は 神様がいて
C Am D D
不思議に夢を かなえてくれた
G A #Fm Bm Em
やさしい気持ちで 目覚めた朝は
C Am D Bm B
大人になっても 奇蹟は起こるよ
Em C Em C
カーテンを開いて 静かな木漏れ陽の
C Am Bm Em
やさしさに包まれたなら きっと
C Am D D
目に写る全てのことは メッセージ

Solo
G Gsus4 G Gsus4

G A #Fm Bm Em
小さい頃は 神様がいて
C Am D D
毎日愛を 届けてくれた
G A #Fm Bm Em
心の奥に しまい忘れた
C Am D D
大切な箱 開くときは今
Em C Em C
雨上がりの庭で くちなしの香りの
C Am Bm Em
やさしさに包まれたなら きっと
C Am D D
目に写る全てのことは メッセージ

Session
D D

Em C Em C
カーテンを開いて 静かな木漏れ陽の
C Am Bm Em
やさしさに包まれたなら きっと
C Am D D
目に写る全てのことは メッセージ

Ending
G Gsus4 G Gsus4
G