[PATCH 1/3] acpica: fwts_acpica: some cosmetic tidying up.

Colin King colin.king at canonical.com
Fri Jun 7 08:41:37 UTC 2013


From: Colin Ian King <colin.king at canonical.com>

This code is a little bit crufty and needs a little bit of
cosmetic tidying up.

Signed-off-by: Colin Ian King <colin.king at canonical.com>
---
 src/acpica/fwts_acpica.c | 96 +++++++++++++++++++++++-------------------------
 1 file changed, 45 insertions(+), 51 deletions(-)

diff --git a/src/acpica/fwts_acpica.c b/src/acpica/fwts_acpica.c
index 73bfa73..835685b 100644
--- a/src/acpica/fwts_acpica.c
+++ b/src/acpica/fwts_acpica.c
@@ -31,12 +31,9 @@
 #include <signal.h>
 #include <pthread.h>
 
-static pthread_mutex_t mutex_lock_sem_table;
-static pthread_mutex_t mutex_thread_info;
-
 #include "fwts.h"
 
-/* acpica headers */
+/* ACPICA specific headers */
 #include "acpi.h"
 #include "accommon.h"
 #include "acparser.h"
@@ -46,37 +43,26 @@ static pthread_mutex_t mutex_thread_info;
 #include "actables.h"
 #include "acinterp.h"
 #include "acapps.h"
-#include <pthread.h>
-#include <errno.h>
 
-#define ACPI_MAX_INIT_TABLES	(32)
-#define AEXEC_NUM_REGIONS   	(8)
+#define ACPI_MAX_INIT_TABLES		(64)	/* Number of ACPI tables */
+
+#define MAX_SEMAPHORES			(1024)	/* For semaphore tracking */
+#define MAX_THREADS			(128)	/* For thread tracking */
 
-#define MAX_SEMAPHORES		(1024)
-#define MAX_THREADS		(128)
+#define MAX_WAIT_TIMEOUT		(20)	/* Seconds */
 
-#define MAX_WAIT_TIMEOUT	(20)	/* Seconds */
+#define ACPI_ADR_SPACE_USER_DEFINED1	(0x80)
+#define ACPI_ADR_SPACE_USER_DEFINED2	(0xE4)
 
+/* 
+ *  Semaphore accounting info
+ */
 typedef struct {
 	sem_t		sem;	/* Semaphore handle */
 	int		count;	/* count > 0 if acquired */
 	bool		used;	/* Semaphore being used flag */
 } sem_info;
 
-typedef void * (*PTHREAD_CALLBACK)(void *);
-
-BOOLEAN AcpiGbl_IgnoreErrors = FALSE;
-UINT8   AcpiGbl_RegionFillValue = 0;
-
-/*
- *  Used to account for semaphores used by AcpiOs*Semaphore()
- */
-static sem_info			sem_table[MAX_SEMAPHORES];
-
-static ACPI_TABLE_DESC		Tables[ACPI_MAX_INIT_TABLES];
-
-static bool			region_handler_called;
-
 /*
  *  Used to account for threads used by AcpiOsExecute
  */
@@ -85,7 +71,19 @@ typedef struct {
 	pthread_t	thread;	/* thread info */
 } fwts_thread;
 
-static fwts_thread	threads[MAX_THREADS];
+typedef void * (*pthread_callback)(void *);
+
+BOOLEAN AcpiGbl_IgnoreErrors = FALSE;
+UINT8   AcpiGbl_RegionFillValue = 0;
+
+static ACPI_TABLE_DESC		Tables[ACPI_MAX_INIT_TABLES];	/* ACPICA Table descriptors */
+static bool			region_handler_called;		/* Region handler tracking */
+
+static sem_info			sem_table[MAX_SEMAPHORES];	/* Semaphore accounting for AcpiOs*Semaphore() */
+static pthread_mutex_t		mutex_lock_sem_table;		/* Semaphore accounting mutex */
+
+static fwts_thread		threads[MAX_THREADS];		/* Thread accounting for AcpiOsExecute */
+static pthread_mutex_t		mutex_thread_info;		/* Thread accounting mutex */
 
 /*
  *  Static copies of ACPI tables used by ACPICA execution engine
@@ -96,29 +94,10 @@ static ACPI_TABLE_RSDP		*fwts_acpica_RSDP;
 static ACPI_TABLE_FADT		*fwts_acpica_FADT;
 static void 			*fwts_acpica_DSDT;
 
-static fwts_framework		*fwts_acpica_fw;			/* acpica context copy of fw */
-static bool			fwts_acpica_init_called;		/* > 0, ACPICA initialised */
+static fwts_framework		*fwts_acpica_fw;		/* acpica context copy of fw */
+static bool			fwts_acpica_init_called;	/* > 0, ACPICA initialised */
 static fwts_acpica_log_callback fwts_acpica_log_callback_func = NULL;	/* logging call back func */
 
