[U-Boot] [PATCH] OMAP3: igep0020: Add pad config for WIFI/BT GPIOs

This adds support for WIFI/BT GPIOs which were previously missing.
Signed-off-by: Anders Hedlund anders.j.hedlund@gmail.com Cc: Enric Balletbo i Serra eballetbo@iseebcn.com Cc: Jonas Zetterberg jozz@jozz.se --- board/isee/igep0020/igep0020.h | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/board/isee/igep0020/igep0020.h b/board/isee/igep0020/igep0020.h index 3335ecc..283b75e 100644 --- a/board/isee/igep0020/igep0020.h +++ b/board/isee/igep0020/igep0020.h @@ -132,6 +132,12 @@ static void setup_net_chip(void); MUX_VAL(CP(MMC1_DAT1), (IEN | PTU | EN | M0)) /* MMC1_DAT1 */\ MUX_VAL(CP(MMC1_DAT2), (IEN | PTU | EN | M0)) /* MMC1_DAT2 */\ MUX_VAL(CP(MMC1_DAT3), (IEN | PTU | EN | M0)) /* MMC1_DAT3 */\ + MUX_VAL(CP(CAM_HS), (IDIS | PTU | DIS | M4)) /* GPIO_94 */\ + MUX_VAL(CP(CAM_VS), (IDIS | PTU | DIS | M4)) /* GPIO_95 */\ + MUX_VAL(CP(MMC2_DAT4), (IDIS | PTU | DIS | M4)) /* GPIO_136 */\ + MUX_VAL(CP(MMC2_DAT5), (IDIS | PTU | DIS | M4)) /* GPIO_137 */\ + MUX_VAL(CP(MMC2_DAT6), (IDIS | PTU | DIS | M4)) /* GPIO_138 */\ + MUX_VAL(CP(MMC2_DAT7), (IDIS | PTU | DIS | M4)) /* GPIO_139 */\ MUX_VAL(CP(UART3_TX_IRTX), (IDIS | PTD | DIS | M0)) /* UART3_TX */\ MUX_VAL(CP(UART3_RX_IRRX), (IEN | PTD | DIS | M0)) /* UART3_RX */\ MUX_VAL(CP(I2C1_SCL), (IEN | PTU | EN | M0)) /* I2C1_SCL */\

Hi,
2012/10/28 Anders Hedlund anders.j.hedlund@gmail.com:
This adds support for WIFI/BT GPIOs which were previously missing.
Signed-off-by: Anders Hedlund anders.j.hedlund@gmail.com Cc: Enric Balletbo i Serra eballetbo@iseebcn.com Cc: Jonas Zetterberg jozz@jozz.se
board/isee/igep0020/igep0020.h | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/board/isee/igep0020/igep0020.h b/board/isee/igep0020/igep0020.h index 3335ecc..283b75e 100644 --- a/board/isee/igep0020/igep0020.h +++ b/board/isee/igep0020/igep0020.h @@ -132,6 +132,12 @@ static void setup_net_chip(void); MUX_VAL(CP(MMC1_DAT1), (IEN | PTU | EN | M0)) /* MMC1_DAT1 */\ MUX_VAL(CP(MMC1_DAT2), (IEN | PTU | EN | M0)) /* MMC1_DAT2 */\ MUX_VAL(CP(MMC1_DAT3), (IEN | PTU | EN | M0)) /* MMC1_DAT3 */\
MUX_VAL(CP(CAM_HS), (IDIS | PTU | DIS | M4)) /* GPIO_94 */\
MUX_VAL(CP(CAM_VS), (IDIS | PTU | DIS | M4)) /* GPIO_95 */\
MUX_VAL(CP(MMC2_DAT4), (IDIS | PTU | DIS | M4)) /* GPIO_136 */\
MUX_VAL(CP(MMC2_DAT5), (IDIS | PTU | DIS | M4)) /* GPIO_137 */\
MUX_VAL(CP(MMC2_DAT6), (IDIS | PTU | DIS | M4)) /* GPIO_138 */\
MUX_VAL(CP(MMC2_DAT7), (IDIS | PTU | DIS | M4)) /* GPIO_139 */\ MUX_VAL(CP(UART3_TX_IRTX), (IDIS | PTD | DIS | M0)) /* UART3_TX */\ MUX_VAL(CP(UART3_RX_IRRX), (IEN | PTD | DIS | M0)) /* UART3_RX */\ MUX_VAL(CP(I2C1_SCL), (IEN | PTU | EN | M0)) /* I2C1_SCL */\
-- 1.7.10.4
Thanks for the patch but u-boot should only mux the pins they use, as u-boot does not use wifi this is not applicable here.
Did you have problems with wifi ? Then we should check if these pins are muxe'd at kernel level, I think so.
Cheers, Enric

