mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
Merge tag 'topic/phy-compliance-2020-04-08' of git://anongit.freedesktop.org/drm/drm-misc into drm-intel-next-queued
Topic pull request for topic/phy-compliance: - Standardize DP_PHY_TEST_PATTERN name. - Add support for setting/getting test pattern from sink. - Implement DP PHY compliance to i915. From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/efb3d0d9-2cf7-046b-3a9b-2548d086258e@linux.intel.com Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
This commit is contained in:
@@ -701,7 +701,16 @@
|
||||
# define DP_TEST_CRC_SUPPORTED (1 << 5)
|
||||
# define DP_TEST_COUNT_MASK 0xf
|
||||
|
||||
#define DP_TEST_PHY_PATTERN 0x248
|
||||
#define DP_PHY_TEST_PATTERN 0x248
|
||||
# define DP_PHY_TEST_PATTERN_SEL_MASK 0x7
|
||||
# define DP_PHY_TEST_PATTERN_NONE 0x0
|
||||
# define DP_PHY_TEST_PATTERN_D10_2 0x1
|
||||
# define DP_PHY_TEST_PATTERN_ERROR_COUNT 0x2
|
||||
# define DP_PHY_TEST_PATTERN_PRBS7 0x3
|
||||
# define DP_PHY_TEST_PATTERN_80BIT_CUSTOM 0x4
|
||||
# define DP_PHY_TEST_PATTERN_CP2520 0x5
|
||||
|
||||
#define DP_TEST_HBR2_SCRAMBLER_RESET 0x24A
|
||||
#define DP_TEST_80BIT_CUSTOM_PATTERN_7_0 0x250
|
||||
#define DP_TEST_80BIT_CUSTOM_PATTERN_15_8 0x251
|
||||
#define DP_TEST_80BIT_CUSTOM_PATTERN_23_16 0x252
|
||||
@@ -1735,4 +1744,26 @@ static inline void drm_dp_cec_unset_edid(struct drm_dp_aux *aux)
|
||||
|
||||
#endif
|
||||
|
||||
/**
|
||||
* struct drm_dp_phy_test_params - DP Phy Compliance parameters
|
||||
* @link_rate: Requested Link rate from DPCD 0x219
|
||||
* @num_lanes: Number of lanes requested by sing through DPCD 0x220
|
||||
* @phy_pattern: DP Phy test pattern from DPCD 0x248
|
||||
* @hb2_reset: DP HBR2_COMPLIANCE_SCRAMBLER_RESET from DCPD 0x24A and 0x24B
|
||||
* @custom80: DP Test_80BIT_CUSTOM_PATTERN from DPCDs 0x250 through 0x259
|
||||
* @enhanced_frame_cap: flag for enhanced frame capability.
|
||||
*/
|
||||
struct drm_dp_phy_test_params {
|
||||
int link_rate;
|
||||
u8 num_lanes;
|
||||
u8 phy_pattern;
|
||||
u8 hbr2_reset[2];
|
||||
u8 custom80[10];
|
||||
bool enhanced_frame_cap;
|
||||
};
|
||||
|
||||
int drm_dp_get_phy_test_pattern(struct drm_dp_aux *aux,
|
||||
struct drm_dp_phy_test_params *data);
|
||||
int drm_dp_set_phy_test_pattern(struct drm_dp_aux *aux,
|
||||
struct drm_dp_phy_test_params *data, u8 dp_rev);
|
||||
#endif /* _DRM_DP_HELPER_H_ */
|
||||
|
||||
Reference in New Issue
Block a user