Re: [PATCH v1 1/1] drm/mediatek/dp: The register is written with the parsed DTS SSC value.

From: Krzysztof Kozlowski
Date: Wed Apr 03 2024 - 10:56:58 EST


On 03/04/2024 08:41, Krzysztof Kozlowski wrote:
> On 03/04/2024 06:05, Liankun Yang wrote:
>> [Description]
>> Severe screen flickering has been observed on the external display
>> when the DP projection function is used with the market expansion dock.
>>
>
>> + if (!strcmp(mode_name, RG_XTP_GLB_TXPLL_SSC_DELTA_RBR)) {
>> + regmap_update_bits(dp_phy->regs, ssc_reg_offset,
>> + XTP_GLB_TXPLL_SSC_DELTA_RBR_DEFAULT, read_value);
>> + } else if (!strcmp(mode_name, RG_XTP_GLB_TXPLL_SSC_DELTA_HBR)) {
>> + read_value = read_value << 16 | 0x0000;
>> + regmap_update_bits(dp_phy->regs, ssc_reg_offset,
>> + XTP_GLB_TXPLL_SSC_DELTA_HBR_DEFAULT, read_value);
>> + }
>> +
>> + return 0;
>> +}
>> +
>> +static struct device_node *mtk_dp_get_ssc_node(struct phy *phy, struct mtk_dp_phy *dp_phy)
>> +{
>> + struct device_node *mode_node = NULL;
>> +
>> + mode_node = of_find_node_by_name(dp_phy->dev->of_node, SSC_SETTING);
>
> ?!?!
> You have the node, why do you try to find it?
>

Wait, that was brainfuck from my side or -ENOCOFFEE. Ignore.

I still have a question though, where did you document new ABI:
dependency on the node name here?

Also, why you are not going through direct children -
of_get_child_by_name()?

Best regards,
Krzysztof