2012/10/29 Enric Balletbo Serra eballetbo@gmail.com:
Hi,
2012/10/28 Anders Hedlund anders.j.hedlund@gmail.com:
This adds support for WIFI/BT GPIOs which were previously missing.
Signed-off-by: Anders Hedlund anders.j.hedlund@gmail.com Cc: Enric Balletbo i Serra eballetbo@iseebcn.com Cc: Jonas Zetterberg jozz@jozz.se
board/isee/igep0020/igep0020.h | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/board/isee/igep0020/igep0020.h b/board/isee/igep0020/igep0020.h index 3335ecc..283b75e 100644 --- a/board/isee/igep0020/igep0020.h +++ b/board/isee/igep0020/igep0020.h @@ -132,6 +132,12 @@ static void setup_net_chip(void); MUX_VAL(CP(MMC1_DAT1), (IEN | PTU | EN | M0)) /* MMC1_DAT1 */\ MUX_VAL(CP(MMC1_DAT2), (IEN | PTU | EN | M0)) /* MMC1_DAT2 */\ MUX_VAL(CP(MMC1_DAT3), (IEN | PTU | EN | M0)) /* MMC1_DAT3 */\
MUX_VAL(CP(CAM_HS), (IDIS | PTU | DIS | M4)) /* GPIO_94 */\
MUX_VAL(CP(CAM_VS), (IDIS | PTU | DIS | M4)) /* GPIO_95 */\
MUX_VAL(CP(MMC2_DAT4), (IDIS | PTU | DIS | M4)) /* GPIO_136 */\
MUX_VAL(CP(MMC2_DAT5), (IDIS | PTU | DIS | M4)) /* GPIO_137 */\
MUX_VAL(CP(MMC2_DAT6), (IDIS | PTU | DIS | M4)) /* GPIO_138 */\
MUX_VAL(CP(MMC2_DAT7), (IDIS | PTU | DIS | M4)) /* GPIO_139 */\ MUX_VAL(CP(UART3_TX_IRTX), (IDIS | PTD | DIS | M0)) /* UART3_TX */\ MUX_VAL(CP(UART3_RX_IRRX), (IEN | PTD | DIS | M0)) /* UART3_RX */\ MUX_VAL(CP(I2C1_SCL), (IEN | PTU | EN | M0)) /* I2C1_SCL */\
-- 1.7.10.4
Thanks for the patch but u-boot should only mux the pins they use, as u-boot does not use wifi this is not applicable here.
Did you have problems with wifi ? Then we should check if these pins are muxe'd at kernel level, I think so.
Yes. In linux kernel v3.6 WIFI/BT does not work due to this issue. I also have a fix for this but in my oppinion this kind of HW configuration should be made in the boot loader.
Br, Anders
Cheers, Enric

2012/10/29 Anders Hedlund anders.j.hedlund@gmail.com:
2012/10/29 Enric Balletbo Serra eballetbo@gmail.com:
Hi,
2012/10/28 Anders Hedlund anders.j.hedlund@gmail.com:
This adds support for WIFI/BT GPIOs which were previously missing.
Signed-off-by: Anders Hedlund anders.j.hedlund@gmail.com Cc: Enric Balletbo i Serra eballetbo@iseebcn.com Cc: Jonas Zetterberg jozz@jozz.se
board/isee/igep0020/igep0020.h | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/board/isee/igep0020/igep0020.h b/board/isee/igep0020/igep0020.h index 3335ecc..283b75e 100644 --- a/board/isee/igep0020/igep0020.h +++ b/board/isee/igep0020/igep0020.h @@ -132,6 +132,12 @@ static void setup_net_chip(void); MUX_VAL(CP(MMC1_DAT1), (IEN | PTU | EN | M0)) /* MMC1_DAT1 */\ MUX_VAL(CP(MMC1_DAT2), (IEN | PTU | EN | M0)) /* MMC1_DAT2 */\ MUX_VAL(CP(MMC1_DAT3), (IEN | PTU | EN | M0)) /* MMC1_DAT3 */\
MUX_VAL(CP(CAM_HS), (IDIS | PTU | DIS | M4)) /* GPIO_94 */\
MUX_VAL(CP(CAM_VS), (IDIS | PTU | DIS | M4)) /* GPIO_95 */\
MUX_VAL(CP(MMC2_DAT4), (IDIS | PTU | DIS | M4)) /* GPIO_136 */\
MUX_VAL(CP(MMC2_DAT5), (IDIS | PTU | DIS | M4)) /* GPIO_137 */\
MUX_VAL(CP(MMC2_DAT6), (IDIS | PTU | DIS | M4)) /* GPIO_138 */\
MUX_VAL(CP(MMC2_DAT7), (IDIS | PTU | DIS | M4)) /* GPIO_139 */\ MUX_VAL(CP(UART3_TX_IRTX), (IDIS | PTD | DIS | M0)) /* UART3_TX */\ MUX_VAL(CP(UART3_RX_IRRX), (IEN | PTD | DIS | M0)) /* UART3_RX */\ MUX_VAL(CP(I2C1_SCL), (IEN | PTU | EN | M0)) /* I2C1_SCL */\
-- 1.7.10.4
Thanks for the patch but u-boot should only mux the pins they use, as u-boot does not use wifi this is not applicable here.
Did you have problems with wifi ? Then we should check if these pins are muxe'd at kernel level, I think so.
Yes. In linux kernel v3.6 WIFI/BT does not work due to this issue. I also have a fix for this but in my oppinion this kind of HW configuration should be made in the boot loader.
This was discussed before in this ML, and the result of the discussion was that bootloaders should set only the minimum required for the uboot functionality and kernel boot. So the way to fix this problem is muxing these pins in kernel.
Cheers, Enric
Br, Anders
Cheers, Enric

