1/* $NetBSD: intel_tc.h,v 1.2 2021/12/18 23:45:30 riastradh Exp $ */ 2 3/* SPDX-License-Identifier: MIT */ 4/* 5 * Copyright �� 2019 Intel Corporation 6 */ 7 8#ifndef __INTEL_TC_H__ 9#define __INTEL_TC_H__ 10 11#include <linux/mutex.h> 12#include <linux/types.h> 13 14struct intel_digital_port; 15 16bool intel_tc_port_connected(struct intel_digital_port *dig_port); 17u32 intel_tc_port_get_lane_mask(struct intel_digital_port *dig_port); 18u32 intel_tc_port_get_pin_assignment_mask(struct intel_digital_port *dig_port); 19int intel_tc_port_fia_max_lane_count(struct intel_digital_port *dig_port); 20void intel_tc_port_set_fia_lane_count(struct intel_digital_port *dig_port, 21 int required_lanes); 22 23void intel_tc_port_sanitize(struct intel_digital_port *dig_port); 24void intel_tc_port_lock(struct intel_digital_port *dig_port); 25void intel_tc_port_unlock(struct intel_digital_port *dig_port); 26void intel_tc_port_get_link(struct intel_digital_port *dig_port, 27 int required_lanes); 28void intel_tc_port_put_link(struct intel_digital_port *dig_port); 29bool intel_tc_port_ref_held(struct intel_digital_port *dig_port); 30 31void intel_tc_port_init(struct intel_digital_port *dig_port, bool is_legacy); 32 33#endif /* __INTEL_TC_H__ */ 34