Author: jkim
Date: Tue Aug 13 21:34:03 2013
New Revision: 254300
URL: http://svnweb.freebsd.org/changeset/base/254300

Log:
  Tidy up global locks for ACPICA.  There is no functional change.

Modified:
  head/sys/amd64/include/acpica_machdep.h
  head/sys/dev/acpica/Osd/OsdSynch.c
  head/sys/i386/include/acpica_machdep.h
  head/sys/ia64/include/acpica_machdep.h

Modified: head/sys/amd64/include/acpica_machdep.h
==============================================================================
--- head/sys/amd64/include/acpica_machdep.h     Tue Aug 13 21:12:28 2013        
(r254299)
+++ head/sys/amd64/include/acpica_machdep.h     Tue Aug 13 21:34:03 2013        
(r254300)
@@ -59,9 +59,9 @@
 
 #define        ACPI_FLUSH_CPU_CACHE()  wbinvd()
 
-/* Section 5.2.9.1:  global lock acquire/release functions */
-extern int     acpi_acquire_global_lock(uint32_t *lock);
-extern int     acpi_release_global_lock(uint32_t *lock);
+/* Section 5.2.10.1: global lock acquire/release functions */
+int    acpi_acquire_global_lock(volatile uint32_t *);
+int    acpi_release_global_lock(volatile uint32_t *);
 #define        ACPI_ACQUIRE_GLOBAL_LOCK(GLptr, Acq)    do {                    
\
        (Acq) = acpi_acquire_global_lock(&((GLptr)->GlobalLock));       \
 } while (0)

Modified: head/sys/dev/acpica/Osd/OsdSynch.c
==============================================================================
--- head/sys/dev/acpica/Osd/OsdSynch.c  Tue Aug 13 21:12:28 2013        
(r254299)
+++ head/sys/dev/acpica/Osd/OsdSynch.c  Tue Aug 13 21:34:03 2013        
(r254300)
@@ -566,8 +566,6 @@ AcpiOsReleaseLock(ACPI_SPINLOCK Handle, 
 }
 
 /* Section 5.2.10.1: global lock acquire/release functions */
-#define        GL_BIT_PENDING  0x01
-#define        GL_BIT_OWNED    0x02
 
 /*
  * Acquire the global lock.  If busy, set the pending bit.  The caller
@@ -575,18 +573,18 @@ AcpiOsReleaseLock(ACPI_SPINLOCK Handle, 
  * and then attempt to acquire it again.
  */
 int
-acpi_acquire_global_lock(uint32_t *lock)
+acpi_acquire_global_lock(volatile uint32_t *lock)
 {
        uint32_t        new, old;
 
        do {
                old = *lock;
-               new = (old & ~GL_BIT_PENDING) | GL_BIT_OWNED;
-               if ((old & GL_BIT_OWNED) != 0)
-                       new |= GL_BIT_PENDING;
-       } while (atomic_cmpset_acq_int(lock, old, new) == 0);
+               new = (old & ~ACPI_GLOCK_PENDING) | ACPI_GLOCK_OWNED;
+               if ((old & ACPI_GLOCK_OWNED) != 0)
+                       new |= ACPI_GLOCK_PENDING;
+       } while (atomic_cmpset_32(lock, old, new) == 0);
 
-       return ((new & GL_BIT_PENDING) == 0);
+       return ((new & ACPI_GLOCK_PENDING) == 0);
 }
 
 /*
@@ -595,14 +593,14 @@ acpi_acquire_global_lock(uint32_t *lock)
  * releases the lock.
  */
 int
-acpi_release_global_lock(uint32_t *lock)
+acpi_release_global_lock(volatile uint32_t *lock)
 {
        uint32_t        new, old;
 
        do {
                old = *lock;
-               new = old & ~(GL_BIT_PENDING | GL_BIT_OWNED);
-       } while (atomic_cmpset_rel_int(lock, old, new) == 0);
+               new = old & ~(ACPI_GLOCK_PENDING | ACPI_GLOCK_OWNED);
+       } while (atomic_cmpset_32(lock, old, new) == 0);
 
-       return ((old & GL_BIT_PENDING) != 0);
+       return ((old & ACPI_GLOCK_PENDING) != 0);
 }

Modified: head/sys/i386/include/acpica_machdep.h
==============================================================================
--- head/sys/i386/include/acpica_machdep.h      Tue Aug 13 21:12:28 2013        
(r254299)
+++ head/sys/i386/include/acpica_machdep.h      Tue Aug 13 21:34:03 2013        
(r254300)
@@ -59,9 +59,9 @@
 
 #define        ACPI_FLUSH_CPU_CACHE()  wbinvd()
 
-/* Section 5.2.9.1:  global lock acquire/release functions */
-extern int     acpi_acquire_global_lock(uint32_t *lock);
-extern int     acpi_release_global_lock(uint32_t *lock);
+/* Section 5.2.10.1: global lock acquire/release functions */
+int    acpi_acquire_global_lock(volatile uint32_t *);
+int    acpi_release_global_lock(volatile uint32_t *);
 #define        ACPI_ACQUIRE_GLOBAL_LOCK(GLptr, Acq)    do {                    
\
        (Acq) = acpi_acquire_global_lock(&((GLptr)->GlobalLock));       \
 } while (0)

Modified: head/sys/ia64/include/acpica_machdep.h
==============================================================================
--- head/sys/ia64/include/acpica_machdep.h      Tue Aug 13 21:12:28 2013        
(r254299)
+++ head/sys/ia64/include/acpica_machdep.h      Tue Aug 13 21:34:03 2013        
(r254300)
@@ -60,9 +60,9 @@
 
 #define        ACPI_FLUSH_CPU_CACHE()  /* XXX ia64_fc()? */
 
-/* Section 5.2.9.1:  global lock acquire/release functions */
-extern int     acpi_acquire_global_lock(uint32_t *lock);
-extern int     acpi_release_global_lock(uint32_t *lock);
+/* Section 5.2.10.1: global lock acquire/release functions */
+int    acpi_acquire_global_lock(volatile uint32_t *);
+int    acpi_release_global_lock(volatile uint32_t *);
 #define        ACPI_ACQUIRE_GLOBAL_LOCK(GLptr, Acq)    do {                    
\
        (Acq) = acpi_acquire_global_lock(&((GLptr)->GlobalLock));       \
 } while (0)
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to