Daniel Scheller writes: > From: Daniel Scheller <d.scheller@xxxxxxx> > > >From smatch: > > drivers/media/pci/ddbridge/ddbridge-core.c:3490 snr_store() info: ignoring unreachable code. > > In fact, the function immediately returns zero, so remove it and update > ddb_attrs_snr[] to not reference it anymore. > > Cc: Ralph Metzler <rjkm@xxxxxxxxxxxxxx> > Signed-off-by: Daniel Scheller <d.scheller@xxxxxxx> > --- > drivers/media/pci/ddbridge/ddbridge-core.c | 27 ++++----------------------- > 1 file changed, 4 insertions(+), 23 deletions(-) > > diff --git a/drivers/media/pci/ddbridge/ddbridge-core.c b/drivers/media/pci/ddbridge/ddbridge-core.c > index 8981795b0819..3756b9961fcd 100644 > --- a/drivers/media/pci/ddbridge/ddbridge-core.c > +++ b/drivers/media/pci/ddbridge/ddbridge-core.c > @@ -3236,25 +3236,6 @@ static ssize_t snr_show(struct device *device, > return sprintf(buf, "%s\n", snr); > } > > - > -static ssize_t snr_store(struct device *device, struct device_attribute *attr, > - const char *buf, size_t count) > -{ > - struct ddb *dev = dev_get_drvdata(device); > - int num = attr->attr.name[3] - 0x30; > - u8 snr[34] = { 0x01, 0x00 }; > - > - return 0; /* NOE: remove completely? */ > - if (count > 31) > - return -EINVAL; > - if (dev->port[num].type >= DDB_TUNER_XO2) > - return -EINVAL; > - memcpy(snr + 2, buf, count); > - i2c_write(&dev->i2c[num].adap, 0x57, snr, 34); > - i2c_write(&dev->i2c[num].adap, 0x50, snr, 34); > - return count; > -} > - > static ssize_t bsnr_show(struct device *device, > struct device_attribute *attr, char *buf) > { > @@ -3394,10 +3375,10 @@ static struct device_attribute ddb_attrs_fan[] = { > }; > > static struct device_attribute ddb_attrs_snr[] = { > - __ATTR(snr0, 0664, snr_show, snr_store), > - __ATTR(snr1, 0664, snr_show, snr_store), > - __ATTR(snr2, 0664, snr_show, snr_store), > - __ATTR(snr3, 0664, snr_show, snr_store), > + __ATTR_MRO(snr0, snr_show), > + __ATTR_MRO(snr1, snr_show), > + __ATTR_MRO(snr2, snr_show), > + __ATTR_MRO(snr3, snr_show), > }; > > static struct device_attribute ddb_attrs_ctemp[] = { > -- > 2.13.0 snr_store was disabled to prevent people from accidentally overwriting serial numbers. Maybe it should be a driver/compile option.