From: "Lothar Waßmann" <LW@KARO-electronics.de>
To: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: linux-pwm@vger.kernel.org,
Arthur LAMBERT <lambertarthur22@gmail.com>,
linux-arm-kernel@lists.infradead.org
Subject: Re: Handle pwm with sysfs with recent kernel
Date: Wed, 9 Jan 2019 09:25:31 +0100 [thread overview]
Message-ID: <20190109092531.71cf52c8@karo-electronics.de> (raw)
In-Reply-To: <20190108222102.hwv5oekspifhj7bh@pengutronix.de>
Hi,
On Tue, 8 Jan 2019 23:21:02 +0100 Uwe Kleine-König wrote:
> [Cc: += linux-pwm list]
>
> Hello Arthur,
>
> On Tue, Jan 08, 2019 at 11:07:39AM +0100, Arthur LAMBERT wrote:
> > I am trying to update my kernel bsp from v4.1.X to v4.19.8 but I have some regressions
> > when I try to use pwm through sysfs from userspace. I have three pwm declared as
> > follow in my device tree :
> >
> > leds {
> > compatible = "pwm-leds";
> > ledred {
> > pwms = <&pwm1>;
> > label = "red";
> > linux,default-trigger = "none";
> > default-state = "on";
> > };
> >
> > ledblue {
> > pwms = <&pwm5>;
> > label = "blue";
> > linux,default-trigger = "none";
> > default-state = "on";
> > };
> >
> > ledgreen {
> > pwms = <&pwm6>;
> > label = "green";
> > linux,default-trigger = "none";
> > default-state = "on";
> > };
> > };
> >
> > First I have an issue with duplicate name :
> > sysfs: cannot create duplicate filename '/class/pwm/pwm0'
> > CPU: 0 PID: 653 Comm: XXXX
> > Hardware name: Freescale i.MX6 Ultralite (Device Tree)
> > [<8010dda8>] (unwind_backtrace) from [<8010b468>] (show_stack+0x10/0x14)
> > [<8010b468>] (show_stack) from [<8025ef0c>] (sysfs_warn_dup+0x58/0x64)
> > [<8025ef0c>] (sysfs_warn_dup) from [<8025f200>] (sysfs_do_create_link_sd+0xd4/0xd8)
> > [<8025f200>] (sysfs_do_create_link_sd) from [<80458d6c>] (device_add+0x1ec/0x5d4)
> > [<80458d6c>] (device_add) from [<8040b5a8>] (export_store+0xfc/0x17c)
> > [<8040b5a8>] (export_store) from [<80456904>] (dev_attr_store+0x18/0x24)
> > [<80456904>] (dev_attr_store) from [<8025e604>] (sysfs_kf_write+0x44/0x48)
> > [<8025e604>] (sysfs_kf_write) from [<8025dcb0>] (kernfs_fop_write+0xe8/0x1d0)
> > [<8025dcb0>] (kernfs_fop_write) from [<801eaaf8>] (__vfs_write+0x28/0x144)
> > [<801eaaf8>] (__vfs_write) from [<801ead88>] (vfs_write+0xa4/0x164)
> > [<801ead88>] (vfs_write) from [<801eaf54>] (ksys_write+0x40/0x94)
> > [<801eaf54>] (ksys_write) from [<80101000>] (ret_fast_syscall+0x0
> >
> > I was able to fix it by revert a patch : https://patchwork.kernel.org/patch/9971821/
> > It is normal that this revert patch is not currently apply on last 4.19.X tag (last one
> > seems to be 4.19.13)
> >
> > Then I have another issue when I try to enable my pwm :
> >
> > # ls /sys/class/pwm/
> > pwmchip0 pwmchip2 pwmchip4 pwmchip6
> > pwmchip1 pwmchip3 pwmchip5 pwmchip7
> > # echo 0 > /sys/class/pwm/pwmchip0/export
> > # echo 1 > /sys/class/pwm/pwmchip0/pwm0/enable
> > -sh: write error: Invalid argument
>
> Just a guess: did you check that /sys/class/pwm/pwmchip0/pwm0/enable
> actually exists?
>
If not, the error message would be 'No such file or directory' rather
than "Invalid argument".
> > Is there a new way to handle pwm in recent kernel ? My old process is
> > now deprecated or something ?
>
> Not sure what you want to achive and if pwmchip0/pwm0 is one of the pwms
> used in your dts snipped above. If the pwm is in use, don't expect it to
> be controllable via sysfs.
>
If it were in use, he should get a 'Device or resource busy' error when
trying to export it.
Lothar Waßmann
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2019-01-09 8:25 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-08 10:07 Handle pwm with sysfs with recent kernel Arthur LAMBERT
2019-01-08 22:21 ` Uwe Kleine-König
2019-01-08 22:21 ` Uwe Kleine-König
2019-01-09 8:25 ` Lothar Waßmann [this message]
2019-01-09 9:20 ` Uwe Kleine-König
2019-01-09 9:20 ` Uwe Kleine-König
2019-01-09 9:26 ` Arthur LAMBERT
2019-01-09 9:26 ` Arthur LAMBERT
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190109092531.71cf52c8@karo-electronics.de \
--to=lw@karo-electronics.de \
--cc=lambertarthur22@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-pwm@vger.kernel.org \
--cc=u.kleine-koenig@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.