Compare commits

...

4 Commits

Author SHA1 Message Date
Phil Elwell
521b08840e lan78xx: Fix boot-time RTNL warning
lan78xx_set_eee calls phylink_ethtool_set_eee, which WARNs if rtnl_lock
has not been called. This is fine when called via the ethtool_ops
.set_eee entry point, presumably because the lock is already held, but
lan78xx_probe also calls lan78xx_set_eee via lan78xx_phy_init, which
requires an explicit rtnl_lock/unlock pair to avoid the warning.

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
2025-11-28 09:51:04 +00:00
Phil Elwell
ecf040339a overlays: Ensure that defined pin groups are used
In order to prevent confusing problems where pin configuration is not
be applied, an upcoming change to the overlaycheck utility will add a
check that all added pin groups are in some way referenced by the
overlay. Before that can be done, it is necessary to ensure that all
existing overlays pass that test.

This patch modifies some overlays by adding the required "pinctrl-0"
properties, but for others that are just setting GPIOs to inputs and
outputs, where those same GPIOs are declared by <name>-gpios properties,
it is better to drop the pin groups and let the GPIO subsystem set up
the GPIOs as required. Removing this duplication may be helpful in the
future should we ever decide to enable the exclusive GPIO vs pinctrl
locking (.strict in struct pinmux_ops).

See: https://forums.raspberrypi.com/viewtopic.php?t=393742

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
2025-11-28 09:27:34 +00:00
Phil Elwell
1d1126c8d2 overlays: mcp23s17: Fix the whitespace
Fix the whitespace before making any other changes.

Signed-off-by: Phil Elwell <phil@raspberrypi.com>
2025-11-28 09:27:34 +00:00
Mark W
9a83db1e21 Correcting GT928 GPIO configuration for CFA050-PI-M touchscreen
Added missing pinctrl configuration lines which enable pull-up on GPIO26.
2025-11-28 09:27:33 +00:00
14 changed files with 162 additions and 213 deletions

View File

@@ -34,23 +34,10 @@
};
};
fragment@2 {
target = <&gpio>;
__overlay__ {
lowpan0_pins: lowpan0_pins {
brcm,pins = <23 24 25>;
brcm,function = <0 1 1>; /* in out out */
};
};
};
__overrides__ {
interrupt = <&lowpan0>, "interrupts:0",
<&lowpan0_pins>, "brcm,pins:0";
reset = <&lowpan0>, "reset-gpio:4",
<&lowpan0_pins>, "brcm,pins:4";
sleep = <&lowpan0>, "sleep-gpio:4",
<&lowpan0_pins>, "brcm,pins:8";
interrupt = <&lowpan0>, "interrupts:0";
reset = <&lowpan0>, "reset-gpio:4";
sleep = <&lowpan0>, "sleep-gpio:4";
speed = <&lowpan0>, "spi-max-frequency:0";
trim = <&lowpan0>, "xtal-trim.0";
};

View File

