mirror of https://github.com/xemu-project/xemu.git
pcnet: Move BCR defines to header
This moves BCR defines to the common header and immediately makes use of them to add BCR_APROMWE, replacing the open-coded write check in pcnet_aprom_writeb. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
816f89256e
commit
488a1a5dfe
|
@ -56,9 +56,9 @@ static void pcnet_aprom_writeb(void *opaque, uint32_t addr, uint32_t val)
|
|||
#ifdef PCNET_DEBUG
|
||||
printf("pcnet_aprom_writeb addr=0x%08x val=0x%02x\n", addr, val);
|
||||
#endif
|
||||
/* Check APROMWE bit to enable write access */
|
||||
if (pcnet_bcr_readw(s,2) & 0x100)
|
||||
if (BCR_APROMWE(s)) {
|
||||
s->prom[addr & 15] = val;
|
||||
}
|
||||
}
|
||||
|
||||
static uint32_t pcnet_aprom_readb(void *opaque, uint32_t addr)
|
||||
|
|
18
hw/pcnet.c
18
hw/pcnet.c
|
@ -58,24 +58,6 @@ struct qemu_ether_header {
|
|||
uint16_t ether_type;
|
||||
};
|
||||
|
||||
/* BUS CONFIGURATION REGISTERS */
|
||||
#define BCR_MSRDA 0
|
||||
#define BCR_MSWRA 1
|
||||
#define BCR_MC 2
|
||||
#define BCR_LNKST 4
|
||||
#define BCR_LED1 5
|
||||
#define BCR_LED2 6
|
||||
#define BCR_LED3 7
|
||||
#define BCR_FDC 9
|
||||
#define BCR_BSBC 18
|
||||
#define BCR_EECAS 19
|
||||
#define BCR_SWS 20
|
||||
#define BCR_PLAT 22
|
||||
|
||||
#define BCR_DWIO(S) !!((S)->bcr[BCR_BSBC] & 0x0080)
|
||||
#define BCR_SSIZE32(S) !!((S)->bcr[BCR_SWS ] & 0x0100)
|
||||
#define BCR_SWSTYLE(S) ((S)->bcr[BCR_SWS ] & 0x00FF)
|
||||
|
||||
#define CSR_INIT(S) !!(((S)->csr[0])&0x0001)
|
||||
#define CSR_STRT(S) !!(((S)->csr[0])&0x0002)
|
||||
#define CSR_STOP(S) !!(((S)->csr[0])&0x0004)
|
||||
|
|
19
hw/pcnet.h
19
hw/pcnet.h
|
@ -6,6 +6,25 @@
|
|||
|
||||
#include "memory.h"
|
||||
|
||||
/* BUS CONFIGURATION REGISTERS */
|
||||
#define BCR_MSRDA 0
|
||||
#define BCR_MSWRA 1
|
||||
#define BCR_MC 2
|
||||
#define BCR_LNKST 4
|
||||
#define BCR_LED1 5
|
||||
#define BCR_LED2 6
|
||||
#define BCR_LED3 7
|
||||
#define BCR_FDC 9
|
||||
#define BCR_BSBC 18
|
||||
#define BCR_EECAS 19
|
||||
#define BCR_SWS 20
|
||||
#define BCR_PLAT 22
|
||||
|
||||
#define BCR_APROMWE(S) !!((S)->bcr[BCR_MC ] & 0x0100)
|
||||
#define BCR_DWIO(S) !!((S)->bcr[BCR_BSBC] & 0x0080)
|
||||
#define BCR_SSIZE32(S) !!((S)->bcr[BCR_SWS ] & 0x0100)
|
||||
#define BCR_SWSTYLE(S) ((S)->bcr[BCR_SWS ] & 0x00FF)
|
||||
|
||||
typedef struct PCNetState_st PCNetState;
|
||||
|
||||
struct PCNetState_st {
|
||||
|
|
Loading…
Reference in New Issue