2012/10/29 Enric Balletbo Serra eballetbo@gmail.com:
2012/10/29 Anders Hedlund anders.j.hedlund@gmail.com:
2012/10/29 Enric Balletbo Serra eballetbo@gmail.com:
Hi,
2012/10/28 Anders Hedlund anders.j.hedlund@gmail.com:
This adds support for WIFI/BT GPIOs which were previously missing.
Signed-off-by: Anders Hedlund anders.j.hedlund@gmail.com Cc: Enric Balletbo i Serra eballetbo@iseebcn.com Cc: Jonas Zetterberg jozz@jozz.se
board/isee/igep0020/igep0020.h | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/board/isee/igep0020/igep0020.h b/board/isee/igep0020/igep0020.h index 3335ecc..283b75e 100644 --- a/board/isee/igep0020/igep0020.h +++ b/board/isee/igep0020/igep0020.h @@ -132,6 +132,12 @@ static void setup_net_chip(void); MUX_VAL(CP(MMC1_DAT1), (IEN | PTU | EN | M0)) /* MMC1_DAT1 */\ MUX_VAL(CP(MMC1_DAT2), (IEN | PTU | EN | M0)) /* MMC1_DAT2 */\ MUX_VAL(CP(MMC1_DAT3), (IEN | PTU | EN | M0)) /* MMC1_DAT3 */\
MUX_VAL(CP(CAM_HS), (IDIS | PTU | DIS | M4)) /* GPIO_94 */\
MUX_VAL(CP(CAM_VS), (IDIS | PTU | DIS | M4)) /* GPIO_95 */\
MUX_VAL(CP(MMC2_DAT4), (IDIS | PTU | DIS | M4)) /* GPIO_136 */\
MUX_VAL(CP(MMC2_DAT5), (IDIS | PTU | DIS | M4)) /* GPIO_137 */\
MUX_VAL(CP(MMC2_DAT6), (IDIS | PTU | DIS | M4)) /* GPIO_138 */\
MUX_VAL(CP(MMC2_DAT7), (IDIS | PTU | DIS | M4)) /* GPIO_139 */\ MUX_VAL(CP(UART3_TX_IRTX), (IDIS | PTD | DIS | M0)) /* UART3_TX */\ MUX_VAL(CP(UART3_RX_IRRX), (IEN | PTD | DIS | M0)) /* UART3_RX */\ MUX_VAL(CP(I2C1_SCL), (IEN | PTU | EN | M0)) /* I2C1_SCL */\
-- 1.7.10.4
Thanks for the patch but u-boot should only mux the pins they use, as u-boot does not use wifi this is not applicable here.
Did you have problems with wifi ? Then we should check if these pins are muxe'd at kernel level, I think so.
Yes. In linux kernel v3.6 WIFI/BT does not work due to this issue. I also have a fix for this but in my oppinion this kind of HW configuration should be made in the boot loader.
This was discussed before in this ML, and the result of the discussion was that bootloaders should set only the minimum required for the uboot functionality and kernel boot. So the way to fix this problem is muxing these pins in kernel.
Ok. Thanks for this info. I'll withdraw this patch and make one of the linux kernel instead.
Br, Anders
Cheers, Enric
Br, Anders
Cheers, Enric
participants (2)
-
Anders Hedlund
-
Enric Balletbo Serra