@@ -34,16 +34,6 @@
};
};
fragment@2 {
target = <&gpio>;
__overlay__ {
codec_rst: codec-rst {
brcm,pins = <26>;
brcm,function = <BCM2835_FSEL_GPIO_OUT>;
};
};
};
fragment@3 {
target = <&i2c1>;
__overlay__ {

View File

@@ -30,16 +30,6 @@
};
fragment@1 {
target = <&gpio>;
__overlay__ {
chipcap2_pins: chipcap2_pins {
brcm,pins = <4 5 6 26>;
brcm,function = <0 0 0 1>;
};
};
};
fragment@2 {
target-path = "/";
__overlay__ {
chipcap2_reg: chipcap2_reg {
@@ -54,13 +44,9 @@
};
__overrides__ {
ready_pin = <&chipcap2>, "interrupts:0",
<&chipcap2_pins>, "brcm,pins:0";
low_pin = <&chipcap2>, "interrupts:8",
<&chipcap2_pins>, "brcm,pins:4";
high_pin = <&chipcap2>, "interrupts:16",
<&chipcap2_pins>, "brcm,pins:8";
reg_pin = <&chipcap2_reg>, "gpio:4",
<&chipcap2_pins>, "brcm,pins:12";
ready_pin = <&chipcap2>, "interrupts:0";
low_pin = <&chipcap2>, "interrupts:8";
high_pin = <&chipcap2>, "interrupts:16";
reg_pin = <&chipcap2_reg>, "gpio:4";
};
};

View File

@@ -109,6 +109,8 @@
gt928: gt928@5d {
compatible = "goodix,gt928";
reg = <0x5d>;
pinctrl-names = "default";
pinctrl-0 = <&gt928intpins>;
interrupt-parent = <&gpio>;
interrupts = <26 2>; //gpio 26, 2=high-to-low trigger
irq-gpios = <&gpio 26 0>; //gpio 26, 0=active-high

View File

@@ -25,16 +25,6 @@
};
fragment@2 {
target = <&gpio>;
__overlay__ {
codec_rst: codec-rst {
brcm,pins = <26>;
brcm,function = <1>;
};
};
};
fragment@3 {
target = <&i2c1>;
__overlay__ {
#address-cells = <1>;
@@ -58,7 +48,7 @@
};
};
fragment@4 {
fragment@3 {
target = <&sound>;
__overlay__ {
compatible = "osaelectronics,dacberry400";

View File

@@ -176,10 +176,6 @@
brcm,pull = <1>;
};
aic3204_gpio: aic3204_gpio {
brcm,pins = <26>;
};
sc16is752_irq: sc16is752_irq {
brcm,pins = <17>;
brcm,function = <0>;

View File

@@ -16,19 +16,8 @@
};
};
fragment@1 {
target = <&gpio>;
__overlay__ {
power_ctrl_pins: power_ctrl_pins {
brcm,pins = <26>;
brcm,function = <1>; // out
};
};
};
__overrides__ {
gpiopin = <&power_ctrl>,"gpios:4",
<&power_ctrl_pins>,"brcm,pins:0";
gpiopin = <&power_ctrl>,"gpios:4";
active_low = <&power_ctrl>,"gpios:8";
input = <&power_ctrl>,"input?";
export = <&power_ctrl>,"export?";

View File

@@ -91,18 +91,20 @@
target = <&spi0>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s08_00: mcp23s08@0 {
compatible = "microchip,mcp23s08";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi0-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi0-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s08-spi0-0-int-gpio parameter */
pinctrl-0 = <&spi0_0_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -112,18 +114,20 @@
target = <&spi0>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s08_01: mcp23s08@1 {
compatible = "microchip,mcp23s08";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi0-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi0-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s08-spi0-1-int-gpio parameter */
pinctrl-0 = <&spi0_1_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -133,18 +137,20 @@
target = <&spi1>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s08_10: mcp23s08@0 {
compatible = "microchip,mcp23s08";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi1-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi1-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s08-spi1-0-int-gpio parameter */
pinctrl-0 = <&spi1_0_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -154,18 +160,20 @@
target = <&spi1>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s08_11: mcp23s08@1 {
compatible = "microchip,mcp23s08";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi1-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi1-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s08-spi1-1-int-gpio parameter */
pinctrl-0 = <&spi1_1_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -175,18 +183,20 @@
target = <&spi1>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s08_12: mcp23s08@2 {
compatible = "microchip,mcp23s08";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi1-2-present parameter */
reg = <2>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi1-2-present parameter */
reg = <2>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s08-spi1-2-int-gpio parameter */
pinctrl-0 = <&spi1_2_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -196,18 +206,20 @@
target = <&spi2>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s08_20: mcp23s08@0 {
compatible = "microchip,mcp23s08";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi2-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi2-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s08-spi2-0-int-gpio parameter */
pinctrl-0 = <&spi2_0_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -217,18 +229,20 @@
target = <&spi2>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s08_21: mcp23s08@1 {
compatible = "microchip,mcp23s08";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi2-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi2-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s08-spi2-1-int-gpio parameter */
pinctrl-0 = <&spi2_1_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -238,18 +252,20 @@
target = <&spi2>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s08_22: mcp23s08@2 {
compatible = "microchip,mcp23s08";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi2-2-present parameter */
reg = <2>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s08-spi2-2-present parameter */
reg = <2>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s08-spi2-2-int-gpio parameter */
pinctrl-0 = <&spi2_2_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -259,18 +275,20 @@
target = <&spi0>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s17_00: mcp23s17@0 {
compatible = "microchip,mcp23s17";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi0-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi0-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s17-spi0-0-int-gpio parameter */
pinctrl-0 = <&spi0_0_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -280,18 +298,20 @@
target = <&spi0>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s17_01: mcp23s17@1 {
compatible = "microchip,mcp23s17";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi0-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi0-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s17-spi0-1-int-gpio parameter */
pinctrl-0 = <&spi0_1_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -301,18 +321,20 @@
target = <&spi1>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s17_10: mcp23s17@0 {
compatible = "microchip,mcp23s17";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi1-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi1-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s17-spi1-0-int-gpio parameter */
pinctrl-0 = <&spi1_0_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -322,18 +344,20 @@
target = <&spi1>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s17_11: mcp23s17@1 {
compatible = "microchip,mcp23s17";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi1-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi1-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s17-spi1-1-int-gpio parameter */
pinctrl-0 = <&spi1_1_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -343,18 +367,20 @@
target = <&spi1>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s17_12: mcp23s17@2 {
compatible = "microchip,mcp23s17";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi1-2-present parameter */
reg = <2>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi1-2-present parameter */
reg = <2>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s17-spi1-2-int-gpio parameter */
pinctrl-0 = <&spi1_2_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -364,18 +390,20 @@
target = <&spi2>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s17_20: mcp23s17@0 {
compatible = "microchip,mcp23s17";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi2-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi2-0-present parameter */
reg = <0>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s17-spi2-0-int-gpio parameter */
pinctrl-0 = <&spi2_0_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -385,18 +413,20 @@
target = <&spi2>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s17_21: mcp23s17@1 {
compatible = "microchip,mcp23s17";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi2-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi2-1-present parameter */
reg = <1>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s17-spi2-1-int-gpio parameter */
pinctrl-0 = <&spi2_1_int_pins>;
pinctrl-names = "default";
};
};
};
@@ -406,18 +436,20 @@
target = <&spi2>;
__dormant__ {
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;
mcp23s17_22: mcp23s17@2 {
compatible = "microchip,mcp23s17";
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi2-2-present parameter */
reg = <2>;
spi-max-frequency = <500000>;
gpio-controller;
#gpio-cells = <2>;
microchip,spi-present-mask = <0x00>; /* overwritten by mcp23s17-spi2-2-present parameter */
reg = <2>;
spi-max-frequency = <500000>;
status = "okay";
#interrupt-cells=<2>;
interrupts = <0 2>; /* 1st word overwritten by mcp23s17-spi2-2-int-gpio parameter */
pinctrl-0 = <&spi2_2_int_pins>;
pinctrl-names = "default";
};
};
};

View File

@@ -28,17 +28,7 @@
};
};
};
fragment@3 {
target = <&gpio>;
__overlay__ {
power_ctrl_pins: power_ctrl_pins {
brcm,pins = <26>;
brcm,function = <1>; // out
};
};
};
__overrides__ {
poweroff_pin = <&power_ctrl>,"gpios:4",
<&power_ctrl_pins>,"brcm,pins:0";
poweroff_pin = <&power_ctrl>,"gpios:4";
};
};

View File

@@ -50,14 +50,6 @@
fragment@3 {
target = <&gpio>;
__overlay__ {
tinylcd35_pins: tinylcd35_pins {
brcm,pins = <25 24 18>;
brcm,function = <1>; /* out */
};
tinylcd35_ts_pins: tinylcd35_ts_pins {
brcm,pins = <5>;
brcm,function = <0>; /* in */
};
keypad_pins: keypad_pins {
brcm,pins = <4 17 22 23 27>;
brcm,function = <0>; /* in */
@@ -76,10 +68,6 @@
tinylcd35: tinylcd35@0{
compatible = "neosec,tinylcd";
reg = <0>;
pinctrl-names = "default";
pinctrl-0 = <&tinylcd35_pins>,
<&tinylcd35_ts_pins>;
spi-max-frequency = <48000000>;
rotate = <270>;
fps = <20>;
@@ -211,8 +199,7 @@
fps = <&tinylcd35>,"fps:0";
debug = <&tinylcd35>,"debug:0";
touch = <&tinylcd35_ts>,"status";
touchgpio = <&tinylcd35_ts_pins>,"brcm,pins:0",
<&tinylcd35_ts>,"interrupts:0",
touchgpio = <&tinylcd35_ts>,"interrupts:0",
<&tinylcd35_ts>,"pendown-gpio:4";
xohms = <&tinylcd35_ts>,"ti,x-plate-ohms;0";
rtc-pcf = <0>,"=5";

View File

@@ -115,10 +115,6 @@
brcm,function = <1>;
brcm,pull = <1>;
};
aic3204_gpio: aic3204_gpio {
brcm,pins = <26>;
};
};
};

View File

@@ -32,6 +32,8 @@
compatible = "jdi,lt070me05000";
status = "okay";
reg = <0>;
pinctrl-0 = <&lt070me05000_pins>;
pinctrl-names = "default";
reset-gpios = <&gpio 17 1>; // LCD RST
enable-gpios = <&gpio 4 0>; // LCD Enable
dcdc-en-gpios = <&gpio 5 0>; // LCD DC-DC Enable

View File

@@ -12,7 +12,7 @@
target = <&rp1_vec>;
rp1vec_overlay: __overlay__ {
pinctrl-names = "default";
pinctrl-0 = <&rp1vec_ch0pins>, <&rp1vec_ch0pins>;
pinctrl-0 = <&rp1vec_ch0pins &rp1vec_ch0pins>;
};
};

View File

@@ -2935,7 +2935,9 @@ static int lan78xx_phy_init(struct lan78xx_net *dev)
"microchip,tx-lpi-timer",
&edata.tx_lpi_timer))
edata.tx_lpi_timer = 600; /* non-aggressive */
rtnl_lock();
(void)lan78xx_set_eee(dev->net, &edata);
rtnl_unlock();
phy_support_eee(phydev);
}