~ubuntu-branches/ubuntu/trusty/qemu/trusty

« back to all changes in this revision

Viewing changes to debian/patches/linaro-patches/0051-hw-nseries.c-Add-debug-trace-to-MIPID.patch

  • Committer: Package Import Robot
  • Author(s): Serge Hallyn
  • Date: 2013-10-22 22:47:07 UTC
  • mfrom: (1.8.3) (10.1.42 sid)
  • Revision ID: package-import@ubuntu.com-20131022224707-1lya34fw3k3f24tv
Tags: 1.6.0+dfsg-2ubuntu1
* Merge 1.6.0~rc0+dfsg-2exp from debian experimental.  Remaining changes:
  - debian/control
    * update maintainer
    * remove libiscsi, usb-redir, vde, vnc-jpeg, and libssh2-1-dev
      from build-deps
    * enable rbd
    * add qemu-system and qemu-common B/R to qemu-keymaps
    * add D:udev, R:qemu, R:qemu-common and B:qemu-common to
      qemu-system-common
    * qemu-system-arm, qemu-system-ppc, qemu-system-sparc:
      - add qemu-kvm to Provides
      - add qemu-common, qemu-kvm, kvm to B/R
      - remove openbios-sparc from qemu-system-sparc D
      - drop openbios-ppc and openhackware Depends to Suggests (for now)
    * qemu-system-x86:
      - add qemu-common to Breaks/Replaces.
      - add cpu-checker to Recommends.
    * qemu-user: add B/R:qemu-kvm
    * qemu-kvm:
      - add armhf armel powerpc sparc to Architecture
      - C/R/P: qemu-kvm-spice
    * add qemu-common package
    * drop qemu-slof which is not packaged in ubuntu
  - add qemu-system-common.links for tap ifup/down scripts and OVMF link.
  - qemu-system-x86.links:
    * remove pxe rom links which are in kvm-ipxe
    * add symlink for kvm.1 manpage
  - debian/rules
    * add kvm-spice symlink to qemu-kvm
    * call dh_installmodules for qemu-system-x86
    * update dh_installinit to install upstart script
    * run dh_installman (Closes: #709241) (cherrypicked from 1.5.0+dfsg-2)
  - Add qemu-utils.links for kvm-* symlinks.
  - Add qemu-system-x86.qemu-kvm.upstart and .default
  - Add qemu-system-x86.modprobe to set nesting=1
  - Add qemu-system-common.preinst to add kvm group
  - qemu-system-common.postinst: remove bad group acl if there, then have
    udev relabel /dev/kvm.
  - New linaro patches from qemu-linaro rebasing branch
  - Dropped patches:
    * xen-simplify-xen_enabled.patch
    * sparc-linux-user-fix-missing-symbols-in-.rel-.rela.plt-sections.patch
    * main_loop-do-not-set-nonblocking-if-xen_enabled.patch
    * xen_machine_pv-do-not-create-a-dummy-CPU-in-machine-.patch
    * virtio-rng-fix-crash
  - Kept patches:
    * expose_vms_qemu64cpu.patch - updated
    * linaro arm patches from qemu-linaro rebasing branch
  - New patches:
    * fix-pci-add: change CONFIG variable in ifdef to make sure that
      pci_add is defined.
* Add linaro patches
* Add experimental mach-virt patches for arm virtualization.
* qemu-system-common.install: add debian/tmp/usr/lib to install the
  qemu-bridge-helper

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
From 5aeec936a74565d701b74c844d3d20493c9ff18e Mon Sep 17 00:00:00 2001
 
2
From: Peter Maydell <peter.maydell@linaro.org>
 
3
Date: Mon, 18 Feb 2013 16:58:32 +0000
 
4
Subject: [PATCH 51/71] hw/nseries.c: Add debug trace to MIPID
 
5
 
 
6
---
 
7
 hw/arm/nseries.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++----
 
8
 1 file changed, 50 insertions(+), 4 deletions(-)
 
9
 
 
10
diff --git a/hw/arm/nseries.c b/hw/arm/nseries.c
 
11
index 2a079a2..2c9cfa5 100644
 
12
--- a/hw/arm/nseries.c
 
13
+++ b/hw/arm/nseries.c
 
14
@@ -36,6 +36,15 @@
 
15
 #include "hw/sysbus.h"
 
16
 #include "exec/address-spaces.h"
 
17
 
 
18
+//#define MIPID_DEBUG
 
19
+
 
20
+#ifdef MIPID_DEBUG
 
21
+#define TRACE_MIPID(fmt, ...) \
 
22
+    fprintf(stderr, "%s@%d: " fmt "\n", __FUNCTION__, __LINE__, ##__VA_ARGS__)
 
23
+#else
 
24
+#define TRACE_MIPID(...)
 
25
+#endif
 
26
+
 
27
 /* Nokia N8x0 support */
 
28
 struct n800_s {
 
29
     struct omap_mpu_state_s *mpu;
 
30
@@ -462,16 +471,20 @@ static uint32_t mipid_txrx(SPIDevice *spidev, uint32_t cmd, int len)
 
31
 
 
32
     switch (s->cmd) {
 
33
     case 0x00: /* NOP */
 
34
+        TRACE_MIPID("NOP");
 
35
         break;
 
36
 
 
37
     case 0x01: /* SWRESET */
 
38
+        TRACE_MIPID("SWRESET");
 
39
         mipid_reset(&s->spi.qdev);
 
40
         break;
 
41
 
 
42
     case 0x02: /* BSTROFF */
 
43
+        TRACE_MIPID("BSTROFF");
 
44
         s->booster = 0;
 
45
         break;
 
46
     case 0x03: /* BSTRON */
 
47
+        TRACE_MIPID("BSTRON");
 
48
         s->booster = 1;
 
49
         break;
 
50
 
 
51
@@ -480,6 +493,8 @@ static uint32_t mipid_txrx(SPIDevice *spidev, uint32_t cmd, int len)
 
52
         s->resp[0] = (s->id >> 16) & 0xff;
 
53
         s->resp[1] = (s->id >>  8) & 0xff;
 
54
         s->resp[2] = (s->id >>  0) & 0xff;
 
55
+        TRACE_MIPID("RDDID 0x%02x 0x%02x 0x%02x",
 
56
+                    s->resp[0], s->resp[1], s->resp[2]);
 
57
         break;
 
58
 
 
59
     case 0x06: /* RD_RED */
 
60
@@ -487,6 +502,7 @@ static uint32_t mipid_txrx(SPIDevice *spidev, uint32_t cmd, int len)
 
61
         /* XXX the bootloader sometimes issues RD_BLUE meaning RDDID so
 
62
          * for the bootloader one needs to change this.  */
 
63
     case 0x08: /* RD_BLUE */
 
64
+        TRACE_MIPID("RD_RED/GREEN_BLUE 0x01");
 
65
         s->p = 0;
 
66
         /* TODO: return first pixel components */
 
67
         s->resp[0] = 0x01;
 
68
@@ -500,80 +516,100 @@ static uint32_t mipid_txrx(SPIDevice *spidev, uint32_t cmd, int len)
 
69
         s->resp[2] = (s->vscr << 7) | (s->invert << 5) |
 
70
                 (s->onoff << 2) | (s->te << 1) | (s->gamma >> 2);
 
71
         s->resp[3] = s->gamma << 6;
 
72
+        TRACE_MIPID("RDDST 0x%02x 0x%02x 0x%02x 0x%02x",
 
73
+                    s->resp[0], s->resp[1], s->resp[2], s->resp[3]);
 
74
         break;
 
75
 
 
76
     case 0x0a: /* RDDPM */
 
77
         s->p = 0;
 
78
         s->resp[0] = (s->onoff << 2) | (s->normal << 3) | (s->sleep << 4) |
 
79
                 (s->partial << 5) | (s->sleep << 6) | (s->booster << 7);
 
80
+        TRACE_MIPID("RDDPM 0x%02x", s->resp[0]);
 
81
         break;
 
82
     case 0x0b: /* RDDMADCTR */
 
83
         s->p = 0;
 
84
         s->resp[0] = 0;
 
85
+        TRACE_MIPID("RDDMACTR 0x%02x", s->resp[0]);
 
86
         break;
 
87
     case 0x0c: /* RDDCOLMOD */
 
88
         s->p = 0;
 
89
         s->resp[0] = 5;        /* 65K colours */
 
90
+        TRACE_MIPID("RDDCOLMOD 0x%02x", s->resp[0]);
 
91
         break;
 
92
     case 0x0d: /* RDDIM */
 
93
         s->p = 0;
 
94
         s->resp[0] = (s->invert << 5) | (s->vscr << 7) | s->gamma;
 
95
+        TRACE_MIPID("RDDIM 0x%02x", s->resp[0]);
 
96
         break;
 
97
     case 0x0e: /* RDDSM */
 
98
         s->p = 0;
 
99
         s->resp[0] = s->te << 7;
 
100
+        TRACE_MIPID("RDDSM 0x%02x", s->resp[0]);
 
101
         break;
 
102
     case 0x0f: /* RDDSDR */
 
103
         s->p = 0;
 
104
         s->resp[0] = s->selfcheck;
 
105
+        TRACE_MIPID("RDDSDR 0x%02x", s->resp[0]);
 
106
         break;
 
107
 
 
108
     case 0x10: /* SLPIN */
 
109
+        TRACE_MIPID("SLPIN");
 
110
         s->sleep = 1;
 
111
         break;
 
112
     case 0x11: /* SLPOUT */
 
113
+        TRACE_MIPID("SLPOUT");
 
114
         s->sleep = 0;
 
115
         s->selfcheck ^= 1 << 6;        /* POFF self-diagnosis Ok */
 
116
         break;
 
117
 
 
118
     case 0x12: /* PTLON */
 
119
+        TRACE_MIPID("PTLON");
 
120
         s->partial = 1;
 
121
         s->normal = 0;
 
122
         s->vscr = 0;
 
123
         break;
 
124
     case 0x13: /* NORON */
 
125
+        TRACE_MIPID("NORON");
 
126
         s->partial = 0;
 
127
         s->normal = 1;
 
128
         s->vscr = 0;
 
129
         break;
 
130
 
 
131
     case 0x20: /* INVOFF */
 
132
+        TRACE_MIPID("INVOFF");
 
133
         s->invert = 0;
 
134
         break;
 
135
     case 0x21: /* INVON */
 
136
+        TRACE_MIPID("INVON");
 
137
         s->invert = 1;
 
138
         break;
 
139
 
 
140
     case 0x22: /* APOFF */
 
141
     case 0x23: /* APON */
 
142
+        TRACE_MIPID("APON/OFF");
 
143
         goto bad_cmd;
 
144
 
 
145
     case 0x25: /* WRCNTR */
 
146
+        TRACE_MIPID("WRCNTR");
 
147
         if (s->pm < 0)
 
148
             s->pm = 1;
 
149
         goto bad_cmd;
 
150
 
 
151
     case 0x26: /* GAMSET */
 
152
-        if (!s->pm)
 
153
+        if (!s->pm) {
 
154
             s->gamma = ffs(s->param[0] & 0xf) - 1;
 
155
-        else if (s->pm < 0)
 
156
+            TRACE_MIPID("GAMSET 0x%02x", s->gamma);
 
157
+        } else if (s->pm < 0) {
 
158
             s->pm = 1;
 
159
+        }
 
160
         break;
 
161
 
 
162
     case 0x28: /* DISPOFF */
 
163
+        TRACE_MIPID("DISPOFF");
 
164
         s->onoff = 0;
 
165
         break;
 
166
     case 0x29: /* DISPON */
 
167
+        TRACE_MIPID("DISPON");
 
168
         s->onoff = 1;
 
169
         break;
 
170
 
 
171
@@ -587,19 +623,24 @@ static uint32_t mipid_txrx(SPIDevice *spidev, uint32_t cmd, int len)
 
172
         goto bad_cmd;
 
173
 
 
174
     case 0x34: /* TEOFF */
 
175
+        TRACE_MIPID("TEOFF");
 
176
         s->te = 0;
 
177
         break;
 
178
     case 0x35: /* TEON */
 
179
-        if (!s->pm)
 
180
+        if (!s->pm) {
 
181
             s->te = 1;
 
182
-        else if (s->pm < 0)
 
183
+            TRACE_MIPID("TEON 0x%02x", s->param[0] & 0xff);
 
184
+        } else if (s->pm < 0) {
 
185
             s->pm = 1;
 
186
+        }
 
187
         break;
 
188
 
 
189
     case 0x36: /* MADCTR */
 
190
+        TRACE_MIPID("MADCTR");
 
191
         goto bad_cmd;
 
192
 
 
193
     case 0x37: /* VSCSAD */
 
194
+        TRACE_MIPID("VSCSAD");
 
195
         s->partial = 0;
 
196
         s->normal = 0;
 
197
         s->vscr = 1;
 
198
@@ -617,6 +658,7 @@ static uint32_t mipid_txrx(SPIDevice *spidev, uint32_t cmd, int len)
 
199
         break;
 
200
 
 
201
     case 0xb4: /* FRMSEL */
 
202
+        TRACE_MIPID("FRMSEL");
 
203
         break;
 
204
 
 
205
     case 0xb5: /* FRM8SEL */
 
206
@@ -631,6 +673,7 @@ static uint32_t mipid_txrx(SPIDevice *spidev, uint32_t cmd, int len)
 
207
         s->p = 0;
 
208
         s->resp[0] = 0;
 
209
         s->resp[1] = 1;
 
210
+        TRACE_MIPID("??? 0x%02x 0x%02x", s->resp[0], s->resp[1]);
 
211
         break;
 
212
 
 
213
     case 0xc2: /* IFMOD */
 
214
@@ -649,14 +692,17 @@ static uint32_t mipid_txrx(SPIDevice *spidev, uint32_t cmd, int len)
 
215
     case 0xda: /* RDID1 */
 
216
         s->p = 0;
 
217
         s->resp[0] = (s->id >> 16) & 0xff;
 
218
+        TRACE_MIPID("RDID1 0x%02x", s->resp[0]);
 
219
         break;
 
220
     case 0xdb: /* RDID2 */
 
221
         s->p = 0;
 
222
         s->resp[0] = (s->id >>  8) & 0xff;
 
223
+        TRACE_MIPID("RDID2 0x%02x", s->resp[0]);
 
224
         break;
 
225
     case 0xdc: /* RDID3 */
 
226
         s->p = 0;
 
227
         s->resp[0] = (s->id >>  0) & 0xff;
 
228
+        TRACE_MIPID("RDID3 0x%02x", s->resp[0]);
 
229
         break;
 
230
 
 
231
     default:
 
232
-- 
 
233
1.8.3.2
 
234