hw/net/ne2000: extract ne2k-isa code from i386/pc to ne2000-isa.c

- add "hw/net/ne2000-isa.h"
- remove the old i386 dependency

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Hervé Poussineau <hpoussin@reactos.org>
Acked-by: David Gibson <david@gibson.dropbear.id.au> [PPC]
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
Philippe Mathieu-Daudé 2017-10-17 13:44:22 -03:00 committed by Michael Tokarev
parent 866e2b3727
commit 489983d6b4
8 changed files with 41 additions and 26 deletions

View File

@ -69,6 +69,7 @@
#include "qom/cpu.h"
#include "hw/nmi.h"
#include "hw/i386/intel_iommu.h"
#include "hw/net/ne2000-isa.h"
/* debug PC/ISA interrupts */
//#define DEBUG_IRQ

View File

@ -18,6 +18,7 @@
#include "hw/char/serial.h"
#include "hw/isa/isa.h"
#include "net/net.h"
#include "hw/net/ne2000-isa.h"
#include "sysemu/sysemu.h"
#include "hw/boards.h"
#include "hw/block/flash.h"

View File

@ -22,17 +22,15 @@
* THE SOFTWARE.
*/
#include "qemu/osdep.h"
#include "hw/hw.h"
#include "hw/i386/pc.h"
#include "hw/isa/isa.h"
#include "hw/net/ne2000-isa.h"
#include "hw/qdev.h"
#include "net/net.h"
#include "ne2000.h"
#include "sysemu/sysemu.h"
#include "exec/address-spaces.h"
#include "qapi/error.h"
#include "qapi/visitor.h"
#define TYPE_ISA_NE2000 "ne2k_isa"
#define ISA_NE2000(obj) OBJECT_CHECK(ISANE2000State, (obj), TYPE_ISA_NE2000)
typedef struct ISANE2000State {

View File

@ -22,9 +22,7 @@
* THE SOFTWARE.
*/
#include "qemu/osdep.h"
#include "hw/hw.h"
#include "hw/pci/pci.h"
#include "net/net.h"
#include "ne2000.h"
#include "hw/loader.h"
#include "sysemu/sysemu.h"

View File

@ -1,6 +1,9 @@
#ifndef HW_NE2000_H
#define HW_NE2000_H
#include "hw/hw.h"
#include "net/net.h"
#define NE2000_PMEM_SIZE (32*1024)
#define NE2000_PMEM_START (16*1024)
#define NE2000_PMEM_END (NE2000_PMEM_SIZE+NE2000_PMEM_START)

View File

@ -42,6 +42,7 @@
#include "hw/loader.h"
#include "hw/timer/mc146818rtc.h"
#include "hw/isa/pc87312.h"
#include "hw/net/ne2000-isa.h"
#include "sysemu/block-backend.h"
#include "sysemu/arch_init.h"
#include "sysemu/kvm.h"

View File

@ -302,26 +302,6 @@ PCIBus *find_i440fx(void);
extern PCIDevice *piix4_dev;
int piix4_init(PCIBus *bus, ISABus **isa_bus, int devfn);
/* ne2000.c */
static inline bool isa_ne2000_init(ISABus *bus, int base, int irq, NICInfo *nd)
{
DeviceState *dev;
ISADevice *isadev;
qemu_check_nic_model(nd, "ne2k_isa");
isadev = isa_try_create(bus, "ne2k_isa");
if (!isadev) {
return false;
}
dev = DEVICE(isadev);
qdev_prop_set_uint32(dev, "iobase", base);
qdev_prop_set_uint32(dev, "irq", irq);
qdev_set_nic_properties(dev, nd);
qdev_init_nofail(dev);
return true;
}
/* pc_sysfw.c */
void pc_system_firmware_init(MemoryRegion *rom_memory,
bool isapc_ram_fw);

View File

@ -0,0 +1,33 @@
/*
* QEMU NE2000 emulation -- isa bus windup
*
* Copyright (c) 2003-2004 Fabrice Bellard
*
* This work is licensed under the terms of the GNU GPL, version 2 or later.
* See the COPYING file in the top-level directory.
*/
#include "hw/hw.h"
#include "hw/qdev.h"
#include "hw/isa/isa.h"
#include "net/net.h"
#define TYPE_ISA_NE2000 "ne2k_isa"
static inline ISADevice *isa_ne2000_init(ISABus *bus, int base, int irq,
NICInfo *nd)
{
ISADevice *d;
qemu_check_nic_model(nd, "ne2k_isa");
d = isa_try_create(bus, TYPE_ISA_NE2000);
if (d) {
DeviceState *dev = DEVICE(d);
qdev_prop_set_uint32(dev, "iobase", base);
qdev_prop_set_uint32(dev, "irq", irq);
qdev_set_nic_properties(dev, nd);
qdev_init_nofail(dev);
}
return d;
}