|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen staging] x86/HPET: adjustments to constants and their use
commit 82237773dc13b81ea548943f3416c66abeb0ab2e
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Wed Jul 18 10:38:03 2018 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Wed Jul 18 10:38:03 2018 +0200
x86/HPET: adjustments to constants and their use
Drop HPET_TN_ROUTE_SHIFT as redundant with HPET_TN_ROUTE.
Introduce HPET_TN_INT_ROUTE_CAP paralleling the other HPET_TN_*_CAP
constants, making it necessary to rename the such named constant in
hvm/hpet.c. Use MASK_EXTR() / MASK_INSR() instead of kind of open-
coding them.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Reviewed-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
---
xen/arch/x86/hvm/hpet.c | 18 +++++-------------
xen/include/asm-x86/hpet.h | 2 +-
2 files changed, 6 insertions(+), 14 deletions(-)
diff --git a/xen/arch/x86/hvm/hpet.c b/xen/arch/x86/hvm/hpet.c
index 51407d5383..171afe9ac2 100644
--- a/xen/arch/x86/hvm/hpet.c
+++ b/xen/arch/x86/hvm/hpet.c
@@ -41,14 +41,8 @@
#define guest_time_hpet(hpet) \
(hvm_get_guest_time(vhpet_vcpu(hpet)) / STIME_PER_HPET_TICK)
-#define HPET_TN_INT_ROUTE_CAP_SHIFT 32
-
/* can be routed to IOAPIC.redirect_table[23..20] */
-#define HPET_TN_INT_ROUTE_CAP (0x00f00000ULL \
- << HPET_TN_INT_ROUTE_CAP_SHIFT)
-
-#define HPET_TN_INT_ROUTE_CAP_MASK (0xffffffffULL \
- << HPET_TN_INT_ROUTE_CAP_SHIFT)
+#define HPET_TN_INT_ROUTE_CAP_VAL MASK_INSR(0x00f00000, HPET_TN_INT_ROUTE_CAP)
#define HPET_TN(reg, addr) (((addr) - HPET_Tn_##reg(0)) / \
(HPET_Tn_##reg(1) - HPET_Tn_##reg(0)))
@@ -64,12 +58,10 @@
#define hpet_enabled(h) (h->hpet.config & HPET_CFG_ENABLE)
#define timer_level(h, n) (timer_config(h, n) & HPET_TN_LEVEL)
-#define timer_int_route(h, n) \
- ((timer_config(h, n) & HPET_TN_ROUTE) >> HPET_TN_ROUTE_SHIFT)
+#define timer_int_route(h, n) MASK_EXTR(timer_config(h, n), HPET_TN_ROUTE)
-#define timer_int_route_cap(h, n) \
- ((timer_config(h, n) & HPET_TN_INT_ROUTE_CAP_MASK) \
- >> HPET_TN_INT_ROUTE_CAP_SHIFT)
+#define timer_int_route_cap(h, n) \
+ MASK_EXTR(timer_config(h, n), HPET_TN_INT_ROUTE_CAP)
#define timer_int_route_valid(h, n) \
((1u << timer_int_route(h, n)) & timer_int_route_cap(h, n))
@@ -699,7 +691,7 @@ static void hpet_set(HPETState *h)
for ( i = 0; i < HPET_TIMER_NUM; i++ )
{
h->hpet.timers[i].config =
- HPET_TN_INT_ROUTE_CAP | HPET_TN_64BIT_CAP | HPET_TN_PERIODIC_CAP;
+ HPET_TN_INT_ROUTE_CAP_VAL | HPET_TN_64BIT_CAP |
HPET_TN_PERIODIC_CAP;
h->hpet.timers[i].cmp = ~0ULL;
h->hpet.comparator64[i] = ~0ULL;
h->pt[i].source = PTSRC_isa;
diff --git a/xen/include/asm-x86/hpet.h b/xen/include/asm-x86/hpet.h
index 10c4a5694d..fb6bf05065 100644
--- a/xen/include/asm-x86/hpet.h
+++ b/xen/include/asm-x86/hpet.h
@@ -42,7 +42,7 @@
#define HPET_TN_FSB 0x4000
#define HPET_TN_FSB_CAP 0x8000
#define HPET_TN_RESERVED 0xffff0081
-#define HPET_TN_ROUTE_SHIFT 9
+#define HPET_TN_INT_ROUTE_CAP (0xffffffffULL << 32)
#define hpet_read32(x) \
--
generated by git-patchbot for /home/xen/git/xen.git#staging
_______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |