On Sun, 2024-10-13 at 00:39 +0100, linux@xxxxxxxxxxx wrote: > From: "Dr. David Alan Gilbert" <linux@xxxxxxxxxxx> > > cx18_reset_ir_gpio() has been unused in tree since 2009 > commit eefe1010a465 ("V4L/DVB (10759): cx18: Convert GPIO connected > functions to act as v4l2_subdevices") > > It has a comment saying it's exported for use by 'lirc_pvr150' but I > don't > see any sign of it in the lirc git, and I see it removed support > for lirc_i2c.c 'Flavors of the Hauppage PVR-150...' in 2014. > The IR Tx functionality of lirc_zilog (aka lirc_pvr150) used this when it decided the Zilog 8051 microcontroller and firmware had wedged itself. If lirc_zilog is gone from staging and lirc_zilog/lirc_pvr150 is gone from out of tree LIRC, then I guess there's no current caller of this function. Removing it prevents any current or future module from bringing the IR chip out of a bad/stuck state via software. So that's the trade off for removing this function. -Andy > Remove it. > > Signed-off-by: Dr. David Alan Gilbert <linux@xxxxxxxxxxx> > --- > drivers/media/pci/cx18/cx18-gpio.c | 15 --------------- > drivers/media/pci/cx18/cx18-gpio.h | 1 - > 2 files changed, 16 deletions(-) > > diff --git a/drivers/media/pci/cx18/cx18-gpio.c > b/drivers/media/pci/cx18/cx18-gpio.c > index c85eb8d25837..485a6cbeb15a 100644 > --- a/drivers/media/pci/cx18/cx18-gpio.c > +++ b/drivers/media/pci/cx18/cx18-gpio.c > @@ -305,21 +305,6 @@ int cx18_gpio_register(struct cx18 *cx, u32 hw) > return v4l2_device_register_subdev(&cx->v4l2_dev, sd); > } > > -void cx18_reset_ir_gpio(void *data) > -{ > - struct cx18 *cx = to_cx18(data); > - > - if (cx->card->gpio_i2c_slave_reset.ir_reset_mask == 0) > - return; > - > - CX18_DEBUG_INFO("Resetting IR microcontroller\n"); > - > - v4l2_subdev_call(&cx->sd_resetctrl, > - core, reset, CX18_GPIO_RESET_Z8F0811); > -} > -EXPORT_SYMBOL(cx18_reset_ir_gpio); > -/* This symbol is exported for use by lirc_pvr150 for the IR-blaster > */ > - > /* Xceive tuner reset function */ > int cx18_reset_tuner_gpio(void *dev, int component, int cmd, int > value) > { > diff --git a/drivers/media/pci/cx18/cx18-gpio.h > b/drivers/media/pci/cx18/cx18-gpio.h > index 0fa4c7ad2286..8d5797dea7f5 100644 > --- a/drivers/media/pci/cx18/cx18-gpio.h > +++ b/drivers/media/pci/cx18/cx18-gpio.h > @@ -17,5 +17,4 @@ enum cx18_gpio_reset_type { > CX18_GPIO_RESET_XC2028 = 2, > }; > > -void cx18_reset_ir_gpio(void *data); > int cx18_reset_tuner_gpio(void *dev, int component, int cmd, int > value);