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

« back to all changes in this revision

Viewing changes to debian/patches/linaro-patches-1.5.0/0002-hw-sd-Expose-sd_reset-as-public-function.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 1043104feb4725225b2a1944465b75af20924018 Mon Sep 17 00:00:00 2001
2
 
From: Peter Maydell <peter.maydell@linaro.org>
3
 
Date: Mon, 18 Feb 2013 16:58:22 +0000
4
 
Subject: [PATCH 02/69] hw/sd: Expose sd_reset() as public function
5
 
 
6
 
Expose sd_reset() as a public function so MMC controllers
7
 
can reset the SD card.
8
 
 
9
 
XXX: is this really right? Need to check specs.
10
 
---
11
 
 hw/sd/sd.c      | 17 ++++++++---------
12
 
 include/hw/sd.h |  1 +
13
 
 2 files changed, 9 insertions(+), 9 deletions(-)
14
 
 
15
 
diff --git a/hw/sd/sd.c b/hw/sd/sd.c
16
 
index 2e0ef3e..cd12c82 100644
17
 
--- a/hw/sd/sd.c
18
 
+++ b/hw/sd/sd.c
19
 
@@ -398,13 +398,13 @@ static inline uint64_t sd_addr_to_wpnum(uint64_t addr)
20
 
     return addr >> (HWBLOCK_SHIFT + SECTOR_SHIFT + WPGROUP_SHIFT);
21
 
 }
22
 
 
23
 
-static void sd_reset(SDState *sd, BlockDriverState *bdrv)
24
 
+void sd_reset(SDState *sd)
25
 
 {
26
 
     uint64_t size;
27
 
     uint64_t sect;
28
 
 
29
 
-    if (bdrv) {
30
 
-        bdrv_get_geometry(bdrv, &sect);
31
 
+    if (sd->bdrv) {
32
 
+        bdrv_get_geometry(sd->bdrv, &sect);
33
 
     } else {
34
 
         sect = 0;
35
 
     }
36
 
@@ -421,11 +421,9 @@ static void sd_reset(SDState *sd, BlockDriverState *bdrv)
37
 
     sd_set_cardstatus(sd);
38
 
     sd_set_sdstatus(sd);
39
 
 
40
 
-    sd->bdrv = bdrv;
41
 
-
42
 
     if (sd->wp_groups)
43
 
         g_free(sd->wp_groups);
44
 
-    sd->wp_switch = bdrv ? bdrv_is_read_only(bdrv) : false;
45
 
+    sd->wp_switch = sd->bdrv ? bdrv_is_read_only(sd->bdrv) : false;
46
 
     sd->wpgrps_size = sect;
47
 
     sd->wp_groups = bitmap_new(sd->wpgrps_size);
48
 
     memset(sd->function_group, 0, sizeof(sd->function_group));
49
 
@@ -443,7 +441,7 @@ static void sd_cardchange(void *opaque, bool load)
50
 
 
51
 
     qemu_set_irq(sd->inserted_cb, bdrv_is_inserted(sd->bdrv));
52
 
     if (bdrv_is_inserted(sd->bdrv)) {
53
 
-        sd_reset(sd, sd->bdrv);
54
 
+        sd_reset(sd);
55
 
         qemu_set_irq(sd->readonly_cb, sd->wp_switch);
56
 
     }
57
 
 }
58
 
@@ -496,7 +494,8 @@ SDState *sd_init(BlockDriverState *bs, bool is_spi)
59
 
     sd->buf = qemu_blockalign(bs, 512);
60
 
     sd->spi = is_spi;
61
 
     sd->enable = true;
62
 
-    sd_reset(sd, bs);
63
 
+    sd->bdrv = bs;
64
 
+    sd_reset(sd);
65
 
     if (sd->bdrv) {
66
 
         bdrv_attach_dev_nofail(sd->bdrv, sd);
67
 
         bdrv_set_dev_ops(sd->bdrv, &sd_block_ops, sd);
68
 
@@ -684,7 +683,7 @@ static sd_rsp_type_t sd_normal_command(SDState *sd,
69
 
 
70
 
         default:
71
 
             sd->state = sd_idle_state;
72
 
-            sd_reset(sd, sd->bdrv);
73
 
+            sd_reset(sd);
74
 
             return sd->spi ? sd_r1 : sd_r0;
75
 
         }
76
 
         break;
77
 
diff --git a/include/hw/sd.h b/include/hw/sd.h
78
 
index d9b97e4..4ef822f 100644
79
 
--- a/include/hw/sd.h
80
 
+++ b/include/hw/sd.h
81
 
@@ -69,6 +69,7 @@ typedef struct {
82
 
 typedef struct SDState SDState;
83
 
 
84
 
 SDState *sd_init(BlockDriverState *bs, bool is_spi);
85
 
+void sd_reset(SDState *sd);
86
 
 int sd_do_command(SDState *sd, SDRequest *req,
87
 
                   uint8_t *response);
88
 
 void sd_write_data(SDState *sd, uint8_t value);
89
 
1.8.1.2
90