diff --git a/hw/xbox/mcpx/nvnet/nvnet.c b/hw/xbox/mcpx/nvnet/nvnet.c index 0a6bf219f5..c44ba307a3 100644 --- a/hw/xbox/mcpx/nvnet/nvnet.c +++ b/hw/xbox/mcpx/nvnet/nvnet.c @@ -558,8 +558,8 @@ static void nvnet_mmio_write(void *opaque, hwaddr addr, switch (addr) { case NVNET_RING_SIZE: nvnet_set_reg(s, addr, val, size); - s->rx_ring_size = ((val >> NVNET_RING_SIZE_RXSHIFT) & 0xffff) + 1; - s->tx_ring_size = ((val >> NVNET_RING_SIZE_TXSHIFT) & 0xffff) + 1; + s->rx_ring_size = GET_MASK(val, NVNET_RING_SIZE_RX) + 1; + s->tx_ring_size = GET_MASK(val, NVNET_RING_SIZE_TX) + 1; break; case NVNET_MII_CONTROL: diff --git a/hw/xbox/mcpx/nvnet/nvnet_regs.h b/hw/xbox/mcpx/nvnet/nvnet_regs.h index 2e46d36897..c9b54fae18 100644 --- a/hw/xbox/mcpx/nvnet/nvnet_regs.h +++ b/hw/xbox/mcpx/nvnet/nvnet_regs.h @@ -121,8 +121,8 @@ #define NVNET_TX_RING_PHYS_ADDR 0x100 #define NVNET_RX_RING_PHYS_ADDR 0x104 #define NVNET_RING_SIZE 0x108 -# define NVNET_RING_SIZE_TXSHIFT 0 -# define NVNET_RING_SIZE_RXSHIFT 16 +# define NVNET_RING_SIZE_TX 0x0000FFFF +# define NVNET_RING_SIZE_RX 0xFFFF0000 #define NVNET_UNKNOWN_TRANSMITTER_REG 0x10C #define NVNET_LINKSPEED 0x110 # define NVNET_LINKSPEED_FORCE 0x00010000