mirror of https://github.com/xemu-project/xemu.git
e1000e: Introduce E1000E_LOW_BITS_SET_FUNC
e1000e_set_16bit and e1000e_set_12bit look so similar so define a generic macro. Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> Signed-off-by: Jason Wang <jasowang@redhat.com>
This commit is contained in:
parent
a9484b8a41
commit
3de66fe4d7
|
@ -2440,17 +2440,15 @@ e1000e_set_fcrtl(E1000ECore *core, int index, uint32_t val)
|
||||||
core->mac[FCRTL] = val & 0x8000FFF8;
|
core->mac[FCRTL] = val & 0x8000FFF8;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void
|
#define E1000E_LOW_BITS_SET_FUNC(num) \
|
||||||
e1000e_set_16bit(E1000ECore *core, int index, uint32_t val)
|
static void \
|
||||||
{
|
e1000e_set_##num##bit(E1000ECore *core, int index, uint32_t val) \
|
||||||
core->mac[index] = val & 0xffff;
|
{ \
|
||||||
|
core->mac[index] = val & (BIT(num) - 1); \
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
E1000E_LOW_BITS_SET_FUNC(12)
|
||||||
e1000e_set_12bit(E1000ECore *core, int index, uint32_t val)
|
E1000E_LOW_BITS_SET_FUNC(16)
|
||||||
{
|
|
||||||
core->mac[index] = val & 0xfff;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
e1000e_set_vet(E1000ECore *core, int index, uint32_t val)
|
e1000e_set_vet(E1000ECore *core, int index, uint32_t val)
|
||||||
|
|
Loading…
Reference in New Issue