From 1330e2b3c61ab45fae4ff8f4c49a674c7691a4d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20Fr=C3=B6schle?= Date: Wed, 31 Oct 2012 20:07:47 +0000 Subject: [PATCH] fixed hang in dvi_on() --- BaS_GNU/sources/sysinit.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/BaS_GNU/sources/sysinit.c b/BaS_GNU/sources/sysinit.c index 3d4a457..d06bfde 100644 --- a/BaS_GNU/sources/sysinit.c +++ b/BaS_GNU/sources/sysinit.c @@ -521,7 +521,7 @@ void dvi_on(void) { do { /* disable all i2c interrupt routing targets */ - MCF_I2C_I2ICR &= ~(MCF_I2C_I2ICR_IE | MCF_I2C_I2ICR_RE | MCF_I2C_I2ICR_TE | MCF_I2C_I2ICR_BNBE); + MCF_I2C_I2ICR = 0x0; //~(MCF_I2C_I2ICR_IE | MCF_I2C_I2ICR_RE | MCF_I2C_I2ICR_TE | MCF_I2C_I2ICR_BNBE); /* disable i2c, disable i2c interrupts, slave, recieve, i2c = acknowledge, no repeat start */ MCF_I2C_I2CR = 0x0; @@ -633,7 +633,7 @@ void dvi_on(void) { dummyByte = MCF_I2C_I2DR; // dummy read - } while (receivedByte != 0xbf || num_tries++ < 10); + } while (receivedByte != 0xbf && num_tries++ < 10); if (num_tries >= 10) { xprintf("FAILED!\r\n");