Skip to content

Commit

Permalink
hw: Use PFLASH_CFI0{1,2} and TYPE_PFLASH_CFI0{1,2}
Browse files Browse the repository at this point in the history
We have two open-coded copies of macro PFLASH_CFI01().  Move the macro
to the header, so we can ditch the copies.  Move PFLASH_CFI02() to the
header for symmetry.

We define macros TYPE_PFLASH_CFI01 and TYPE_PFLASH_CFI02 for type name
strings, then mostly use the strings.  If the macros are worth
defining, they are worth using.  Replace the strings by the macros.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20190308094610.21210-6-armbru@redhat.com>
(cherry picked from commit 81c7db7)
*prereq for 3a28350
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
  • Loading branch information
Markus Armbruster authored and mdroth committed Jul 30, 2019
1 parent 03f130c commit ddacb78
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 11 deletions.
4 changes: 2 additions & 2 deletions hw/arm/vexpress.c
Expand Up @@ -515,7 +515,7 @@ static void vexpress_modify_dtb(const struct arm_boot_info *info, void *fdt)
static PFlashCFI01 *ve_pflash_cfi01_register(hwaddr base, const char *name,
DriveInfo *di)
{
DeviceState *dev = qdev_create(NULL, "cfi.pflash01");
DeviceState *dev = qdev_create(NULL, TYPE_PFLASH_CFI01);

if (di) {
qdev_prop_set_drive(dev, "drive", blk_by_legacy_dinfo(di),
Expand All @@ -536,7 +536,7 @@ static PFlashCFI01 *ve_pflash_cfi01_register(hwaddr base, const char *name,
qdev_init_nofail(dev);

sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, base);
return OBJECT_CHECK(PFlashCFI01, (dev), "cfi.pflash01");
return PFLASH_CFI01(dev);
}

static void vexpress_common_init(MachineState *machine)
Expand Down
3 changes: 2 additions & 1 deletion hw/arm/virt.c
Expand Up @@ -34,6 +34,7 @@
#include "hw/arm/arm.h"
#include "hw/arm/primecell.h"
#include "hw/arm/virt.h"
#include "hw/block/flash.h"
#include "hw/vfio/vfio-calxeda-xgmac.h"
#include "hw/vfio/vfio-amd-xgbe.h"
#include "hw/display/ramfb.h"
Expand Down Expand Up @@ -876,7 +877,7 @@ static void create_one_flash(const char *name, hwaddr flashbase,
* parameters as the flash devices on the Versatile Express board.
*/
DriveInfo *dinfo = drive_get_next(IF_PFLASH);
DeviceState *dev = qdev_create(NULL, "cfi.pflash01");
DeviceState *dev = qdev_create(NULL, TYPE_PFLASH_CFI01);
SysBusDevice *sbd = SYS_BUS_DEVICE(dev);
const uint64_t sectorlength = 256 * 1024;

Expand Down
3 changes: 0 additions & 3 deletions hw/block/pflash_cfi01.c
Expand Up @@ -59,9 +59,6 @@ do { \
#define DPRINTF(fmt, ...) do { } while (0)
#endif

#define PFLASH_CFI01(obj) \
OBJECT_CHECK(PFlashCFI01, (obj), TYPE_PFLASH_CFI01)

#define PFLASH_BE 0
#define PFLASH_SECURE 1

Expand Down
3 changes: 0 additions & 3 deletions hw/block/pflash_cfi02.c
Expand Up @@ -57,9 +57,6 @@ do { \

#define PFLASH_LAZY_ROMD_THRESHOLD 42

#define PFLASH_CFI02(obj) \
OBJECT_CHECK(PFlashCFI02, (obj), TYPE_PFLASH_CFI02)

struct PFlashCFI02 {
/*< private >*/
SysBusDevice parent_obj;
Expand Down
4 changes: 2 additions & 2 deletions hw/xtensa/xtfpga.c
Expand Up @@ -164,7 +164,7 @@ static PFlashCFI01 *xtfpga_flash_init(MemoryRegion *address_space,
DriveInfo *dinfo, int be)
{
SysBusDevice *s;
DeviceState *dev = qdev_create(NULL, "cfi.pflash01");
DeviceState *dev = qdev_create(NULL, TYPE_PFLASH_CFI01);

qdev_prop_set_drive(dev, "drive", blk_by_legacy_dinfo(dinfo),
&error_abort);
Expand All @@ -178,7 +178,7 @@ static PFlashCFI01 *xtfpga_flash_init(MemoryRegion *address_space,
s = SYS_BUS_DEVICE(dev);
memory_region_add_subregion(address_space, board->flash->base,
sysbus_mmio_get_region(s, 0));
return OBJECT_CHECK(PFlashCFI01, (dev), "cfi.pflash01");
return PFLASH_CFI01(dev);
}

static uint64_t translate_phys_addr(void *opaque, uint64_t addr)
Expand Down
4 changes: 4 additions & 0 deletions include/hw/block/flash.h
Expand Up @@ -8,6 +8,8 @@
/* pflash_cfi01.c */

#define TYPE_PFLASH_CFI01 "cfi.pflash01"
#define PFLASH_CFI01(obj) \
OBJECT_CHECK(PFlashCFI01, (obj), TYPE_PFLASH_CFI01)

typedef struct PFlashCFI01 PFlashCFI01;

Expand All @@ -25,6 +27,8 @@ MemoryRegion *pflash_cfi01_get_memory(PFlashCFI01 *fl);
/* pflash_cfi02.c */

#define TYPE_PFLASH_CFI02 "cfi.pflash02"
#define PFLASH_CFI02(obj) \
OBJECT_CHECK(PFlashCFI02, (obj), TYPE_PFLASH_CFI02)

typedef struct PFlashCFI02 PFlashCFI02;

Expand Down

0 comments on commit ddacb78

Please sign in to comment.