1 // SPDX-License-Identifier: GPL-2.0-only 2 /* 3 * Copyright 2022, Athira Rajeev, IBM Corp. 4 */ 5 6 #include <stdio.h> 7 #include "../event.h" 8 #include "../sampling_tests/misc.h" 9 10 /* 11 * Testcase for reserved bits in Monitor Mode 12 * Control Register A (MMCRA) thresh_ctl bits. 13 * For MMCRA[48:51]/[52:55]) Threshold Start/Stop, 14 * 0b11110000/0b00001111 is reserved. 15 */ 16 reserved_bits_mmcra_thresh_ctl(void)17static int reserved_bits_mmcra_thresh_ctl(void) 18 { 19 struct event event; 20 21 /* Check for platform support for the test */ 22 SKIP_IF(platform_check_for_tests()); 23 24 /* Skip for Generic compat PMU */ 25 SKIP_IF(check_for_generic_compat_pmu()); 26 27 /* 28 * MMCRA[48:51]/[52:55]) Threshold Start/Stop 29 * events Selection. 0b11110000/0b00001111 is reserved. 30 * Expected to fail when using these reserved values. 31 */ 32 event_init(&event, 0xf0340401e0); 33 FAIL_IF(!event_open(&event)); 34 35 event_init(&event, 0x0f340401e0); 36 FAIL_IF(!event_open(&event)); 37 38 return 0; 39 } 40 main(void)41int main(void) 42 { 43 return test_harness(reserved_bits_mmcra_thresh_ctl, "reserved_bits_mmcra_thresh_ctl"); 44 } 45