[PATCH] ARM: DaVinci: mux: Adding a status checking function

2008-03-14 Thread Ramax Lo
There are chances that a driver may check if other peripherals
with shared pins are enabled. This patch adds a function for
returning the status of a given pinmux bit.

Signed-off-by: Ramax Lo [EMAIL PROTECTED]
---
 arch/arm/mach-davinci/mux.c|   17 +
 include/asm-arm/arch-davinci/mux.h |1 +
 2 files changed, 18 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-davinci/mux.c b/arch/arm/mach-davinci/mux.c
index af1ed1c..4668c90 100644
--- a/arch/arm/mach-davinci/mux.c
+++ b/arch/arm/mach-davinci/mux.c
@@ -37,3 +37,20 @@ void davinci_mux_peripheral(unsigned int mux, unsigned int 
enable)
spin_unlock(mux_lock);
 }
 EXPORT_SYMBOL(davinci_mux_peripheral);
+
+int davinci_mux_status(unsigned int mux)
+{
+   u32 pinmux, muxreg = PINMUX0;
+
+   if (mux = DAVINCI_MUX_LEVEL2) {
+   muxreg = PINMUX1;
+   mux -= DAVINCI_MUX_LEVEL2;
+   }
+
+   spin_lock(mux_lock);
+   pinmux = davinci_readl(DAVINCI_SYSTEM_MODULE_BASE + muxreg);
+   spin_unlock(mux_lock);
+
+   return (pinmux  (1  mux));
+}
+EXPORT_SYMBOL(davinci_mux_status);
diff --git a/include/asm-arm/arch-davinci/mux.h 
b/include/asm-arm/arch-davinci/mux.h
index 9e7cf69..951900a 100644
--- a/include/asm-arm/arch-davinci/mux.h
+++ b/include/asm-arm/arch-davinci/mux.h
@@ -56,5 +56,6 @@
 #define DAVINCI_MUX_TIMIN  (DAVINCI_MUX_LEVEL2 + 18)
 
 extern void davinci_mux_peripheral(unsigned int mux, unsigned int enable);
+extern int davinci_mux_status(unsigned int mux);
 
 #endif /* __ASM_ARCH_MUX_H */
-- 
1.5.2.5

___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source


About SD controller of DaVinci

2008-03-10 Thread Ramax Lo
Hi all,

I'm currently tracing the SDIO stack patch for DaVinci MV kernel,
released by TI.
I found that there are register definitions which aren't described in the
document (SPRUE30B). They are:

SDIOCTL: 0x64
SDIOST0: 0x68
SDIOIEN: 0x6C
SDIOIST: 0x70

It means DaVinci doesn't support SDIO? Does anyone know about the detail?

Ramax
___
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source