Re: [PATCH 2/2] i2c: mux: demux-pinctrl: add symlinks to the demux device in sysfs
> > + sysfs_create_link(>cur_adap.dev.kobj, >dev->kobj, > > + "demux_device"); > > + sysfs_create_link(>dev->kobj, >cur_adap.dev.kobj, > > + "channel-0"); > > + > > From sysfs.h: > int __must_check sysfs_create_link(...); Darn, right... Will fix!
Re: [PATCH 2/2] i2c: mux: demux-pinctrl: add symlinks to the demux device in sysfs
On 2018-04-30 13:55, Wolfram Sang wrote: > Similar to mux devices, create special symlinks to connect the demuxed > bus with the demux device. > > Signed-off-by: Wolfram Sang> --- > drivers/i2c/muxes/i2c-demux-pinctrl.c | 8 > 1 file changed, 8 insertions(+) > > diff --git a/drivers/i2c/muxes/i2c-demux-pinctrl.c > b/drivers/i2c/muxes/i2c-demux-pinctrl.c > index 035032e20327..d5e7d4aa6ee1 100644 > --- a/drivers/i2c/muxes/i2c-demux-pinctrl.c > +++ b/drivers/i2c/muxes/i2c-demux-pinctrl.c > @@ -116,6 +116,11 @@ static int i2c_demux_activate_master(struct > i2c_demux_pinctrl_priv *priv, u32 ne > if (ret < 0) > goto err_with_put; > > + sysfs_create_link(>cur_adap.dev.kobj, >dev->kobj, > +"demux_device"); > + sysfs_create_link(>dev->kobj, >cur_adap.dev.kobj, > +"channel-0"); > + >From sysfs.h: int __must_check sysfs_create_link(...); Cheers, Peter > return 0; > > err_with_put: > @@ -135,6 +140,9 @@ static int i2c_demux_deactivate_master(struct > i2c_demux_pinctrl_priv *priv) > if (cur < 0) > return 0; > > + sysfs_remove_link(>dev->kobj, "channel-0"); > + sysfs_remove_link(>cur_adap.dev.kobj, "demux_device"); > + > i2c_del_adapter(>cur_adap); > i2c_put_adapter(priv->chan[cur].parent_adap); > >
[PATCH 2/2] i2c: mux: demux-pinctrl: add symlinks to the demux device in sysfs
Similar to mux devices, create special symlinks to connect the demuxed bus with the demux device. Signed-off-by: Wolfram Sang--- drivers/i2c/muxes/i2c-demux-pinctrl.c | 8 1 file changed, 8 insertions(+) diff --git a/drivers/i2c/muxes/i2c-demux-pinctrl.c b/drivers/i2c/muxes/i2c-demux-pinctrl.c index 035032e20327..d5e7d4aa6ee1 100644 --- a/drivers/i2c/muxes/i2c-demux-pinctrl.c +++ b/drivers/i2c/muxes/i2c-demux-pinctrl.c @@ -116,6 +116,11 @@ static int i2c_demux_activate_master(struct i2c_demux_pinctrl_priv *priv, u32 ne if (ret < 0) goto err_with_put; + sysfs_create_link(>cur_adap.dev.kobj, >dev->kobj, + "demux_device"); + sysfs_create_link(>dev->kobj, >cur_adap.dev.kobj, + "channel-0"); + return 0; err_with_put: @@ -135,6 +140,9 @@ static int i2c_demux_deactivate_master(struct i2c_demux_pinctrl_priv *priv) if (cur < 0) return 0; + sysfs_remove_link(>dev->kobj, "channel-0"); + sysfs_remove_link(>cur_adap.dev.kobj, "demux_device"); + i2c_del_adapter(>cur_adap); i2c_put_adapter(priv->chan[cur].parent_adap); -- 2.11.0