summary refs log tree commit diff stats
path: root/gitlab/issues/target_arm/host_missing/accel_missing/452.toml
blob: 4f68dae72f9625f36f6ac50cee46039d9da15045 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
id = 452
title = "Akita (and probably all Spitz-like / PXA270) platform does not load BIOS binary"
state = "closed"
created_at = "2021-06-26T20:58:47.780Z"
closed_at = "2024-10-16T15:41:11.144Z"
labels = ["Closed::WontFix", "TestCase", "target: arm"]
url = "https://gitlab.com/qemu-project/qemu/-/issues/452"
host-os = "Raw BIOS file (not OS)"
host-arch = "x64"
qemu-version = "4.2.1"
guest-os = "Raw BIOS file (not OS)"
guest-arch = "ARM (akita)"
description = """QEMU does not appear to load a binary file passed with the "-bios" argument for the "akita" target. This probably extends to other spitz-type systems.

Exptected behavior: qemu loads the binary into address 0x0000.
Actual behavior: address space at 0x0000 contains only zeros."""
reproduce = """Terminal 1:
```
qemu-system-arm -M akita -bios c750.rom -s -S
```

Terminal 2: 
```
gdb-multiarch
target remote localhost:1234
x/64i $pc
```

Result:
```
=> 0x0: andeq   r0, r0, r0
   0x4: andeq   r0, r0, r0
   0x8: andeq   r0, r0, r0
   0xc: andeq   r0, r0, r0
   0x10:        andeq   r0, r0, r0
```

Correct behavior (can demonstrate with virt machine):
Same as before, but start Terminal 1 with:
```
qemu-system-arm -M akita -bios c750.rom -s -S
```

Result:
```
=> 0x0: b       0x34
   0x4: ldr     pc, [pc, #156]  ; 0xa8
   0x8: ldr     pc, [pc, #156]  ; 0xac
   0xc: ldr     pc, [pc, #156]  ; 0xb0
   0x10:        ldr     pc, [pc, #156]  ; 0xb4
   0x14:        nop                     ; (mov r0, r0)
   0x18:        ldr     pc, [pc, #152]  ; 0xb8
   0x1c:        ldr     pc, [pc, #152]  ; 0xbc
   0x20:        mov     r0, #128        ; 0x80
   0x24:        b       0x2c
   0x28:        mov     r0, #129        ; 0x81
   0x2c:        ldr     r1, [pc, #140]  ; 0xc0
   0x30:        str     r0, [r1]
   0x34:        mrs     lr, CPSR
   0x38:        bic     lr, lr, #31
   0x3c:        orr     lr, lr, #211    ; 0xd3
   0x40:        msr     CPSR_fc, lr
```"""
additional = """File with very tiny boot ROM: [c750-tiny.rom](/uploads/045852c8b353174bf0b7a4193d0d1be0/c750-tiny.rom)"""