linux-pwm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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

  reply	other threads:[~2019-01-09  8:25 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20190108100739.GA9046@arthur-bzh>
2019-01-08 22:21 ` Handle pwm with sysfs with recent kernel 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: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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).