Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ARM: dts: omap4-droid4: Fix occasional lost wakeirq for uart1

Looks like using the UART CTS pin does not always trigger for a wake-up
when the SoC is idle.

This is probably because the modem first uses gpio_149 to signal the SoC
that data will be sent, and the CTS will only get used later when the
data transfer is starting.

Let's fix the issue by configuring the gpio_149 pad as the wakeirq for
UART. We have gpio_149 managed by the USB PHY for powering up the right
USB mode, and after that, the gpio gets recycled as the modem wake-up
pin. If needeed, the USB PHY can also later on be configured to use
gpio_149 pad as the wakeirq as a shared irq.

Let's also configure the missing properties for uart-has-rtscts and
current-speed for the modem port while at it. We already configure the
hardware flow control pins with uart1_pins pinctrl setting.

Cc: maemo-leste@lists.dyne.org
Cc: Merlijn Wajer <merlijn@wizzup.org>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>

+7 -3
+7 -3
arch/arm/boot/dts/motorola-mapphone-common.dtsi
··· 723 723 }; 724 724 725 725 /* 726 - * As uart1 is wired to mdm6600 with rts and cts, we can use the cts pin for 727 - * uart1 wakeirq. 726 + * The uart1 port is wired to mdm6600 with rts and cts. The modem uses gpio_149 727 + * for wake-up events for both the USB PHY and the UART. We can use gpio_149 728 + * pad as the shared wakeirq for the UART rather than the RX or CTS pad as we 729 + * have gpio_149 trigger before the UART transfer starts. 728 730 */ 729 731 &uart1 { 730 732 pinctrl-names = "default"; 731 733 pinctrl-0 = <&uart1_pins>; 732 734 interrupts-extended = <&wakeupgen GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH 733 - &omap4_pmx_core 0xfc>; 735 + &omap4_pmx_core 0x110>; 736 + uart-has-rtscts; 737 + current-speed = <115200>; 734 738 }; 735 739 736 740 &uart3 {