Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit becd4305 authored by Darron Broad's avatar Darron Broad Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (9336): cx88: always de-alloc frontends on fault condition



De-alloc frontends on fault condition.

Signed-off-by: default avatarDarron Broad <darron@kewl.org>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 878595f6
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -789,7 +789,7 @@ static int dvb_register(struct cx8802_dev *dev)
		if (fe0->dvb.frontend)
			fe0->dvb.frontend->ops.i2c_gate_ctrl = NULL;
		if (attach_xc3028(0x61, dev) < 0)
			return -EINVAL;
			goto frontend_detach;
		break;
	case CX88_BOARD_PCHDTV_HD3000:
		fe0->dvb.frontend = dvb_attach(or51132_attach, &pchdtv_hd3000,
@@ -1058,7 +1058,6 @@ static int dvb_register(struct cx8802_dev *dev)
					goto frontend_detach;
				core->prev_set_voltage = fe0->dvb.frontend->ops.set_voltage;
				fe0->dvb.frontend->ops.set_voltage = tevii_dvbs_set_voltage;

			}
		}
		break;
@@ -1110,10 +1109,7 @@ static int dvb_register(struct cx8802_dev *dev)
		&dev->pci->dev, adapter_nr, mfe_shared);

frontend_detach:
	if (fe0->dvb.frontend) {
		dvb_frontend_detach(fe0->dvb.frontend);
		fe0->dvb.frontend = NULL;
	}
	videobuf_dvb_dealloc_frontends(&dev->frontends);
	return -EINVAL;
}