Author: adrian
Date: Thu Dec 29 17:31:07 2016
New Revision: 310780
URL: https://svnweb.freebsd.org/changeset/base/310780

Log:
  [ar71xx] put in an implicit read-after-write to flush things out.
  
  Note: I may need to revisit this for mips74k.

Modified:
  head/sys/mips/atheros/ar71xxreg.h

Modified: head/sys/mips/atheros/ar71xxreg.h
==============================================================================
--- head/sys/mips/atheros/ar71xxreg.h   Thu Dec 29 16:35:49 2016        
(r310779)
+++ head/sys/mips/atheros/ar71xxreg.h   Thu Dec 29 17:31:07 2016        
(r310780)
@@ -527,7 +527,10 @@ typedef enum {
     *((volatile uint32_t *)MIPS_PHYS_TO_KSEG1((reg)))
 
 #define ATH_WRITE_REG(reg, val) \
-    *((volatile uint32_t *)MIPS_PHYS_TO_KSEG1((reg))) = (val)
+    do { \
+      *((volatile uint32_t *)MIPS_PHYS_TO_KSEG1((reg))) = (val); \
+      (void) ATH_READ_REG(reg); \
+    } while (0)
 
 static inline void
 ar71xx_ddr_flush(uint32_t reg)
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to