Эх сурвалжийг харах

V4L/DVB (4723): Bugfix: Select the correct cx8802_dev when enumerating by CX88_MPEG_type

A bug in cx8802_get_driver() meant that in multiboard environments, when testing
frontends on the non primary board, the incorrect device was returned resulting
in "Unsupported value in .mpeg.." messages. Depending on the electrical design
of the hardware (serial, parallel, rising/falling edge detect), transport would
still be delivered and the problem went unnoticed.
This patch ensures the correct instance of cx8802_dev is returned.

Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Steven Toth 18 жил өмнө
parent
commit
7343826370

+ 2 - 0
drivers/media/video/cx88/cx88-mpeg.c

@@ -572,6 +572,8 @@ struct cx8802_driver * cx8802_get_driver(struct cx8802_dev *dev, enum cx88_board
 
 	list_for_each(list,&cx8802_devlist) {
 		h = list_entry(list, struct cx8802_dev, devlist);
+		if (h != dev)
+			continue;
 
 		list_for_each(list2, &h->drvlist.devlist) {
 			d = list_entry(list2, struct cx8802_driver, devlist);