summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomasz Nowicki <tomasz.nowicki@linaro.org>2013-10-10 11:05:58 +0200
committerTomasz Nowicki <tomasz.nowicki@linaro.org>2013-10-10 11:05:58 +0200
commit28df0d27d89cc63376f27513e4c1a78ee891d425 (patch)
tree16cc9d704ca7f1d60b8dc36973802384cb111b30
parent92d422273b57b0e014d885c9dcdaf301db29110d (diff)
acpi, apei, einj: Relace constant value with defines.
-rw-r--r--tools/bfapei/bfapei.c13
-rw-r--r--tools/common/include/acpi.h20
2 files changed, 28 insertions, 5 deletions
diff --git a/tools/bfapei/bfapei.c b/tools/bfapei/bfapei.c
index ff99953..9226d55 100644
--- a/tools/bfapei/bfapei.c
+++ b/tools/bfapei/bfapei.c
@@ -198,7 +198,8 @@ static int bfapei_einj(char **buf, int *size, uint64_t paddr)
return BFAPEI_FAIL;
/* Available error type: Memory Correctable */
- WRITE_EINJ_REG(*buf, ACPI_EINJ_GET_ERROR_TYPE, 0x00000008);
+ WRITE_EINJ_REG(*buf, ACPI_EINJ_GET_ERROR_TYPE,
+ 1 << ACPI_ERR_TYPE_MEM_CORRECTABLE);
WRITE_EINJ_REG(*buf, ACPI_EINJ_GET_COMMAND_STATUS, ACPI_EINJ_SUCCESS);
WRITE_EINJ_REG(*buf, ACPI_EINJ_CHECK_BUSY_STATUS, 1);
@@ -207,8 +208,10 @@ static int bfapei_einj(char **buf, int *size, uint64_t paddr)
* Nothing to do more than just set status flag for previous prepared
* ESB (error status block)
*/
- WRITE_EINJ_REG(*buf, ACPI_EINJ_GET_TRIGGER_TABLE, paddr + 0x280);
- trigger_tab = (struct acpi_einj_trigger *) (*buf + 0x280);
+ WRITE_EINJ_REG(*buf, ACPI_EINJ_GET_TRIGGER_TABLE,
+ paddr + ACPI_EINJ_TRIGGER_TABLE_OFFSET);
+ trigger_tab = (struct acpi_einj_trigger *)
+ (*buf + ACPI_EINJ_TRIGGER_TABLE_OFFSET);
trigger_tab->header_size = sizeof(struct acpi_einj_trigger);
trigger_tab->table_size = sizeof(struct acpi_einj_trigger) +
sizeof(struct acpi_whea_header);
@@ -229,8 +232,8 @@ static int bfapei_einj(char **buf, int *size, uint64_t paddr)
trigger_entry->register_region.address =
paddr + ((char *)&(block_ptr->block_status) - *buf);
- trigger_entry->value = 1;
- trigger_entry->mask = 0xFFFFFFFFFFFFFFFFUL;
+ trigger_entry->value = 1 << GHES_ERR_TYPE_CORRECTABLE;
+ trigger_entry->mask = ~0x0UL;
return BFAPEI_OK;
}
diff --git a/tools/common/include/acpi.h b/tools/common/include/acpi.h
index 9ba29fb..fed7035 100644
--- a/tools/common/include/acpi.h
+++ b/tools/common/include/acpi.h
@@ -109,6 +109,11 @@ enum {
/* Generic Error Status block */
+#define GHES_ERR_TYPE_UNCORRECTABLE 0
+#define GHES_ERR_TYPE_CORRECTABLE 1
+#define GHES_ERR_TYPE_MULTIPLE_UNCORRECTABLE 2
+#define GHES_ERR_TYPE_MULTIPLE_CORRECTABLE 3
+
struct acpi_hest_generic_status {
uint32_t block_status;
uint32_t raw_data_offset;
@@ -201,6 +206,21 @@ enum acpi_erst_actions {
ACPI_ERST_ACTION_RESERVED = 16 /* 16 and greater are reserved */
};
+#define ACPI_ERR_TYPE_PROCSR_CORRECTABLE 0
+#define ACPI_ERR_TYPE_PROCSR_UNCORRECTABLE 1
+#define ACPI_ERR_TYPE_PROCSR_UNCORRECTABLE_FATAL 2
+#define ACPI_ERR_TYPE_MEM_CORRECTABLE 3
+#define ACPI_ERR_TYPE_MEM_UNCORRECTABLE 4
+#define ACPI_ERR_TYPE_MEM_UNCORRECTABLE_FATAL 5
+#define ACPI_ERR_TYPE_PCIE_CORRECTABLE 6
+#define ACPI_ERR_TYPE_PCIE_UNCORRECTABLE 7
+#define ACPI_ERR_TYPE_PCIE_UNCORRECTABLE_FATAL 8
+#define ACPI_ERR_TYPE_PLATFOTM_CORRECTABLE 9
+#define ACPI_ERR_TYPE_PLATFOTM_UNCORRECTABLE 10
+#define ACPI_ERR_TYPE_PLATFOTM_UNCORRECTABLE_FATAL 11
+#define ACPI_ERR_TYPE_VENDOR_DEFINED 31
+
+#define ACPI_EINJ_TRIGGER_TABLE_OFFSET 0x280
#define ACPI_ADR_SPACE_SYSTEM_MEMORY 0
enum acpi_einj_actions {