From 0f47ffe0e429c1457e16fddb5f27abc9bf802535 Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Fri, 2 Jul 2010 06:00:00 +0000 Subject: AMS SoC's: Some register bit changes need interrupt protection: timer API and CGU_PERI. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27236 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/as3525/ascodec-as3525.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'firmware/target/arm/as3525/ascodec-as3525.c') diff --git a/firmware/target/arm/as3525/ascodec-as3525.c b/firmware/target/arm/as3525/ascodec-as3525.c index ca77be32a4..822d48e241 100644 --- a/firmware/target/arm/as3525/ascodec-as3525.c +++ b/firmware/target/arm/as3525/ascodec-as3525.c @@ -160,7 +160,7 @@ static void ascodec_finish_req(struct ascodec_request *req) */ while (i2c_busy()); - /* disable clock */ + /* disable clock - already in IRQ context */ CGU_PERI &= ~CGU_I2C_AUDIO_MASTER_CLOCK_ENABLE; req->status = 1; @@ -205,7 +205,7 @@ static void ascodec_start_req(struct ascodec_request *req) int unmask = 0; /* enable clock */ - CGU_PERI |= CGU_I2C_AUDIO_MASTER_CLOCK_ENABLE; + bitset32(&CGU_PERI, CGU_I2C_AUDIO_MASTER_CLOCK_ENABLE); /* start transfer */ I2C2_SADDR = req->index; @@ -266,7 +266,7 @@ void ascodec_init(void) wakeup_init(&adc_wkup); /* enable clock */ - CGU_PERI |= CGU_I2C_AUDIO_MASTER_CLOCK_ENABLE; + bitset32(&CGU_PERI, CGU_I2C_AUDIO_MASTER_CLOCK_ENABLE); /* prescaler for i2c clock */ prescaler = AS3525_I2C_PRESCALER; -- cgit v1.2.3