[d-kernel] [PATCH] [p10/std-def] phy: realtek: leds configuration for RTL8211f
Alexey Sheplyakov
asheplyakov на basealt.ru
Пт Окт 14 12:35:47 MSK 2022
Здравствуйте!
On Fri, Oct 14, 2022 at 05:02:05AM +0300, Vitaly Chikunov wrote:
> Обратил внимание на "Если мы хотим этот патч в std-def/un-def -
> требуется тщательное тестирование на регрессии на x86_64 системах."
Замечание касается изначальной версии патча: https://my.basealt.space/attachments/140630
Патч, который я прислал, ничего не меняет на x86{,_64}:
> Configure leds according to 'realtek,led-mode', 'realtek,led[0-2]-control'
> knobs (specified in DTB). Note that *all* of these parameters must be
> set in DTB for this to work.
На x86{,_64} нет device tree, параметрам неоткуда взяться, и никаких
изменений нет:
> +static void rtl8211f_config_led(struct phy_device *phydev)
> +{
> + struct device *dev = &phydev->mdio.dev;
> + struct device_node *of_node = dev->of_node;
> + u16 val;
> + u32 led_mode, led0_ctrl, led1_ctrl, led2_ctrl;
> + int ret;
> +
> + ret = of_property_read_u32(of_node, "realtek,led-mode", &led_mode);
> + if (ret < 0) {
> + dev_dbg(dev, "refusing to reconfigure leds: no 'realtek,led-mode' in dtb\n");
> + return;
> + }
dev->of_node == NULL, поэтому of_property_read_u32 вернёт ошибку, и
rtl8211f_config_led ничего не делает с устройством.
Более того, даже на системе с device tree нужно, чтобы в описании phy
присутствовали все 4 параметра "realtek,led-mode", "realtek,led0-control",
"realtek,led1-control", "realtek,led2-control".
Всего доброго,
Алексей
Подробная информация о списке рассылки devel-kernel