ACK: [PATCH] acpi: spcr: issue a passed message if SPCR test passes

ivanhu ivan.hu at canonical.com
Fri May 8 04:07:48 UTC 2015



On 2015年04月30日 17:17, Colin King wrote:
> From: Colin Ian King <colin.king at canonical.com>
>
> Forgot to give postive passed feedback if SPCR test actually passes.
> Verified this now on an example ACPI table from an ARM 64 platform.
>
> Signed-off-by: Colin Ian King <colin.king at canonical.com>
> ---
>   src/acpi/spcr/spcr.c | 20 ++++++++++++++++++++
>   1 file changed, 20 insertions(+)
>
> diff --git a/src/acpi/spcr/spcr.c b/src/acpi/spcr/spcr.c
> index 7012e43..9fc7655 100644
> --- a/src/acpi/spcr/spcr.c
> +++ b/src/acpi/spcr/spcr.c
> @@ -55,6 +55,7 @@ static int spcr_test1(fwts_framework *fw)
>   	char *str;
>   	bool reserved = false;
>   	bool pci = true;
> +	bool passed = true;
>   
>   	/* Assuming revision 2 */
>   	switch (spcr->interface_type) {
> @@ -80,6 +81,7 @@ static int spcr_test1(fwts_framework *fw)
>   
>   	fwts_log_info_verbatum(fw, "Serial Interface: %s", str);
>   	if (reserved) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRInterfaceReserved",
>   			"SPCR Serial interface type 0x%2.2" PRIx8
> @@ -89,6 +91,7 @@ static int spcr_test1(fwts_framework *fw)
>   	if ((spcr->reserved1[0] |
>   	     spcr->reserved1[1] |
>   	     spcr->reserved1[2])) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_LOW,
>   			"SPCRReservedNonZero",
>   			"SPCR reserved field must be zero, got "
> @@ -99,11 +102,13 @@ static int spcr_test1(fwts_framework *fw)
>   	}
>   
>   	if (spcr->interrupt_type == 0) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRUnknownInterruptType",
>   			"SPCR interrupt type field is zero, expecting support bits to be set");
>   	}
>   	if (spcr->interrupt_type & 0xf0) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRIllegalReservedInterruptType",
>   			"SPCR interrupt type reserved bits are non-zero zero, got 0x%" PRIx8,
> @@ -118,6 +123,7 @@ static int spcr_test1(fwts_framework *fw)
>   		case 14 ... 15:
>   			break;
>   		default:
> +			passed = false;
>   			fwts_failed(fw, LOG_LEVEL_HIGH,
>   				"SPCRIllegalIRQ",
>   				"SPCR PC-AT compatible IRQ 0x%" PRIx8 " is invalid", spcr->irq);
> @@ -145,6 +151,7 @@ static int spcr_test1(fwts_framework *fw)
>   	}
>   	fwts_log_info_verbatum(fw, "Baud Rate:        %s", str);
>   	if (reserved) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRBaudRateReserved",
>   			"SPCR Serial baud rate type 0x%2.2" PRIx8
> @@ -152,6 +159,7 @@ static int spcr_test1(fwts_framework *fw)
>   	}
>   
>   	if (spcr->parity & ~1) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRParityReserved",
>   			"SPCR parity reserved bits 1..7 are non-zero, value is 0x%2.2" PRIx8,
> @@ -160,6 +168,7 @@ static int spcr_test1(fwts_framework *fw)
>   
>   	/* Stop bit *really* is bit 1 according to the spec */
>   	if (spcr->parity & ~2) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRStopBitReserved",
>   			"SPCR stop bit reserved bits 0,2..7 are non-zero, value is 0x%2.2" PRIx8,
> @@ -167,6 +176,7 @@ static int spcr_test1(fwts_framework *fw)
>   	}
>   
>   	if (spcr->flow_control & ~7) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRFlowControlReserved",
>   			"SPCR flow control reserved bits 3..7 are non-zero, value is 0x%2.2" PRIx8,
> @@ -193,6 +203,7 @@ static int spcr_test1(fwts_framework *fw)
>   	}
>   	fwts_log_info_verbatum(fw, "Terminal Type:    %s", str);
>   	if (reserved) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRTerminalTypeReserved",
>   			"SPCR terminal type type 0x%2.2" PRIx8
> @@ -200,6 +211,7 @@ static int spcr_test1(fwts_framework *fw)
>   	}
>   
>   	if (spcr->reserved2) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_LOW,
>   			"SPCRReservedNonZero",
>   			"SPCR reserved field must be zero, got "
> @@ -217,6 +229,7 @@ static int spcr_test1(fwts_framework *fw)
>   	/* Now validate all pci specific fields if not-PCI enabled */
>   	if (pci) {
>   		if (spcr->pci_device_id == 0xffff) {
> +			passed = false;
>   			fwts_failed(fw, LOG_LEVEL_HIGH,
>   				"SPCRPciDeviceID",
>   				"SPCR PCI device ID is 0x%4.4" PRIx16
> @@ -224,6 +237,7 @@ static int spcr_test1(fwts_framework *fw)
>   				spcr->pci_device_id);
>   		}
>   		if (spcr->pci_vendor_id == 0xffff) {
> +			passed = false;
>   			fwts_failed(fw, LOG_LEVEL_HIGH,
>   				"SPCRPciVendorID",
>   				"SPCR PCI vendor ID is 0x%4.4" PRIx16
> @@ -231,6 +245,7 @@ static int spcr_test1(fwts_framework *fw)
>   				spcr->pci_vendor_id);
>   		}
>   		if ((spcr->pci_flags & 1) == 0) {
> +			passed = false;
>   			fwts_failed(fw, LOG_LEVEL_HIGH,
>   				"SPCRPciFlagsBit0",
>   				"SPCR PCI flags compatibility bit 0 is %" PRIx32
> @@ -240,6 +255,7 @@ static int spcr_test1(fwts_framework *fw)
>   	}
>   
>   	if (spcr->pci_flags & 0xfffe) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_HIGH,
>   			"SPCRPciFlags",
>   			"SPCR PCI flags reserved bits 1-31 are %" PRIx32
> @@ -248,12 +264,16 @@ static int spcr_test1(fwts_framework *fw)
>   	}
>   
>   	if (spcr->reserved3) {
> +		passed = false;
>   		fwts_failed(fw, LOG_LEVEL_LOW,
>   			"SPCRReservedNonZero",
>   			"SPCR reserved field must be zero, got "
>   			"0x%2.2" PRIx8 " instead", spcr->reserved3);
>   	}
>   
> +	if (passed)
> +		fwts_passed(fw, "No issues found in SPCR table.");
> +
>   	return FWTS_OK;
>   }
>   
Acked-by: Ivan Hu<ivan.hu at canonical.com>



More information about the fwts-devel mailing list