Jump to content

QEMU Nokia N900 (qemu-rx51): Difference between revisions

From postmarketOS Wiki
JLIT99 (talk | contribs)
No edit summary
m rollbackEdits.php mass rollback
Tag: Rollback
 
(9 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{note|See [[:Category:QEMU]] for usage instructions. This page only contains information specific to the qemu-rx51 port... and it isn't included (anymore) in pmaports. Consider using one of the others instead.}}
{{Infobox device
{{Infobox device
| manufacturer = QEMU
| manufacturer = QEMU
| name =  N900
| name =  N900
| codename = qemu-rx51
| codename = qemu-rx51
| architecture = armhf
| architecture = armv7
| n-android = ✔
| status_usbnet =  
| status_usbnet =  
| status_flashing =  
| status_flashing =  
Line 25: Line 26:
| status =  
| status =  
| booting = no
| booting = no
| non_android = 🔼
}}
}}



Latest revision as of 14:41, 23 April 2023

Note See Category:QEMU for usage instructions. This page only contains information specific to the qemu-rx51 port... and it isn't included (anymore) in pmaports. Consider using one of the others instead.
This device is marked as not booting.
QEMU N900
Manufacturer QEMU
Name N900
Codename qemu-rx51
Hardware
Architecture armv7
postmarketOS
Category testing
Pre-built images no


With 4.6 kernel, Pali's patch to mmc and right config with command line inside, qemu works for N900 emulation, including running Weston.

I'm using this config option to configure kernel:

CONFIG_CMDLINE="console=ttyO2,115200 console=tty root=/dev/mmcblk1p2 rootdelay=5 no-omap-wd no-ext-wd console=tty0 nokia-modem.pm=1 1 single"

And this script to prepare image / run it:

#!/usr/bin/python

import os
import time

def cmd(f):
    os.system(f)

class Run:
    def __init__(m):
        m.qemudir = "/data/l/maemo/qemu/"
        m.pmb_tmp = "/data/tmp/pmbootstrap"
        m.boot = m.pmb_tmp+"/chroot_rootfs_nokia-rx51/boot/"
        
    def run(m):
        # kernel = m.boot+"vmlinuz-postmarketos-dtb"
        kernel = "/data/l/linux-n900/arch/arm/boot/zImage-dtb"
        cmd("%s/qflasher -m rx51 -x %s/xloader-qemu.bin -s %s/secondary-qemu.bin -k %s -o n900.img -p k=16072" %
            (m.qemudir, m.qemudir, m.qemudir, kernel))

        #time.sleep(10)
        os.system("%s/qemu-system-arm -s -M n900 -mtdblock n900.img -sd /data/tmp/pmos.img -serial stdio -clock unix -redir tcp:5555:10.0.2.15:22" %
                  m.qemudir)

r = Run()
r.run()

Special qemu version with n900 support is likely needed.