On Wed, 2024-04-03 at 16:56 +0200, Krzysztof Kozlowski wrote: Dear Krzysztof:
The dp_phy device has already been registered through the mtk_dp_register_phy function in the mtk_dp.c file, so it cannot be redefined in the dts. Avoid using of_get_child_by_name for this purpose. To find the node name, utilize of_find_node_by_name since it has already been registered. Best regards, Liankun Yang External email : Please do not click links or open attachments until you have verified the sender or the content. 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