W2012-ITS/Androidkernel mit GadgetFS: Difference between revisions

From
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
GadgetFS:
Vorraussetzungen:
- Buildenvironment
- GadgetFS im Kernel aktivieren
- Gerät rooten
- Kernel flashen
- USB Treiber schreiben


Ziel
Environment & building the kernel for the first time
Motivation
Meilensteine
Voraussetzung
Kernel
GadgetFS
rooten
flashen
Test
Ausblick
-------------------------------


Ziel:
1.) Ubuntu 10.04 64Bit (32bit is not possible for Kernels >2.3)
- Nexus S als NFC Kartenleser
- Untersuchen, ob gadgetFS für die Umsetzung geeignet ist
-------------------------------


Motivation:
2.) Ubuntu updaten & reboot
- gadgetFS ermöglicht dem Programmierer ein Treiber im Userspace zu
schreiben
--------------------------------------


Meilensteine:
$ sudo apt-get update
1) kernel kompileren
$ sudo apt-get dist-upgrade
2) gadgetfs modul kompilieren (als modul oder in kernel)
$ sudo reboot
3) samsung galaxy s rooten
4) samsung galaxy flashen
5) gadgetfs mounen
6) usb.c mit crosscompiler kompilieren
7) testen mit usb.c
------------------------------------

Voraussetzung:
- Kernel mit gadgetFS für Nexus S
- android source tree
- cross compiler
- build enviroment
------------------------------------

Kernel:
- Viele Anleitungen im Netz, zum Teil veraltet
Von uns benutzt:

http://forum.xda-developers.com/showthread.php?t=1774035

Fehlermeldungen und Lösungen
-libGL.so Problemm:
http://www.quantumwise.com/support/faq/116-libglso-cannot-open-
shared-object-file?catid=25%3Ainstallation-issues

- Black Screen im Emulator:
http://stackoverflow.com/questions/2446414/android-emulator-is-start-but-
window-show-blank-screen

----------------------------------------

Git:
- git checkout:

http://gitready.com/intermediate/2009/01/09/checkout-remote-tracked-
branch.html

- make modules & modules install:

http://www.linuxhaven.de/dlhp/HOWTO/DE-Kernel-HOWTO-9.html

- boot.img -Erstellen

http://madteam.co/news/2012/02/how-to-build-a-custom-android-kernel-
for-your-device/

- Ubuntu 12.x android-jdk:

http://www.liberiangeek.net/2012/07/download-and-install-androidsdk-in-
ubuntu-12-04-precise-pangolin/

---------------------------------------------------------------------------------

Rooten + Flashen:

http://androidforums.com/evo-3d-all-things-root/494212-complete-
newbies-guide-rooting-flashing-evo-3d-roms-kernels-using-fastboot.html

---------------------------------------------------------------------------------

GadgetFS Testen/Endpunkte aufbauen (nicht realisiert)

http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&p=8
77600

- GadgetFS mounten(read only):
mount -o remount,rw /dev/block/mmcblk0p4 /system

------------------------------------------------------------------------------------------

Test:

Crosscompiling von ubs.c
prebuild/linux-x86/toolchain/arm-aebi-4.4.3/bin/arm-aebi-gcc usb usb.c
usbstring.c -I- -I /crespo/samsung/include/linux

-> was noch fehlt ist die types.h
-> types.h = /samsung/arch/arm/include/asm/types.h

- crosscompile .c unter Eclipse:

http://www.eclipse.org/forums/index.php/m/187633/
http://ksearch.wordpress.com/2010/10/18/pthread-support-in-eclipse/

Revision as of 11:32, 16 October 2012

GadgetFS:

Ziel Motivation Meilensteine Voraussetzung Kernel GadgetFS rooten flashen Test Ausblick


Ziel: - Nexus S als NFC Kartenleser - Untersuchen, ob gadgetFS für die Umsetzung geeignet ist


Motivation: - gadgetFS ermöglicht dem Programmierer ein Treiber im Userspace zu schreiben


Meilensteine: 1) kernel kompileren 2) gadgetfs modul kompilieren (als modul oder in kernel) 3) samsung galaxy s rooten 4) samsung galaxy flashen 5) gadgetfs mounen 6) usb.c mit crosscompiler kompilieren 7) testen mit usb.c


Voraussetzung: - Kernel mit gadgetFS für Nexus S - android source tree - cross compiler - build enviroment


Kernel: - Viele Anleitungen im Netz, zum Teil veraltet Von uns benutzt:

http://forum.xda-developers.com/showthread.php?t=1774035

Fehlermeldungen und Lösungen -libGL.so Problemm: http://www.quantumwise.com/support/faq/116-libglso-cannot-open- shared-object-file?catid=25%3Ainstallation-issues

- Black Screen im Emulator: http://stackoverflow.com/questions/2446414/android-emulator-is-start-but- window-show-blank-screen


Git: - git checkout:

http://gitready.com/intermediate/2009/01/09/checkout-remote-tracked- branch.html

- make modules & modules install:

http://www.linuxhaven.de/dlhp/HOWTO/DE-Kernel-HOWTO-9.html

- boot.img -Erstellen

http://madteam.co/news/2012/02/how-to-build-a-custom-android-kernel- for-your-device/

- Ubuntu 12.x android-jdk:

http://www.liberiangeek.net/2012/07/download-and-install-androidsdk-in- ubuntu-12-04-precise-pangolin/


Rooten + Flashen:

http://androidforums.com/evo-3d-all-things-root/494212-complete- newbies-guide-rooting-flashing-evo-3d-roms-kernels-using-fastboot.html


GadgetFS Testen/Endpunkte aufbauen (nicht realisiert)

http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&p=8 77600

- GadgetFS mounten(read only): mount -o remount,rw /dev/block/mmcblk0p4 /system


Test:

Crosscompiling von ubs.c prebuild/linux-x86/toolchain/arm-aebi-4.4.3/bin/arm-aebi-gcc usb usb.c usbstring.c -I- -I /crespo/samsung/include/linux

-> was noch fehlt ist die types.h -> types.h = /samsung/arch/arm/include/asm/types.h

- crosscompile .c unter Eclipse:

http://www.eclipse.org/forums/index.php/m/187633/ http://ksearch.wordpress.com/2010/10/18/pthread-support-in-eclipse/