17c15791dSJani Nikula /* SPDX-License-Identifier: MIT */ 27c15791dSJani Nikula /* Copyright © 2025 Intel Corporation */ 37c15791dSJani Nikula 47c15791dSJani Nikula #ifndef __INTEL_DISPLAY_UTILS__ 57c15791dSJani Nikula #define __INTEL_DISPLAY_UTILS__ 67c15791dSJani Nikula 7*b062cf54SJani Nikula #include <linux/bug.h> 8cd81a70dSJani Nikula #include <linux/types.h> 9cd81a70dSJani Nikula 10cd81a70dSJani Nikula struct intel_display; 11cd81a70dSJani Nikula 12*b062cf54SJani Nikula #ifndef MISSING_CASE 13*b062cf54SJani Nikula #define MISSING_CASE(x) WARN(1, "Missing case (%s == %ld)\n", \ 14*b062cf54SJani Nikula __stringify(x), (long)(x)) 15*b062cf54SJani Nikula #endif 16*b062cf54SJani Nikula 17*b062cf54SJani Nikula #ifndef fetch_and_zero 18*b062cf54SJani Nikula #define fetch_and_zero(ptr) ({ \ 19*b062cf54SJani Nikula typeof(*ptr) __T = *(ptr); \ 20*b062cf54SJani Nikula *(ptr) = (typeof(*ptr))0; \ 21*b062cf54SJani Nikula __T; \ 22*b062cf54SJani Nikula }) 23*b062cf54SJani Nikula #endif 24*b062cf54SJani Nikula 257c15791dSJani Nikula #define KHz(x) (1000 * (x)) 267c15791dSJani Nikula #define MHz(x) KHz(1000 * (x)) 277c15791dSJani Nikula 28cd81a70dSJani Nikula bool intel_display_run_as_guest(struct intel_display *display); 29aaccf0baSJani Nikula bool intel_display_vtd_active(struct intel_display *display); 30cd81a70dSJani Nikula 317c15791dSJani Nikula #endif /* __INTEL_DISPLAY_UTILS__ */ 32