From 269dc4f4f25be8bf7a2a17ff352a3ca43fa8ac2d Mon Sep 17 00:00:00 2001 From: adrian Date: Wed, 5 Aug 2015 21:16:12 +0000 Subject: Add a missing method - ath_hal_settsf64(). This is required for TDMA slave mode. --- sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'sys/contrib') diff --git a/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c b/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c index 5bdd74f..6118b82 100644 --- a/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c +++ b/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c @@ -97,6 +97,18 @@ ar9300_freebsd_get_cts_timeout(struct ath_hal *ah) return ath_hal_mac_usec(ah, clks); /* convert from system clocks */ } +static void +ar9300_freebsd_set_tsf64(struct ath_hal *ah, uint64_t tsf64) +{ + + /* + * XXX TODO: read ar5416SetTsf64() - we should wait before we do + * this. + */ + OS_REG_WRITE(ah, AR_TSF_L32, tsf64 & 0xffffffff); + OS_REG_WRITE(ah, AR_TSF_U32, (tsf64 >> 32) & 0xffffffff); +} + void ar9300_attach_freebsd_ops(struct ath_hal *ah) { @@ -182,6 +194,7 @@ ar9300_attach_freebsd_ops(struct ath_hal *ah) ah->ah_getTsf32 = ar9300_get_tsf32; ah->ah_getTsf64 = ar9300_get_tsf64; ah->ah_resetTsf = ar9300_reset_tsf; + ah->ah_setTsf64 = ar9300_freebsd_set_tsf64; ah->ah_detectCardPresent = ar9300_detect_card_present; // ah->ah_updateMibCounters = ar9300_update_mib_counters; ah->ah_getRfGain = ar9300_get_rfgain; -- cgit v1.1