From ae727d36fe9b239caebafb3f65768e0d206b60f8 Mon Sep 17 00:00:00 2001 From: Martin Koegler Date: Mon, 2 Nov 2009 20:24:14 +0100 Subject: [PATCH] Route BCU reset to userspace Signed-off-by: Martin Koegler --- eib-pei16.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/eib-pei16.c b/eib-pei16.c index b17b5b6..017b84f 100644 --- a/eib-pei16.c +++ b/eib-pei16.c @@ -465,6 +465,9 @@ eib_handler (eib_protocol_data * dev, enum eib_reason reason) } if (tmp == 0xA0 && dev->read_pos == 1) { + eib_readbuffer (dev->cdev)[0] = 1; + eib_readbuffer (dev->cdev)[1] = tmp; + eib_read_notify (dev->cdev); do_reset (dev, ERR_800000); // BCU reset break; } @@ -523,7 +526,12 @@ eib_handler (eib_protocol_data * dev, enum eib_reason reason) { // read finished if (eib_readbuffer (dev->cdev)[0] == 0xa0) - EIB_PRINT ("BCU reset"); + { + eib_readbuffer (dev->cdev)[0] = 1; + eib_readbuffer (dev->cdev)[0] = 0xa0; + eib_read_notify (dev->cdev); + EIB_PRINT ("BCU reset"); + } else { dev->reset_count = 0; @@ -608,6 +616,9 @@ eib_handler (eib_protocol_data * dev, enum eib_reason reason) } if (dev->write_pos == 1 && tmp == 0xA0) { + eib_readbuffer (dev->cdev)[1] = tmp; + eib_readbuffer (dev->cdev)[0] = 1; + eib_read_notify (dev->cdev); do_reset (dev, ERR_800000); // BCU reset break; } -- 2.11.4.GIT