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

« back to all changes in this revision

Viewing changes to hw/misc/mst_fpga.c

  • 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:
35
35
#define MST_PCMCIA_CD0_IRQ      9
36
36
#define MST_PCMCIA_CD1_IRQ      13
37
37
 
 
38
#define TYPE_MAINSTONE_FPGA "mainstone-fpga"
 
39
#define MAINSTONE_FPGA(obj) \
 
40
    OBJECT_CHECK(mst_irq_state, (obj), TYPE_MAINSTONE_FPGA)
 
41
 
38
42
typedef struct mst_irq_state{
39
 
        SysBusDevice busdev;
40
 
        MemoryRegion iomem;
41
 
 
42
 
        qemu_irq parent;
43
 
 
44
 
        uint32_t prev_level;
45
 
        uint32_t leddat1;
46
 
        uint32_t leddat2;
47
 
        uint32_t ledctrl;
48
 
        uint32_t gpswr;
49
 
        uint32_t mscwr1;
50
 
        uint32_t mscwr2;
51
 
        uint32_t mscwr3;
52
 
        uint32_t mscrd;
53
 
        uint32_t intmskena;
54
 
        uint32_t intsetclr;
55
 
        uint32_t pcmcia0;
56
 
        uint32_t pcmcia1;
 
43
    SysBusDevice parent_obj;
 
44
 
 
45
    MemoryRegion iomem;
 
46
 
 
47
    qemu_irq parent;
 
48
 
 
49
    uint32_t prev_level;
 
50
    uint32_t leddat1;
 
51
    uint32_t leddat2;
 
52
    uint32_t ledctrl;
 
53
    uint32_t gpswr;
 
54
    uint32_t mscwr1;
 
55
    uint32_t mscwr2;
 
56
    uint32_t mscwr3;
 
57
    uint32_t mscrd;
 
58
    uint32_t intmskena;
 
59
    uint32_t intsetclr;
 
60
    uint32_t pcmcia0;
 
61
    uint32_t pcmcia1;
57
62
}mst_irq_state;
58
63
 
59
64
static void
194
199
        return 0;
195
200
}
196
201
 
197
 
static int mst_fpga_init(SysBusDevice *dev)
 
202
static int mst_fpga_init(SysBusDevice *sbd)
198
203
{
199
 
        mst_irq_state *s;
200
 
 
201
 
        s = FROM_SYSBUS(mst_irq_state, dev);
202
 
 
203
 
        s->pcmcia0 = MST_PCMCIAx_READY | MST_PCMCIAx_nCD;
204
 
        s->pcmcia1 = MST_PCMCIAx_READY | MST_PCMCIAx_nCD;
205
 
 
206
 
        sysbus_init_irq(dev, &s->parent);
207
 
 
208
 
        /* alloc the external 16 irqs */
209
 
        qdev_init_gpio_in(&dev->qdev, mst_fpga_set_irq, MST_NUM_IRQS);
210
 
 
211
 
        memory_region_init_io(&s->iomem, &mst_fpga_ops, s,
212
 
                            "fpga", 0x00100000);
213
 
        sysbus_init_mmio(dev, &s->iomem);
214
 
        return 0;
 
204
    DeviceState *dev = DEVICE(sbd);
 
205
    mst_irq_state *s = MAINSTONE_FPGA(dev);
 
206
 
 
207
    s->pcmcia0 = MST_PCMCIAx_READY | MST_PCMCIAx_nCD;
 
208
    s->pcmcia1 = MST_PCMCIAx_READY | MST_PCMCIAx_nCD;
 
209
 
 
210
    sysbus_init_irq(sbd, &s->parent);
 
211
 
 
212
    /* alloc the external 16 irqs */
 
213
    qdev_init_gpio_in(dev, mst_fpga_set_irq, MST_NUM_IRQS);
 
214
 
 
215
    memory_region_init_io(&s->iomem, OBJECT(s), &mst_fpga_ops, s,
 
216
                          "fpga", 0x00100000);
 
217
    sysbus_init_mmio(sbd, &s->iomem);
 
218
    return 0;
215
219
}
216
220
 
217
221
static VMStateDescription vmstate_mst_fpga_regs = {
249
253
}
250
254
 
251
255
static const TypeInfo mst_fpga_info = {
252
 
    .name          = "mainstone-fpga",
 
256
    .name          = TYPE_MAINSTONE_FPGA,
253
257
    .parent        = TYPE_SYS_BUS_DEVICE,
254
258
    .instance_size = sizeof(mst_irq_state),
255
259
    .class_init    = mst_fpga_class_init,