From 2b6dfdb34e8e750528b91276c504f1664dfdef4c Mon Sep 17 00:00:00 2001 From: Marcin Bukat Date: Mon, 17 Dec 2012 08:44:09 +0100 Subject: rk27xx: substitute magic constants with meaningful names for clock gating Change-Id: I6c66c7496db3db78e5c959414464826134dbe200 --- firmware/export/rk27xx.h | 32 +++++++++++++++++++++++++++ firmware/target/arm/rk27xx/adc-rk27xx.c | 4 ++-- firmware/target/arm/rk27xx/backlight-rk27xx.c | 4 ++-- firmware/target/arm/rk27xx/i2c-rk27xx.c | 12 +++++----- firmware/target/arm/rk27xx/kernel-rk27xx.c | 2 +- firmware/target/arm/rk27xx/pcm-rk27xx.c | 9 ++++---- firmware/target/arm/rk27xx/sd-rk27xx.c | 6 ++--- firmware/target/arm/rk27xx/system-rk27xx.c | 30 ++++++++++++------------- firmware/target/arm/rk27xx/usb-drv-rk27xx.c | 2 +- 9 files changed, 66 insertions(+), 35 deletions(-) diff --git a/firmware/export/rk27xx.h b/firmware/export/rk27xx.h index 3ca2bc089d..6fb69d46c1 100644 --- a/firmware/export/rk27xx.h +++ b/firmware/export/rk27xx.h @@ -124,6 +124,38 @@ #define SCU_PLLCON3 (*(volatile unsigned long *)(APB0_SCU + 0x10)) #define SCU_DIVCON1 (*(volatile unsigned long *)(APB0_SCU + 0x14)) #define SCU_CLKCFG (*(volatile unsigned long *)(APB0_SCU + 0x18)) +#define CLKCFG_OTP (1<<0) +#define CLKCFG_DSP (1<<1) +#define CLKCFG_SDRAM (1<<2) +#define CLKCFG_HDMA (1<<3) +#define CLKCFG_DWDMA (1<<4) +#define CLKCFG_UHC (1<<5) +#define CLKCFG_UDC (1<<6) +/* 7 - 8 reserved */ +#define CLKCFG_NAND (1<<9) +#define CLKCFG_A2A (1<<10) +#define CLKCFG_SRAM (1<<11) +#define CLKCFG_HCLK_LCDC (1<<12) +#define CLKCFG_LCDC (1<<13) +#define CLKCFG_HCLK_VIP (1<<14) +#define CLKCFG_VIP (1<<15) +#define CLKCFG_I2S (1<<16) +#define CLKCFG_PCLK_I2S (1<<17) +#define CLKCFG_UART0 (1<<18) +#define CLKCFG_UART1 (1<<19) +#define CLKCFG_I2C (1<<20) +#define CLKCFG_SPI (1<<21) +#define CLKCFG_SD (1<<22) +#define CLKCFG_PCLK_LSADC (1<<23) +#define CLKCFG_LSADC (1<<24) +#define CLKCFG_HCLK_HSADC (1<<25) +#define CLKCFG_HSADC (1<<26) +#define CLKCFG_GPIO (1<<27) +#define CLKCFG_TIMER (1<<28) +#define CLKCFG_PWM (1<<29) +#define CLKCFG_RTC (1<<30) +#define CLKCFG_WDT (1<<31) + #define SCU_RSTCFG (*(volatile unsigned long *)(APB0_SCU + 0x1C)) #define SCU_PWM (*(volatile unsigned long *)(APB0_SCU + 0x20)) #define SCU_CPUPD (*(volatile unsigned long *)(APB0_SCU + 0x24)) diff --git a/firmware/target/arm/rk27xx/adc-rk27xx.c b/firmware/target/arm/rk27xx/adc-rk27xx.c index 48fab390e3..ff4ddcd797 100644 --- a/firmware/target/arm/rk27xx/adc-rk27xx.c +++ b/firmware/target/arm/rk27xx/adc-rk27xx.c @@ -31,7 +31,7 @@ unsigned short adc_read(int channel) unsigned short result; /* ungate lsadc clocks */ - SCU_CLKCFG &= ~(3<<23); + SCU_CLKCFG &= ~(CLKCFG_LSADC|CLKCFG_PCLK_LSADC); /* wait a bit for clock to stabilize */ udelay(10); @@ -51,7 +51,7 @@ unsigned short adc_read(int channel) result = (ADC_DATA & 0x3ff); /* turn off lsadc clock when not in use */ - SCU_CLKCFG |= (3<<23); + SCU_CLKCFG |= (CLKCFG_LSADC|CLKCFG_PCLK_LSADC); return result; } diff --git a/firmware/target/arm/rk27xx/backlight-rk27xx.c b/firmware/target/arm/rk27xx/backlight-rk27xx.c index ba056e8b67..f95a63ecde 100644 --- a/firmware/target/arm/rk27xx/backlight-rk27xx.c +++ b/firmware/target/arm/rk27xx/backlight-rk27xx.c @@ -97,7 +97,7 @@ void _backlight_on(void) lcd_enable(true); #endif /* enable PWM clock */ - SCU_CLKCFG &= ~(1<<29); + SCU_CLKCFG &= ~CLKCFG_PWM; /* set output pin as PWM pin */ SCU_IOMUXB_CON |= (1<<11); /* type<<11<