From c3839cbade5c56a1a62e50e9f7aab343b47dad9d Mon Sep 17 00:00:00 2001 From: Jasmin Jessich Date: Fri, 3 Mar 2017 00:50:03 +0100 Subject: [PATCH] Activate CAM race condition handler Signed-off-by: Jasmin Jessich --- dvb-core/dvb_ca_en50221.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dvb-core/dvb_ca_en50221.c b/dvb-core/dvb_ca_en50221.c index 3738ff5..b23a9b0 100644 --- a/dvb-core/dvb_ca_en50221.c +++ b/dvb-core/dvb_ca_en50221.c @@ -763,7 +763,7 @@ static int dvb_ca_en50221_write_data(struct dvb_ca_private *ca, int slot, u8 * b status = -EAGAIN; goto exit; } -#if 0 + /* It may need some time for the CAM to settle down, or there might be a race condition between the CAM, writing HC and our last check for DA. This happens, if the CAM asserts DA, just after checking DA before we @@ -781,7 +781,7 @@ static int dvb_ca_en50221_write_data(struct dvb_ca_private *ca, int slot, u8 * b status = -EAGAIN; goto exit; } -#endif + /* send the amount of data */ if ((status = ca->pub->write_cam_control(ca->pub, slot, CTRLIF_SIZE_HIGH, bytes_write >> 8)) != 0) goto exit;