SlideShare a Scribd company logo
1 of 11
Download to read offline
Maemo in QEMU



 Marcin Juszkiewicz

 maemo@haerwu.biz
http://blog.haerwu.biz/
How it looks
What is emulated
●   OMAP2 CPU
●   N800 tablet keypad
●   N810 tablet keyboard
●   touchscreen
●   flash chip
●   SD card slot
●   USB network adapter (QEMU add-on)
●   USB keyboard (QEMU add-on)
What is missing
●   OMAP2 DSP part
●   Integrated camera
●   WiFi
●   FM tuner
●   Sound
●   Bluetooth (work in progress)
●   Second SD slot (can be added)
●   GPS (can be added from Openmoko Neo)
What is needed
●   QEMU from SVN repository (tested with r5224)
●   Poky from SVN repository (tested with r5197)
●   Maemo image (Chinook or Diablo)
●   Nokia flasher (or 0xffff)
●   Fast computer (64bit Linux preferred)
●   mtd1 dump from tablet with LifeGuard disabled
●   TUN/TAP support in kernel (for networking)
Preparing image
●   Fetch Diablo image
●   Unpack it using Nokia Flasher
●   Create image with those commands:
    –   poky-nokia800-flashutil initfs.jffs2 maemo-
        image.qemuflash initfs
    –   poky-nokia800-flashutil config.mtd maemo-
        image.qemuflash config
    –   poky-nokia800-flashutil rootfs.jffs2 maemo-
        image.qemuflash rootfs
Booting
sudo qemu-system-arm -kernel zImage
-net nic,model=usb,vlan=0
-net tap,vlan=0,ifname=tap0,
 script=poky-qemu-ifup,
 downscript=poky-qemu-ifdown
-mtdblock diablo.qemuflash
-m 128 -M n810 -show-cursor
-usb -usbdevice net:0
-usbdevice keyboard
Potential problems
●   Network is via 'eth0' but since libconic only deals
    with WiFi and Bluetooth, a quot;Dummy networkquot; is
    required.
●   N810 keymap is hard to use on PC keyboard –
    emulated USB keyboard works fine
Emulation authors
●   Fabrice Bellard (QEMU author)
●   Paul Brook (ARM emulation)
●   Andrew Zaborowski (N8x0 emulation)
Questions?
Contact



 Marcin Juszkiewicz

 maemo@haerwu.biz
http://blog.haerwu.biz/

More Related Content

Similar to Maemo In Qemu

OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic UsageOpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebula Project
 

Similar to Maemo In Qemu (20)

Mainline kernel on ARM Tegra20 devices that are left behind on 2.6 kernels
Mainline kernel on ARM Tegra20 devices that are left behind on 2.6 kernelsMainline kernel on ARM Tegra20 devices that are left behind on 2.6 kernels
Mainline kernel on ARM Tegra20 devices that are left behind on 2.6 kernels
 
Kvm optimizations
Kvm optimizationsKvm optimizations
Kvm optimizations
 
Qemu - Raspberry | while42 Singapore #2
Qemu - Raspberry | while42 Singapore #2Qemu - Raspberry | while42 Singapore #2
Qemu - Raspberry | while42 Singapore #2
 
Alcatel lucent in gns3 (ciscoz.com)
Alcatel lucent in gns3 (ciscoz.com)Alcatel lucent in gns3 (ciscoz.com)
Alcatel lucent in gns3 (ciscoz.com)
 
How to work seamlessly in your vm without pressing host key again and again
How to work seamlessly in your vm without pressing host key again and againHow to work seamlessly in your vm without pressing host key again and again
How to work seamlessly in your vm without pressing host key again and again
 
XS Boston 2008 Self IO Emulation
XS Boston 2008 Self IO EmulationXS Boston 2008 Self IO Emulation
XS Boston 2008 Self IO Emulation
 
Innovation with pcDuino
Innovation with pcDuinoInnovation with pcDuino
Innovation with pcDuino
 
NFD9 - Matt Peterson, Data Center Operations
NFD9 - Matt Peterson, Data Center OperationsNFD9 - Matt Peterson, Data Center Operations
NFD9 - Matt Peterson, Data Center Operations
 
Locally run a FIWARE Lab Instance In another Hypervisors
Locally run a FIWARE Lab Instance In another HypervisorsLocally run a FIWARE Lab Instance In another Hypervisors
Locally run a FIWARE Lab Instance In another Hypervisors
 
Kernel Recipes 2015 - Kernel dump analysis
Kernel Recipes 2015 - Kernel dump analysisKernel Recipes 2015 - Kernel dump analysis
Kernel Recipes 2015 - Kernel dump analysis
 
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic UsageOpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
OpenNebulaConf 2013 - Hands-on Tutorial: 2. Installing and Basic Usage
 
Starting Raspberry Pi
Starting Raspberry PiStarting Raspberry Pi
Starting Raspberry Pi
 
Having fun with Raspberry(s) and Apache projects
Having fun with Raspberry(s) and Apache projectsHaving fun with Raspberry(s) and Apache projects
Having fun with Raspberry(s) and Apache projects
 
Let's begin io t with $10
Let's begin io t with $10Let's begin io t with $10
Let's begin io t with $10
 
Raspberry with laptop
Raspberry with laptopRaspberry with laptop
Raspberry with laptop
 
LinuxAlt 2013: Writing a driver for unknown USB device
LinuxAlt 2013: Writing a driver for unknown USB deviceLinuxAlt 2013: Writing a driver for unknown USB device
LinuxAlt 2013: Writing a driver for unknown USB device
 
