Commit d11fae6d authored by Andrei Emeltchenko's avatar Andrei Emeltchenko Committed by Anas Nashif
Browse files

edac: ibecc: Return -ENODATA on zero log



Return -ENODATA when we read zero log.

Signed-off-by: default avatarAndrei Emeltchenko <andrei.emeltchenko@intel.com>
parent 0feb432b
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -198,6 +198,9 @@ static int inject_error_trigger(const struct device *dev)
static int ecc_error_log_get(const struct device *dev, uint64_t *value)
{
	*value = ibecc_read_reg64(dev, IBECC_ECC_ERROR_LOG);
	if (*value == 0) {
		return -ENODATA;
	}

	return 0;
}
@@ -214,6 +217,9 @@ static int ecc_error_log_clear(const struct device *dev)
static int parity_error_log_get(const struct device *dev, uint64_t *value)
{
	*value = ibecc_read_reg64(dev, IBECC_PARITY_ERROR_LOG);
	if (*value == 0) {
		return -ENODATA;
	}

	return 0;
}
+2 −2
Original line number Diff line number Diff line
@@ -58,13 +58,13 @@ static void test_ibecc_api(void)
	/* Error log API */

	ret = edac_ecc_error_log_get(dev, &value);
	zassert_equal(ret, 0, "edac_ecc_error_log_get failed");
	zassert_equal(ret, -ENODATA, "edac_ecc_error_log_get failed");

	ret = edac_ecc_error_log_clear(dev);
	zassert_equal(ret, 0, "edac_ecc_error_log_clear failed");

	ret = edac_parity_error_log_get(dev, &value);
	zassert_equal(ret, 0, "edac_parity_error_log_get failed");
	zassert_equal(ret, -ENODATA, "edac_parity_error_log_get failed");

	ret = edac_parity_error_log_clear(dev);
	zassert_equal(ret, 0, "edac_parity_error_log_clear failed");