-#define ACPI_ADR_SPACE_USER_DEFINED1        0x80
-#define ACPI_ADR_SPACE_USER_DEFINED2        0xE4
-
-static ACPI_ADR_SPACE_TYPE fwts_space_id_list[] =
-{
-	ACPI_ADR_SPACE_SYSTEM_MEMORY,
-	ACPI_ADR_SPACE_SYSTEM_IO,
-	ACPI_ADR_SPACE_EC,
-	ACPI_ADR_SPACE_SMBUS,
-	ACPI_ADR_SPACE_CMOS,
-	ACPI_ADR_SPACE_GSBUS,
-	ACPI_ADR_SPACE_GPIO,
-	ACPI_ADR_SPACE_PCI_BAR_TARGET,
-	ACPI_ADR_SPACE_IPMI,
-	ACPI_ADR_SPACE_FIXED_HARDWARE,
-	ACPI_ADR_SPACE_USER_DEFINED1,
-	ACPI_ADR_SPACE_USER_DEFINED2
-};
-
 /* Semaphore Tracking */
 
 /*
@@ -667,7 +646,7 @@ ACPI_STATUS AcpiOsReadPort(ACPI_IO_ADDRESS addr, UINT32 *value, UINT32 width)
 }
 
 typedef struct {
-	PTHREAD_CALLBACK	func;
+	pthread_callback	func;
 	void *			context;
 	int			thread_index;
 } fwts_func_wrapper_context;
@@ -713,13 +692,13 @@ ACPI_STATUS AcpiOsExecute(
 				return AE_NO_MEMORY;
 			}
 
-			ctx->func = (PTHREAD_CALLBACK)function;
+			ctx->func = (pthread_callback)function;
 			ctx->context = func_context;
 			ctx->thread_index = i;
 			threads[i].used = true;
 
 			ret = pthread_create(&threads[i].thread, NULL,
-				(PTHREAD_CALLBACK)fwts_pthread_func_wrapper, ctx);
+				(pthread_callback)fwts_pthread_func_wrapper, ctx);
 			pthread_mutex_unlock(&mutex_thread_info);
 
 			if (ret)
@@ -787,6 +766,22 @@ int fwtsInstallEarlyHandlers(fwts_framework *fw)
 	int i;
 	ACPI_HANDLE	handle;
 
+	static ACPI_ADR_SPACE_TYPE fwts_space_id_list[] =
+	{
+		ACPI_ADR_SPACE_SYSTEM_MEMORY,
+		ACPI_ADR_SPACE_SYSTEM_IO,
+		ACPI_ADR_SPACE_EC,
+		ACPI_ADR_SPACE_SMBUS,
+		ACPI_ADR_SPACE_CMOS,
+		ACPI_ADR_SPACE_GSBUS,
+		ACPI_ADR_SPACE_GPIO,
+		ACPI_ADR_SPACE_PCI_BAR_TARGET,
+		ACPI_ADR_SPACE_IPMI,
+		ACPI_ADR_SPACE_FIXED_HARDWARE,
+		ACPI_ADR_SPACE_USER_DEFINED1,
+		ACPI_ADR_SPACE_USER_DEFINED2
+	};
+
 	if (AcpiInstallInterfaceHandler(fwts_interface_handler) != AE_OK) {
 		fwts_log_error(fw, "Failed to install interface handler.");
 		return FWTS_ERROR;
@@ -904,7 +899,6 @@ int fwts_acpica_init(fwts_framework *fw)
 
 	AcpiOsRedirectOutput(stderr);
 
-
 	if (ACPI_FAILURE(AcpiInitializeSubsystem())) {
 		fwts_log_error(fw, "Failed to initialise ACPICA subsystem.");
 		return FWTS_ERROR;
-- 
1.8.3




More information about the fwts-devel mailing list