Message ID | 20240207172820.478332-1-nmorrisson@phytec.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: dts: ti: am62-phyboard-lyra: Add overlay to enable a GPIO fan | expand |
On 2/7/24 11:28 AM, Nathan Morrisson wrote: > The phyBOARD-Lyra has a GPIO fan header. This overlay enables the fan > header and sets the fan to turn on at 65C. > > Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com> > --- > arch/arm64/boot/dts/ti/Makefile | 1 + > .../ti/k3-am62-phyboard-lyra-gpio-fan.dtso | 51 +++++++++++++++++++ > 2 files changed, 52 insertions(+) > create mode 100644 arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > > diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile > index 52c1dc910308..379fb4f31a1f 100644 > --- a/arch/arm64/boot/dts/ti/Makefile > +++ b/arch/arm64/boot/dts/ti/Makefile > @@ -23,6 +23,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev.dtb > dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-mallow.dtb > dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-yavia.dtb > dtb-$(CONFIG_ARCH_K3) += k3-am62-lp-sk.dtb > +dtb-$(CONFIG_ARCH_K3) += k3-am62-phyboard-lyra-gpio-fan.dtbo Why not call this k3-am625-phyboard-lyra-gpio-fan.dtbo to match the name of the base board it applies to better? Andrew > > # Boards with AM62Ax SoC > dtb-$(CONFIG_ARCH_K3) += k3-am62a7-sk.dtb > diff --git a/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > new file mode 100644 > index 000000000000..9c05748bdd9d > --- /dev/null > +++ b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > @@ -0,0 +1,51 @@ > +// SPDX-License-Identifier: GPL-2.0-only OR MIT > +/* > + * Copyright (C) 2024 PHYTEC America LLC > + * Author: Garrett Giordano <ggiordano@phytec.com> > + */ > + > +/dts-v1/; > +/plugin/; > + > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/thermal/thermal.h> > +#include "k3-pinctrl.h" > + > +&{/} { > + fan: gpio-fan { > + compatible = "gpio-fan"; > + gpio-fan,speed-map = <0 0 8600 1>; > + gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>; > + #cooling-cells = <2>; > + pinctrl-names = "default"; > + pinctrl-0 = <&gpio_fan_pins_default>; > + status = "okay"; > + }; > +}; > + > +&main_pmx0 { > + gpio_fan_pins_default: gpio-fan-default-pins { > + pinctrl-single,pins = < > + AM62X_IOPAD(0x0a4, PIN_OUTPUT, 7) /* (M22) GPMC0_DIR.GPIO0_40 */ > + >; > + }; > +}; > + > +&thermal_zones { > + main0_thermal: main0-thermal { > + trips { > + main0_thermal_trip0: main0-thermal-trip { > + temperature = <65000>; /* millicelsius */ > + hysteresis = <2000>; /* millicelsius */ > + type = "active"; > + }; > + }; > + > + cooling-maps { > + map0 { > + trip = <&main0_thermal_trip0>; > + cooling-device = <&fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; > + }; > + }; > + }; > +};
Hi Andrew, Am 07.02.24 um 23:20 schrieb Andrew Davis: > On 2/7/24 11:28 AM, Nathan Morrisson wrote: >> The phyBOARD-Lyra has a GPIO fan header. This overlay enables the fan >> header and sets the fan to turn on at 65C. >> >> Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com> >> --- >> arch/arm64/boot/dts/ti/Makefile | 1 + >> .../ti/k3-am62-phyboard-lyra-gpio-fan.dtso | 51 +++++++++++++++++++ >> 2 files changed, 52 insertions(+) >> create mode 100644 >> arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso >> >> diff --git a/arch/arm64/boot/dts/ti/Makefile >> b/arch/arm64/boot/dts/ti/Makefile >> index 52c1dc910308..379fb4f31a1f 100644 >> --- a/arch/arm64/boot/dts/ti/Makefile >> +++ b/arch/arm64/boot/dts/ti/Makefile >> @@ -23,6 +23,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev.dtb >> dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-mallow.dtb >> dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-yavia.dtb >> dtb-$(CONFIG_ARCH_K3) += k3-am62-lp-sk.dtb >> +dtb-$(CONFIG_ARCH_K3) += k3-am62-phyboard-lyra-gpio-fan.dtbo > > Why not call this k3-am625-phyboard-lyra-gpio-fan.dtbo to match the > name of the base board it applies to better? We are able to reuse this overlay for different SoMs (am625 and am62a) that are using the same carrier board (lyra). Regards, Wadim > > Andrew > >> # Boards with AM62Ax SoC >> dtb-$(CONFIG_ARCH_K3) += k3-am62a7-sk.dtb >> diff --git >> a/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso >> b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso >> new file mode 100644 >> index 000000000000..9c05748bdd9d >> --- /dev/null >> +++ b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso >> @@ -0,0 +1,51 @@ >> +// SPDX-License-Identifier: GPL-2.0-only OR MIT >> +/* >> + * Copyright (C) 2024 PHYTEC America LLC >> + * Author: Garrett Giordano <ggiordano@phytec.com> >> + */ >> + >> +/dts-v1/; >> +/plugin/; >> + >> +#include <dt-bindings/gpio/gpio.h> >> +#include <dt-bindings/thermal/thermal.h> >> +#include "k3-pinctrl.h" >> + >> +&{/} { >> + fan: gpio-fan { >> + compatible = "gpio-fan"; >> + gpio-fan,speed-map = <0 0 8600 1>; >> + gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>; >> + #cooling-cells = <2>; >> + pinctrl-names = "default"; >> + pinctrl-0 = <&gpio_fan_pins_default>; >> + status = "okay"; >> + }; >> +}; >> + >> +&main_pmx0 { >> + gpio_fan_pins_default: gpio-fan-default-pins { >> + pinctrl-single,pins = < >> + AM62X_IOPAD(0x0a4, PIN_OUTPUT, 7) /* (M22) >> GPMC0_DIR.GPIO0_40 */ >> + >; >> + }; >> +}; >> + >> +&thermal_zones { >> + main0_thermal: main0-thermal { >> + trips { >> + main0_thermal_trip0: main0-thermal-trip { >> + temperature = <65000>; /* millicelsius */ >> + hysteresis = <2000>; /* millicelsius */ >> + type = "active"; >> + }; >> + }; >> + >> + cooling-maps { >> + map0 { >> + trip = <&main0_thermal_trip0>; >> + cooling-device = <&fan THERMAL_NO_LIMIT >> THERMAL_NO_LIMIT>; >> + }; >> + }; >> + }; >> +}; > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Hi Nathan, Thanks for the patch. On Feb 07, 2024 at 09:28:20 -0800, Nathan Morrisson wrote: > The phyBOARD-Lyra has a GPIO fan header. This overlay enables the fan > header and sets the fan to turn on at 65C. > > Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com> > --- > arch/arm64/boot/dts/ti/Makefile | 1 + > .../ti/k3-am62-phyboard-lyra-gpio-fan.dtso | 51 +++++++++++++++++++ > 2 files changed, 52 insertions(+) > create mode 100644 arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > > diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile > index 52c1dc910308..379fb4f31a1f 100644 > --- a/arch/arm64/boot/dts/ti/Makefile > +++ b/arch/arm64/boot/dts/ti/Makefile > @@ -23,6 +23,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev.dtb > dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-mallow.dtb > dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-yavia.dtb > dtb-$(CONFIG_ARCH_K3) += k3-am62-lp-sk.dtb > +dtb-$(CONFIG_ARCH_K3) += k3-am62-phyboard-lyra-gpio-fan.dtbo You can also add a compile time test, to check if this applies cleanly on your phyboard base DTB. Please see the "Build time test only, enabled by CONFIG_OF_ALL_DTBS" section below in this file. > > # Boards with AM62Ax SoC > dtb-$(CONFIG_ARCH_K3) += k3-am62a7-sk.dtb > diff --git a/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > new file mode 100644 > index 000000000000..9c05748bdd9d > --- /dev/null > +++ b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > @@ -0,0 +1,51 @@ > +// SPDX-License-Identifier: GPL-2.0-only OR MIT > +/* > + * Copyright (C) 2024 PHYTEC America LLC > + * Author: Garrett Giordano <ggiordano@phytec.com> > + */ > + > +/dts-v1/; > +/plugin/; > + > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/thermal/thermal.h> > +#include "k3-pinctrl.h" > + > +&{/} { > + fan: gpio-fan { > + compatible = "gpio-fan"; > + gpio-fan,speed-map = <0 0 8600 1>; > + gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>; > + #cooling-cells = <2>; > + pinctrl-names = "default"; > + pinctrl-0 = <&gpio_fan_pins_default>; > + status = "okay"; > + }; > +}; > + > +&main_pmx0 { > + gpio_fan_pins_default: gpio-fan-default-pins { > + pinctrl-single,pins = < > + AM62X_IOPAD(0x0a4, PIN_OUTPUT, 7) /* (M22) GPMC0_DIR.GPIO0_40 */ > + >; > + }; > +}; > + > +&thermal_zones { > + main0_thermal: main0-thermal { > + trips { > + main0_thermal_trip0: main0-thermal-trip { > + temperature = <65000>; /* millicelsius */ > + hysteresis = <2000>; /* millicelsius */ > + type = "active"; > + }; > + }; > + > + cooling-maps { > + map0 { > + trip = <&main0_thermal_trip0>; > + cooling-device = <&fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; > + }; > + }; > + }; > +}; > -- > 2.25.1 >
Hi Wadim, On Feb 08, 2024 at 06:57:54 +0100, Wadim Egorov wrote: > Hi Andrew, > > Am 07.02.24 um 23:20 schrieb Andrew Davis: > > On 2/7/24 11:28 AM, Nathan Morrisson wrote: > > > The phyBOARD-Lyra has a GPIO fan header. This overlay enables the fan > > > header and sets the fan to turn on at 65C. > > > > > > Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com> > > > --- > > > arch/arm64/boot/dts/ti/Makefile | 1 + > > > .../ti/k3-am62-phyboard-lyra-gpio-fan.dtso | 51 +++++++++++++++++++ > > > 2 files changed, 52 insertions(+) > > > create mode 100644 > > > arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > > > > > > diff --git a/arch/arm64/boot/dts/ti/Makefile > > > b/arch/arm64/boot/dts/ti/Makefile > > > index 52c1dc910308..379fb4f31a1f 100644 > > > --- a/arch/arm64/boot/dts/ti/Makefile > > > +++ b/arch/arm64/boot/dts/ti/Makefile > > > @@ -23,6 +23,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev.dtb > > > dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-mallow.dtb > > > dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-yavia.dtb > > > dtb-$(CONFIG_ARCH_K3) += k3-am62-lp-sk.dtb > > > +dtb-$(CONFIG_ARCH_K3) += k3-am62-phyboard-lyra-gpio-fan.dtbo > > > > Why not call this k3-am625-phyboard-lyra-gpio-fan.dtbo to match the > > name of the base board it applies to better? > > We are able to reuse this overlay for different SoMs (am625 and am62a) that > are using the same carrier board (lyra). In that case do you mind calling it k3-am62x-phyboard-*? It would match the existing convention we have for camera sensor overlays that can be applied on SK-AM62, SK-AM62A, SK-AM62P etc. > > Regards, > Wadim > > > > > > Andrew > > > > > # Boards with AM62Ax SoC > > > dtb-$(CONFIG_ARCH_K3) += k3-am62a7-sk.dtb > > > diff --git > > > a/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > > > b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > > > new file mode 100644 > > > index 000000000000..9c05748bdd9d > > > --- /dev/null > > > +++ b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso > > > @@ -0,0 +1,51 @@ > > > +// SPDX-License-Identifier: GPL-2.0-only OR MIT > > > +/* > > > + * Copyright (C) 2024 PHYTEC America LLC > > > + * Author: Garrett Giordano <ggiordano@phytec.com> > > > + */ > > > + > > > +/dts-v1/; > > > +/plugin/; > > > + > > > +#include <dt-bindings/gpio/gpio.h> > > > +#include <dt-bindings/thermal/thermal.h> > > > +#include "k3-pinctrl.h" > > > + > > > +&{/} { > > > + fan: gpio-fan { > > > + compatible = "gpio-fan"; > > > + gpio-fan,speed-map = <0 0 8600 1>; > > > + gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>; > > > + #cooling-cells = <2>; > > > + pinctrl-names = "default"; > > > + pinctrl-0 = <&gpio_fan_pins_default>; > > > + status = "okay"; > > > + }; > > > +}; > > > + > > > +&main_pmx0 { > > > + gpio_fan_pins_default: gpio-fan-default-pins { > > > + pinctrl-single,pins = < > > > + AM62X_IOPAD(0x0a4, PIN_OUTPUT, 7) /* (M22) > > > GPMC0_DIR.GPIO0_40 */ > > > + >; > > > + }; > > > +}; > > > + > > > +&thermal_zones { > > > + main0_thermal: main0-thermal { > > > + trips { > > > + main0_thermal_trip0: main0-thermal-trip { > > > + temperature = <65000>; /* millicelsius */ > > > + hysteresis = <2000>; /* millicelsius */ > > > + type = "active"; > > > + }; > > > + }; > > > + > > > + cooling-maps { > > > + map0 { > > > + trip = <&main0_thermal_trip0>; > > > + cooling-device = <&fan THERMAL_NO_LIMIT > > > THERMAL_NO_LIMIT>; > > > + }; > > > + }; > > > + }; > > > +}; > > > > _______________________________________________ > > linux-arm-kernel mailing list > > linux-arm-kernel@lists.infradead.org > > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile index 52c1dc910308..379fb4f31a1f 100644 --- a/arch/arm64/boot/dts/ti/Makefile +++ b/arch/arm64/boot/dts/ti/Makefile @@ -23,6 +23,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-mallow.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-yavia.dtb dtb-$(CONFIG_ARCH_K3) += k3-am62-lp-sk.dtb +dtb-$(CONFIG_ARCH_K3) += k3-am62-phyboard-lyra-gpio-fan.dtbo # Boards with AM62Ax SoC dtb-$(CONFIG_ARCH_K3) += k3-am62a7-sk.dtb diff --git a/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso new file mode 100644 index 000000000000..9c05748bdd9d --- /dev/null +++ b/arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso @@ -0,0 +1,51 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +/* + * Copyright (C) 2024 PHYTEC America LLC + * Author: Garrett Giordano <ggiordano@phytec.com> + */ + +/dts-v1/; +/plugin/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/thermal/thermal.h> +#include "k3-pinctrl.h" + +&{/} { + fan: gpio-fan { + compatible = "gpio-fan"; + gpio-fan,speed-map = <0 0 8600 1>; + gpios = <&main_gpio0 40 GPIO_ACTIVE_LOW>; + #cooling-cells = <2>; + pinctrl-names = "default"; + pinctrl-0 = <&gpio_fan_pins_default>; + status = "okay"; + }; +}; + +&main_pmx0 { + gpio_fan_pins_default: gpio-fan-default-pins { + pinctrl-single,pins = < + AM62X_IOPAD(0x0a4, PIN_OUTPUT, 7) /* (M22) GPMC0_DIR.GPIO0_40 */ + >; + }; +}; + +&thermal_zones { + main0_thermal: main0-thermal { + trips { + main0_thermal_trip0: main0-thermal-trip { + temperature = <65000>; /* millicelsius */ + hysteresis = <2000>; /* millicelsius */ + type = "active"; + }; + }; + + cooling-maps { + map0 { + trip = <&main0_thermal_trip0>; + cooling-device = <&fan THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + }; + }; + }; +};
The phyBOARD-Lyra has a GPIO fan header. This overlay enables the fan header and sets the fan to turn on at 65C. Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com> --- arch/arm64/boot/dts/ti/Makefile | 1 + .../ti/k3-am62-phyboard-lyra-gpio-fan.dtso | 51 +++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 arch/arm64/boot/dts/ti/k3-am62-phyboard-lyra-gpio-fan.dtso