From 439bf4cce857cbb4c6431aed3ad7ec46efaf5ff0 Mon Sep 17 00:00:00 2001 From: jmcneill Date: Sun, 28 May 2017 00:29:55 +0000 Subject: [PATCH] If the "frequency" property is not specified, try to use the value in CNTFRQ. Firmware should have already set this for us. --- sys/arch/arm/cortex/gtmr.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/arch/arm/cortex/gtmr.c b/sys/arch/arm/cortex/gtmr.c index 2776a5333561..46f5070ed215 100644 --- a/sys/arch/arm/cortex/gtmr.c +++ b/sys/arch/arm/cortex/gtmr.c @@ -1,4 +1,4 @@ -/* $NetBSD: gtmr.c,v 1.16 2015/04/20 20:19:52 matt Exp $ */ +/* $NetBSD: gtmr.c,v 1.17 2017/05/28 00:29:55 jmcneill Exp $ */ /*- * Copyright (c) 2012 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: gtmr.c,v 1.16 2015/04/20 20:19:52 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: gtmr.c,v 1.17 2017/05/28 00:29:55 jmcneill Exp $"); #include #include @@ -103,7 +103,9 @@ gtmr_attach(device_t parent, device_t self, void *aux) /* * This runs at a fixed frequency of 1 to 50MHz. */ - prop_dictionary_get_uint32(dict, "frequency", &sc->sc_freq); + if (!prop_dictionary_get_uint32(dict, "frequency", &sc->sc_freq)) + sc->sc_freq = armreg_cnt_frq_read(); + KASSERT(sc->sc_freq != 0); humanize_number(freqbuf, sizeof(freqbuf), sc->sc_freq, "Hz", 1000);