i.MX31: Fix mx31_gpio_mux() function and MUX_-macros.
Correct the mx31_gpio_mux() function to allow changing all i.MX31 IOMUX contacts instead of only the first 256 ones as is the case prior to this patch. Add missing MUX_* macros and update board files to use the new macros. Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com>
This commit is contained in:
committed by
Jean-Christophe PLAGNIOL-VILLARD
parent
b6b183c5b2
commit
5276a3584d
@@ -81,12 +81,12 @@ void mx31_gpio_mux(unsigned long mode)
|
||||
{
|
||||
unsigned long reg, shift, tmp;
|
||||
|
||||
reg = IOMUXC_BASE + (mode & 0xfc);
|
||||
reg = IOMUXC_BASE + (mode & 0x1fc);
|
||||
shift = (~mode & 0x3) * 8;
|
||||
|
||||
tmp = __REG(reg);
|
||||
tmp &= ~(0xff << shift);
|
||||
tmp |= ((mode >> 8) & 0xff) << shift;
|
||||
tmp |= ((mode >> IOMUX_MODE_POS) & 0xff) << shift;
|
||||
__REG(reg) = tmp;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user