I am trying to get from Debian10 to Debian13, and it seems the simple config-pin thing has been replaced by compiling your own dts.
One of the things I have to do is create a DTS for PWM2A and PWM2B on Pin P8_45 and P845, on Mode 3 on these pins.
This is the code I made after looking at ../../../include/dt-bindings/pinctrl/am33xx.h
I named it BB-EHRPWM2-P8_45-P8_46.dtso, and compiled it with build_n_install.sh in /opt/source/dtb-6.16.x/
I added
dtb_overlay=BB-EHRPWM2-P8_45-P8_46.dtbo to /boot/uEnv.txt
Another comparable overlays did indeed show that pwm1a and pwm2b work, but this one does not show up in show-pins or in /sys/class/pwm/. Why is that?// SPDX-License-Identifier: GPL-2.0-only
/*
- Copyright (C) 2025 Robert Nelson robertcnelson@gmail.com
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/pinctrl/am33xx.h>
/*
- Helper to show loaded overlays under: /proc/device-tree/chosen/overlays/
*/
&{/chosen} {
overlays {
BB-EHRPWM2-P8_45-P8_46.kernel = TIMESTAMP;
};
};
&ocp {
P8_45_pinmux { status = “disabled”; }; /* P8_45: lcd_data0.gpio2_6 /
P8_46_pinmux { status = “disabled”; }; / P8_46: lcd_data1.gpio2_7 */
};
&am33xx_pinmux {
epwmss2_pins: pinmux_epwmss2_pins {
pinctrl-single,pins = <
AM33XX_PADCONF(AM335X_PIN_LCD_DATA0, PIN_OUTPUT, MUX_MODE3) /* P8_45 (R1) lcd_data0.ehrpwm2A /
AM33XX_PADCONF(AM335X_PIN_LCD_DATA1, PIN_OUTPUT, MUX_MODE3) / P8_46 (R2) lcd_data1.ehrpwm2B */
;
};
};
&epwmss2 {
status = “okay”;
};
&ehrpwm2 {
status = “okay”;
pinctrl-names = “default”;
pinctrl-0 = <&epwmss2_pins>;
};
BB-EHRPWM2-P8_45-P8_46.dtso (905 Bytes)