154618888SWenjing Liu /*
254618888SWenjing Liu  * Copyright 2023 Advanced Micro Devices, Inc.
354618888SWenjing Liu  *
454618888SWenjing Liu  * Permission is hereby granted, free of charge, to any person obtaining a
554618888SWenjing Liu  * copy of this software and associated documentation files (the "Software"),
654618888SWenjing Liu  * to deal in the Software without restriction, including without limitation
754618888SWenjing Liu  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
854618888SWenjing Liu  * and/or sell copies of the Software, and to permit persons to whom the
954618888SWenjing Liu  * Software is furnished to do so, subject to the following conditions:
1054618888SWenjing Liu  *
1154618888SWenjing Liu  * The above copyright notice and this permission notice shall be included in
1254618888SWenjing Liu  * all copies or substantial portions of the Software.
1354618888SWenjing Liu  *
1454618888SWenjing Liu  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1554618888SWenjing Liu  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1654618888SWenjing Liu  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
1754618888SWenjing Liu  * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
1854618888SWenjing Liu  * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
1954618888SWenjing Liu  * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
2054618888SWenjing Liu  * OTHER DEALINGS IN THE SOFTWARE.
2154618888SWenjing Liu  *
2254618888SWenjing Liu  * Authors: AMD
2354618888SWenjing Liu  *
2454618888SWenjing Liu  */
2554618888SWenjing Liu #ifndef __LINK_VALIDATION_H__
2654618888SWenjing Liu #define __LINK_VALIDATION_H__
2754618888SWenjing Liu #include "link.h"
2898ce7d32SWenjing Liu enum dc_status link_validate_mode_timing(
2998ce7d32SWenjing Liu 		const struct dc_stream_state *stream,
3098ce7d32SWenjing Liu 		struct dc_link *link,
3198ce7d32SWenjing Liu 		const struct dc_crtc_timing *timing);
32*a8b53760SMustapha Ghaddar bool link_validate_dpia_bandwidth(
33*a8b53760SMustapha Ghaddar 		const struct dc_stream_state *stream,
34*a8b53760SMustapha Ghaddar 		const unsigned int num_streams);
3598ce7d32SWenjing Liu uint32_t dp_link_bandwidth_kbps(
3698ce7d32SWenjing Liu 	const struct dc_link *link,
3798ce7d32SWenjing Liu 	const struct dc_link_settings *link_settings);
38*a8b53760SMustapha Ghaddar 
3954618888SWenjing Liu #endif /* __LINK_VALIDATION_H__ */
40