brintos

brintos / linux-shallow public Read only

0
0
Text · 1019 B · 19d1f19 Raw
42 lines · c
1// SPDX-License-Identifier: MIT2/*3 * Copyright © 2022 Intel Corporation4 */5 6#include "i915_drv.h"7#include "intel_de.h"8#include "intel_display.h"9#include "intel_hti.h"10#include "intel_hti_regs.h"11 12void intel_hti_init(struct intel_display *display)13{14	/*15	 * If the platform has HTI, we need to find out whether it has reserved16	 * any display resources before we create our display outputs.17	 */18	if (DISPLAY_INFO(display)->has_hti)19		display->hti.state = intel_de_read(display, HDPORT_STATE);20}21 22bool intel_hti_uses_phy(struct intel_display *display, enum phy phy)23{24	if (drm_WARN_ON(display->drm, phy == PHY_NONE))25		return false;26 27	return display->hti.state & HDPORT_ENABLED &&28		display->hti.state & HDPORT_DDI_USED(phy);29}30 31u32 intel_hti_dpll_mask(struct intel_display *display)32{33	if (!(display->hti.state & HDPORT_ENABLED))34		return 0;35 36	/*37	 * Note: This is subtle. The values must coincide with what's defined38	 * for the platform.39	 */40	return REG_FIELD_GET(HDPORT_DPLL_USED_MASK, display->hti.state);41}42