// SPDX-License-Identifier: GPL-2.0-only /* * Copyright 2022, Athira Rajeev, IBM Corp. */ #include <stdio.h> #include "../event.h" #include "../sampling_tests/misc.h" /* * Testcase for reserved bits in Monitor Mode * Control Register A (MMCRA) thresh_ctl bits. * For MMCRA[48:51]/[52:55]) Threshold Start/Stop, * 0b11110000/0b00001111 is reserved. */ static int reserved_bits_mmcra_thresh_ctl(void) { struct event event; /* Check for platform support for the test */ SKIP_IF(platform_check_for_tests()); /* Skip for Generic compat PMU */ SKIP_IF(check_for_generic_compat_pmu()); /* * MMCRA[48:51]/[52:55]) Threshold Start/Stop * events Selection. 0b11110000/0b00001111 is reserved. * Expected to fail when using these reserved values. */ event_init(&event, 0xf0340401e0); FAIL_IF(!event_open(&event)); event_init(&event, 0x0f340401e0); FAIL_IF(!event_open(&event)); return 0; } int main(void) { return test_harness(reserved_bits_mmcra_thresh_ctl, "reserved_bits_mmcra_thresh_ctl"); }