浏览代码

avr32: Enable pullup on USART TX lines

Make USART initialization conform to Section 24.6.1 in the AT32AP7000 manual,
i.e. "To prevent the TXD line from falling when the USART is disabled, the use
of an internal pull up is mandatory."

Signed-off-by: Anders Blomdell <anders.blomdell@control.lth.se>
[haavard.skinnemoen@atmel.com: enable pullup on RX as well]
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Anders Blomdell 17 年之前
父节点
当前提交
105462632c
共有 1 个文件被更改,包括 4 次插入4 次删除
  1. 4 4
      arch/avr32/mach-at32ap/at32ap700x.c

+ 4 - 4
arch/avr32/mach-at32ap/at32ap700x.c

@@ -967,28 +967,28 @@ static inline void configure_usart0_pins(void)
 {
 {
 	u32 pin_mask = (1 << 8) | (1 << 9); /* RXD & TXD */
 	u32 pin_mask = (1 << 8) | (1 << 9); /* RXD & TXD */
 
 
-	select_peripheral(PIOA, pin_mask, PERIPH_B, 0);
+	select_peripheral(PIOA, pin_mask, PERIPH_B, AT32_GPIOF_PULLUP);
 }
 }
 
 
 static inline void configure_usart1_pins(void)
 static inline void configure_usart1_pins(void)
 {
 {
 	u32 pin_mask = (1 << 17) | (1 << 18); /* RXD & TXD */
 	u32 pin_mask = (1 << 17) | (1 << 18); /* RXD & TXD */
 
 
-	select_peripheral(PIOA, pin_mask, PERIPH_A, 0);
+	select_peripheral(PIOA, pin_mask, PERIPH_A, AT32_GPIOF_PULLUP);
 }
 }
 
 
 static inline void configure_usart2_pins(void)
 static inline void configure_usart2_pins(void)
 {
 {
 	u32 pin_mask = (1 << 26) | (1 << 27); /* RXD & TXD */
 	u32 pin_mask = (1 << 26) | (1 << 27); /* RXD & TXD */
 
 
-	select_peripheral(PIOB, pin_mask, PERIPH_B, 0);
+	select_peripheral(PIOB, pin_mask, PERIPH_B, AT32_GPIOF_PULLUP);
 }
 }
 
 
 static inline void configure_usart3_pins(void)
 static inline void configure_usart3_pins(void)
 {
 {
 	u32 pin_mask = (1 << 18) | (1 << 17); /* RXD & TXD */
 	u32 pin_mask = (1 << 18) | (1 << 17); /* RXD & TXD */
 
 
-	select_peripheral(PIOB, pin_mask, PERIPH_B, 0);
+	select_peripheral(PIOB, pin_mask, PERIPH_B, AT32_GPIOF_PULLUP);
 }
 }
 
 
 static struct platform_device *__initdata at32_usarts[4];
 static struct platform_device *__initdata at32_usarts[4];