NetBSD on Google Compute Engine (en)
NetBSD on Google Compute Engine (en)NetBSD on Google Compute Engine (en)
NetBSD on Google Compute Engine (en)
 
Metasploitable
MetasploitableMetasploitable
Metasploitable
 
Hack.LU 2018 ARM IoT Firmware Emulation Workshop
Hack.LU 2018 ARM IoT Firmware Emulation WorkshopHack.LU 2018 ARM IoT Firmware Emulation Workshop
Hack.LU 2018 ARM IoT Firmware Emulation Workshop
 
x86_64 Hardware Deep dive
x86_64 Hardware Deep divex86_64 Hardware Deep dive
x86_64 Hardware Deep dive
 

Recently uploaded

February 2024 Recommendations for newsletter
February 2024 Recommendations for newsletterFebruary 2024 Recommendations for newsletter
February 2024 Recommendations for newsletter
ssuserdfec6a
 
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
Cara Menggugurkan Kandungan 087776558899
 
the Husband rolesBrown Aesthetic Cute Group Project Presentation
the Husband rolesBrown Aesthetic Cute Group Project Presentationthe Husband rolesBrown Aesthetic Cute Group Project Presentation
the Husband rolesBrown Aesthetic Cute Group Project Presentation
brynpueblos04
 

Recently uploaded (10)

February 2024 Recommendations for newsletter
February 2024 Recommendations for newsletterFebruary 2024 Recommendations for newsletter
February 2024 Recommendations for newsletter
 
Pokemon Go... Unraveling the Conspiracy Theory
Pokemon Go... Unraveling the Conspiracy TheoryPokemon Go... Unraveling the Conspiracy Theory
Pokemon Go... Unraveling the Conspiracy Theory
 
2023 - Between Philosophy and Practice: Introducing Yoga
2023 - Between Philosophy and Practice: Introducing Yoga2023 - Between Philosophy and Practice: Introducing Yoga
2023 - Between Philosophy and Practice: Introducing Yoga
 
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot GirlsDadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
Dadar West Escorts 🥰 8617370543 Call Girls Offer VIP Hot Girls
 
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
KLINIK BATA Jual obat penggugur kandungan 087776558899 ABORSI JANIN KEHAMILAN...
 
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptx
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptxSIKP311 Sikolohiyang Pilipino - Ginhawa.pptx
SIKP311 Sikolohiyang Pilipino - Ginhawa.pptx
 
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...
Call Girls In Mumbai Just Genuine Call ☎ 7738596112✅ Call Girl Andheri East G...
 
the Husband rolesBrown Aesthetic Cute Group Project Presentation
the Husband rolesBrown Aesthetic Cute Group Project Presentationthe Husband rolesBrown Aesthetic Cute Group Project Presentation
the Husband rolesBrown Aesthetic Cute Group Project Presentation
 
WOMEN EMPOWERMENT women empowerment.pptx
WOMEN EMPOWERMENT women empowerment.pptxWOMEN EMPOWERMENT women empowerment.pptx
WOMEN EMPOWERMENT women empowerment.pptx
 
March 2023 Recommendations for newsletter
March 2023 Recommendations for newsletterMarch 2023 Recommendations for newsletter
March 2023 Recommendations for newsletter
 

Maemo In Qemu

  • 1. Maemo in QEMU Marcin Juszkiewicz maemo@haerwu.biz http://blog.haerwu.biz/
  • 3. What is emulated ● OMAP2 CPU ● N800 tablet keypad ● N810 tablet keyboard ● touchscreen ● flash chip ● SD card slot ● USB network adapter (QEMU add-on) ● USB keyboard (QEMU add-on)
  • 4. What is missing ● OMAP2 DSP part ● Integrated camera ● WiFi ● FM tuner ● Sound ● Bluetooth (work in progress) ● Second SD slot (can be added) ● GPS (can be added from Openmoko Neo)
  • 5. What is needed ● QEMU from SVN repository (tested with r5224) ● Poky from SVN repository (tested with r5197) ● Maemo image (Chinook or Diablo) ● Nokia flasher (or 0xffff) ● Fast computer (64bit Linux preferred) ● mtd1 dump from tablet with LifeGuard disabled ● TUN/TAP support in kernel (for networking)
  • 6. Preparing image ● Fetch Diablo image ● Unpack it using Nokia Flasher ● Create image with those commands: – poky-nokia800-flashutil initfs.jffs2 maemo- image.qemuflash initfs – poky-nokia800-flashutil config.mtd maemo- image.qemuflash config – poky-nokia800-flashutil rootfs.jffs2 maemo- image.qemuflash rootfs
  • 7. Booting sudo qemu-system-arm -kernel zImage -net nic,model=usb,vlan=0 -net tap,vlan=0,ifname=tap0, script=poky-qemu-ifup, downscript=poky-qemu-ifdown -mtdblock diablo.qemuflash -m 128 -M n810 -show-cursor -usb -usbdevice net:0 -usbdevice keyboard
  • 8. Potential problems ● Network is via 'eth0' but since libconic only deals with WiFi and Bluetooth, a quot;Dummy networkquot; is required. ● N810 keymap is hard to use on PC keyboard – emulated USB keyboard works fine
  • 9. Emulation authors ● Fabrice Bellard (QEMU author) ● Paul Brook (ARM emulation) ● Andrew Zaborowski (N8x0 emulation)
  • 11. Contact Marcin Juszkiewicz maemo@haerwu.biz http://blog.haerwu.biz/