qemu/include/hw/sd/bcm2835_sdhost.h
<<
>>
Prefs
   1/*
   2 * Raspberry Pi (BCM2835) SD Host Controller
   3 *
   4 * Copyright (c) 2017 Antfield SAS
   5 *
   6 * Authors:
   7 *  Clement Deschamps <clement.deschamps@antfield.fr>
   8 *  Luc Michel <luc.michel@antfield.fr>
   9 *
  10 * This work is licensed under the terms of the GNU GPL, version 2 or later.
  11 * See the COPYING file in the top-level directory.
  12 */
  13
  14#ifndef BCM2835_SDHOST_H
  15#define BCM2835_SDHOST_H
  16
  17#include "hw/sysbus.h"
  18#include "hw/sd/sd.h"
  19#include "qom/object.h"
  20
  21#define TYPE_BCM2835_SDHOST "bcm2835-sdhost"
  22OBJECT_DECLARE_SIMPLE_TYPE(BCM2835SDHostState, BCM2835_SDHOST)
  23
  24#define BCM2835_SDHOST_FIFO_LEN 16
  25
  26struct BCM2835SDHostState {
  27    SysBusDevice busdev;
  28    SDBus sdbus;
  29    MemoryRegion iomem;
  30
  31    uint32_t cmd;
  32    uint32_t cmdarg;
  33    uint32_t status;
  34    uint32_t rsp[4];
  35    uint32_t config;
  36    uint32_t edm;
  37    uint32_t vdd;
  38    uint32_t hbct;
  39    uint32_t hblc;
  40    int32_t fifo_pos;
  41    int32_t fifo_len;
  42    uint32_t fifo[BCM2835_SDHOST_FIFO_LEN];
  43    uint32_t datacnt;
  44
  45    qemu_irq irq;
  46};
  47
  48#endif
  49