Commit 12081a25 authored by Daniel Scheller's avatar Daniel Scheller Committed by Mauro Carvalho Chehab

media: ddbridge: move CI detach code to ddbridge-ci.c

Move the CI teardown code to ddbridge-ci.c where everything else related
to CI hardware lives.

Cc: Ralph Metzler <rjkm@metzlerbros.de>
Signed-off-by: default avatarDaniel Scheller <d.scheller@gmx.net>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent ae494328
...@@ -346,3 +346,14 @@ int ddb_ci_attach(struct ddb_port *port, u32 bitrate) ...@@ -346,3 +346,14 @@ int ddb_ci_attach(struct ddb_port *port, u32 bitrate)
dvb_ca_en50221_init(port->dvb[0].adap, port->en, 0, 1); dvb_ca_en50221_init(port->dvb[0].adap, port->en, 0, 1);
return 0; return 0;
} }
void ddb_ci_detach(struct ddb_port *port)
{
if (port->dvb[0].dev)
dvb_unregister_device(port->dvb[0].dev);
if (port->en) {
dvb_ca_en50221_release(port->en);
kfree(port->en->data);
port->en = NULL;
}
}
...@@ -26,5 +26,6 @@ ...@@ -26,5 +26,6 @@
/******************************************************************************/ /******************************************************************************/
int ddb_ci_attach(struct ddb_port *port, u32 bitrate); int ddb_ci_attach(struct ddb_port *port, u32 bitrate);
void ddb_ci_detach(struct ddb_port *port);
#endif /* __DDBRIDGE_CI_H__ */ #endif /* __DDBRIDGE_CI_H__ */
...@@ -2016,13 +2016,7 @@ void ddb_ports_detach(struct ddb *dev) ...@@ -2016,13 +2016,7 @@ void ddb_ports_detach(struct ddb *dev)
break; break;
case DDB_PORT_CI: case DDB_PORT_CI:
case DDB_PORT_LOOP: case DDB_PORT_LOOP:
if (port->dvb[0].dev) ddb_ci_detach(port);
dvb_unregister_device(port->dvb[0].dev);
if (port->en) {
dvb_ca_en50221_release(port->en);
kfree(port->en->data);
port->en = NULL;
}
break; break;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment