From: Tomi Valkeinen Date: Fri, 9 Apr 2010 10:20:57 +0000 (+0300) Subject: OMAP: DSS2: DSI: handle error in synchronous write X-Git-Tag: firefly_0821_release~9833^2~1222^2~46 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b63ac1e31422077bed8257a519c6668f8868ed2b;p=firefly-linux-kernel-4.4.55.git OMAP: DSS2: DSI: handle error in synchronous write Check if the peripheral answered something, and if so, dump the data and return an error. Signed-off-by: Tomi Valkeinen --- diff --git a/drivers/video/omap2/dss/dsi.c b/drivers/video/omap2/dss/dsi.c index 767f6fb2bdfa..5b6217674559 100644 --- a/drivers/video/omap2/dss/dsi.c +++ b/drivers/video/omap2/dss/dsi.c @@ -2089,6 +2089,13 @@ int dsi_vc_dcs_write(int channel, u8 *data, int len) if (r) goto err; + if (REG_GET(DSI_VC_CTRL(channel), 20, 20)) { /* RX_FIFO_NOT_EMPTY */ + DSSERR("rx fifo not empty after write, dumping data:\n"); + dsi_vc_flush_receive_data(channel); + r = -EIO; + goto err; + } + return 0; err: DSSERR("dsi_vc_dcs_write(ch %d, cmd 0x%02x, len %d) failed\n",