* [PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support
@ 2010-09-17 16:05 Govindraj.R
2010-09-17 23:41 ` Kevin Hilman
0 siblings, 1 reply; 6+ messages in thread
From: Govindraj.R @ 2010-09-17 16:05 UTC (permalink / raw)
To: linux-arm-kernel
This patch series adds a serial driver to handle uarts on omap platforms.
Currenlty omap-uarts are handled with 8250 driver, since updating
this driver with omap specific features will over load
the 8250 driver with all omap-specific data thus a new driver
is added to configure and support features like
dma, h/w, s/w flowcontrol for omap-uarts.
Also the patch series updates various low level platform specific
serial data to support omap-uarts with hwmod framework and adds support
for uart4 on OMAP3630.
This patch series is tested on mainline 2.6.36-rc4
and has dependencies on:
1) https://patchwork.kernel.org/patch/117148/
This patch to support all hwmod data with proper structure name.
2) https://patchwork.kernel.org/patch/117347/
This patch is needed to apply omap4 uart hwmods.
3) http://marc.info/?l=linux-omap&m=128403141221947&w=2
This patch series is needed for omap4430SDP ES2.0 validation.
Benoit Cousson (1):
OMAP4: UART: Add uart1-4 hwmods data for omap4
Govindraj.R (6):
OMAP2: UART: remove set_uart_globals.
OMAP clock: Add uart4_ick/fck definitions for 3630
OMAP3: PRCM: Consider UART4 for 3630 chip in prcm_setup_regs
OMAP3: PM: Add prepare idle and resume idle call for uart4
serial: Add OMAP high-speed UART driver
OMAP: SERIAL: Enable omap-serial driver in Kconfig.
Kevin Hilman (4):
OMAP2/3: UART: add omap_hwmod data for UARTs 1-4
OMAP: UART: omap_device converions, remove implicit 8520 assumptions
OMAP: UART: don't do automatic bus-level suspend/resume
OMAP: UART: use non-locking versions of hwmod enable/idle functions
arch/arm/mach-omap2/Kconfig | 11 +-
arch/arm/mach-omap2/clock3xxx_data.c | 22 +
arch/arm/mach-omap2/cm-regbits-34xx.h | 2 +
arch/arm/mach-omap2/omap_hwmod_2420_data.c | 193 ++++
arch/arm/mach-omap2/omap_hwmod_2430_data.c | 193 ++++
arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 253 +++++-
arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 235 +++++
arch/arm/mach-omap2/pm34xx.c | 17 +-
arch/arm/mach-omap2/prcm-common.h | 5 +
arch/arm/mach-omap2/prm-regbits-34xx.h | 1 +
arch/arm/mach-omap2/serial.c | 548 +++++-----
arch/arm/plat-omap/common.c | 16 -
arch/arm/plat-omap/include/plat/common.h | 1 -
arch/arm/plat-omap/include/plat/dma.h | 2 +
arch/arm/plat-omap/include/plat/irqs.h | 2 +
arch/arm/plat-omap/include/plat/omap-serial.h | 129 +++
drivers/serial/Kconfig | 27 +
drivers/serial/Makefile | 1 +
drivers/serial/omap-serial.c | 1332 +++++++++++++++++++++++++
include/linux/serial_core.h | 3 +
20 files changed, 2699 insertions(+), 294 deletions(-)
create mode 100644 arch/arm/plat-omap/include/plat/omap-serial.h
create mode 100644 drivers/serial/omap-serial.c
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support
2010-09-17 16:05 [PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support Govindraj.R
@ 2010-09-17 23:41 ` Kevin Hilman
2010-09-18 9:17 ` Govindraj
0 siblings, 1 reply; 6+ messages in thread
From: Kevin Hilman @ 2010-09-17 23:41 UTC (permalink / raw)
To: linux-arm-kernel
"Govindraj.R" <govindraj.raja@ti.com> writes:
> This patch series adds a serial driver to handle uarts on omap platforms.
> Currenlty omap-uarts are handled with 8250 driver, since updating
> this driver with omap specific features will over load
> the 8250 driver with all omap-specific data thus a new driver
> is added to configure and support features like
> dma, h/w, s/w flowcontrol for omap-uarts.
> Also the patch series updates various low level platform specific
> serial data to support omap-uarts with hwmod framework and adds support
> for uart4 on OMAP3630.
This series is missing a couple things to work more broadly on all
boards, specifically 3630-based boards.
First, due to the current UART idle code base, you need to enable all
OMAP UARTs 36xx. Enabling less than all OMAP UARTs will break the
current idle code. As we discussed, the next phase we will move the
idle management from this serial.c hackery into the omap-serial driver
iteself. Until then, you need to call omap_serial_init() on
Zoom2/Zoom3. Patch below[1]
Also, you previously had a patch that updated omap_uart_idle_init() to
handle 36xx and specifically UART4. Without that, struct
omap_uart_state is not setup correctly for UART4, and thus cannot be
properly idled on 3630.
Also, it's been a while since I tested this on OMAP2. Please re-test on
OMAP2 with the whole series. Also, please report here the other
platforms this was tested on. The final needs to be tested on OMAP2, 3
and 4 before merge.
> This patch series is tested on mainline 2.6.36-rc4
> and has dependencies on:
>
> 1) https://patchwork.kernel.org/patch/117148/
> This patch to support all hwmod data with proper structure name.
>
> 2) https://patchwork.kernel.org/patch/117347/
> This patch is needed to apply omap4 uart hwmods.
Can you rebase this against my pm-core branch, which already has these
dependencies, as well as several other fixes to the hwmod and PM cores
that are queued for 2.6.37?
Thanks,
Kevin
> 3) http://marc.info/?l=linux-omap&m=128403141221947&w=2
> This patch series is needed for omap4430SDP ES2.0 validation.
>
>
> Benoit Cousson (1):
> OMAP4: UART: Add uart1-4 hwmods data for omap4
>
> Govindraj.R (6):
> OMAP2: UART: remove set_uart_globals.
> OMAP clock: Add uart4_ick/fck definitions for 3630
> OMAP3: PRCM: Consider UART4 for 3630 chip in prcm_setup_regs
> OMAP3: PM: Add prepare idle and resume idle call for uart4
> serial: Add OMAP high-speed UART driver
> OMAP: SERIAL: Enable omap-serial driver in Kconfig.
>
> Kevin Hilman (4):
> OMAP2/3: UART: add omap_hwmod data for UARTs 1-4
> OMAP: UART: omap_device converions, remove implicit 8520 assumptions
> OMAP: UART: don't do automatic bus-level suspend/resume
> OMAP: UART: use non-locking versions of hwmod enable/idle functions
>
> arch/arm/mach-omap2/Kconfig | 11 +-
> arch/arm/mach-omap2/clock3xxx_data.c | 22 +
> arch/arm/mach-omap2/cm-regbits-34xx.h | 2 +
> arch/arm/mach-omap2/omap_hwmod_2420_data.c | 193 ++++
> arch/arm/mach-omap2/omap_hwmod_2430_data.c | 193 ++++
> arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 253 +++++-
> arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 235 +++++
> arch/arm/mach-omap2/pm34xx.c | 17 +-
> arch/arm/mach-omap2/prcm-common.h | 5 +
> arch/arm/mach-omap2/prm-regbits-34xx.h | 1 +
> arch/arm/mach-omap2/serial.c | 548 +++++-----
> arch/arm/plat-omap/common.c | 16 -
> arch/arm/plat-omap/include/plat/common.h | 1 -
> arch/arm/plat-omap/include/plat/dma.h | 2 +
> arch/arm/plat-omap/include/plat/irqs.h | 2 +
> arch/arm/plat-omap/include/plat/omap-serial.h | 129 +++
> drivers/serial/Kconfig | 27 +
> drivers/serial/Makefile | 1 +
> drivers/serial/omap-serial.c | 1332 +++++++++++++++++++++++++
> include/linux/serial_core.h | 3 +
> 20 files changed, 2699 insertions(+), 294 deletions(-)
> create mode 100644 arch/arm/plat-omap/include/plat/omap-serial.h
> create mode 100644 drivers/serial/omap-serial.c
[1]
diff --git a/arch/arm/mach-omap2/board-zoom-peripherals.c b/arch/arm/mach-omap2/board-zoom-peripherals.c
index 6b39849..641765a 100644
--- a/arch/arm/mach-omap2/board-zoom-peripherals.c
+++ b/arch/arm/mach-omap2/board-zoom-peripherals.c
@@ -282,4 +282,5 @@ void __init zoom_peripherals_init(void)
omap_i2c_init();
usb_musb_init(&musb_board_data);
enable_board_wakeup_source();
+ omap_serial_init();
}
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support
2010-09-17 23:41 ` Kevin Hilman
@ 2010-09-18 9:17 ` Govindraj
2010-09-20 16:21 ` Kevin Hilman
0 siblings, 1 reply; 6+ messages in thread
From: Govindraj @ 2010-09-18 9:17 UTC (permalink / raw)
To: linux-arm-kernel
On Sat, Sep 18, 2010 at 5:11 AM, Kevin Hilman
<khilman@deeprootsystems.com> wrote:
> "Govindraj.R" <govindraj.raja@ti.com> writes:
>
>> This patch series adds a serial driver to handle uarts on omap platforms.
>> Currenlty omap-uarts are handled with 8250 driver, since updating
>> this driver with omap specific features will over load
>> the 8250 driver with all omap-specific data thus a new driver
>> is added to configure and support features like
>> dma, h/w, s/w flowcontrol for omap-uarts.
>> Also the patch series updates various low level platform specific
>> serial data to support omap-uarts with hwmod framework and adds support
>> for uart4 on OMAP3630.
>
> This series is missing a couple things to work more broadly on all
> boards, specifically 3630-based boards.
>
> First, due to the current UART idle code base, you need to enable all
> OMAP UARTs 36xx. ?Enabling less than all OMAP UARTs will break the
> current idle code. ?As we discussed, the next phase we will move the
> idle management from this serial.c hackery into the omap-serial driver
> iteself. ?Until then, you need to call omap_serial_init() on
> Zoom2/Zoom3. ?Patch below[1]
>
> Also, you previously had a patch that updated omap_uart_idle_init() to
> handle 36xx and specifically UART4. ?Without that, struct
> omap_uart_state is not setup correctly for UART4, and thus cannot be
> properly idled on 3630.
ok fine, I will I incorporate initialize all uarts patch for zoom boards.
Are you referring to this patch?
https://patchwork.kernel.org/patch/108066/
Is this still needed if we have initialized all uarts?
This patch might not needed if we have initialized all uarts right?
>
> Also, it's been a while since I tested this on OMAP2. ?Please re-test on
> OMAP2 with the whole series. ?Also, please report here the other
> platforms this was tested on. ?The final needs to be tested on OMAP2, 3
> and 4 before merge.
Yes Sure,
Just FYI this patch series was also tested on omap2,3,4.
>
>> This patch series is tested on mainline 2.6.36-rc4
>> and has dependencies on:
>>
>> 1) https://patchwork.kernel.org/patch/117148/
>> ? ? ? This patch to support all hwmod data with proper structure name.
>>
>> 2) https://patchwork.kernel.org/patch/117347/
>> ? ? ? This patch is needed to apply omap4 uart hwmods.
>
> Can you rebase this against my pm-core branch, which already has these
> dependencies, as well as several other fixes to the hwmod and PM cores
> that are queued for 2.6.37?
>
> Thanks,
>
> Kevin
>
>> 3) http://marc.info/?l=linux-omap&m=128403141221947&w=2
>> ? ? ? This patch series is needed for omap4430SDP ES2.0 validation.
>>
>>
>> Benoit Cousson (1):
>> ? OMAP4: UART: Add uart1-4 hwmods data for omap4
>>
>> Govindraj.R (6):
>> ? OMAP2: UART: remove set_uart_globals.
>> ? OMAP clock: Add uart4_ick/fck definitions for 3630
>> ? OMAP3: PRCM: Consider UART4 for 3630 chip in prcm_setup_regs
>> ? OMAP3: PM: Add prepare idle and resume idle call for uart4
>> ? serial: Add OMAP high-speed UART driver
>> ? OMAP: SERIAL: Enable omap-serial driver in Kconfig.
>>
>> Kevin Hilman (4):
>> ? OMAP2/3: UART: add omap_hwmod data for UARTs 1-4
>> ? OMAP: UART: omap_device converions, remove implicit 8520 assumptions
>> ? OMAP: UART: don't do automatic bus-level suspend/resume
>> ? OMAP: UART: use non-locking versions of hwmod enable/idle functions
>>
>> ?arch/arm/mach-omap2/Kconfig ? ? ? ? ? ? ? ? ? | ? 11 +-
>> ?arch/arm/mach-omap2/clock3xxx_data.c ? ? ? ? ?| ? 22 +
>> ?arch/arm/mach-omap2/cm-regbits-34xx.h ? ? ? ? | ? ?2 +
>> ?arch/arm/mach-omap2/omap_hwmod_2420_data.c ? ?| ?193 ++++
>> ?arch/arm/mach-omap2/omap_hwmod_2430_data.c ? ?| ?193 ++++
>> ?arch/arm/mach-omap2/omap_hwmod_3xxx_data.c ? ?| ?253 +++++-
>> ?arch/arm/mach-omap2/omap_hwmod_44xx_data.c ? ?| ?235 +++++
>> ?arch/arm/mach-omap2/pm34xx.c ? ? ? ? ? ? ? ? ?| ? 17 +-
>> ?arch/arm/mach-omap2/prcm-common.h ? ? ? ? ? ? | ? ?5 +
>> ?arch/arm/mach-omap2/prm-regbits-34xx.h ? ? ? ?| ? ?1 +
>> ?arch/arm/mach-omap2/serial.c ? ? ? ? ? ? ? ? ?| ?548 +++++-----
>> ?arch/arm/plat-omap/common.c ? ? ? ? ? ? ? ? ? | ? 16 -
>> ?arch/arm/plat-omap/include/plat/common.h ? ? ?| ? ?1 -
>> ?arch/arm/plat-omap/include/plat/dma.h ? ? ? ? | ? ?2 +
>> ?arch/arm/plat-omap/include/plat/irqs.h ? ? ? ?| ? ?2 +
>> ?arch/arm/plat-omap/include/plat/omap-serial.h | ?129 +++
>> ?drivers/serial/Kconfig ? ? ? ? ? ? ? ? ? ? ? ?| ? 27 +
>> ?drivers/serial/Makefile ? ? ? ? ? ? ? ? ? ? ? | ? ?1 +
>> ?drivers/serial/omap-serial.c ? ? ? ? ? ? ? ? ?| 1332 +++++++++++++++++++++++++
>> ?include/linux/serial_core.h ? ? ? ? ? ? ? ? ? | ? ?3 +
>> ?20 files changed, 2699 insertions(+), 294 deletions(-)
>> ?create mode 100644 arch/arm/plat-omap/include/plat/omap-serial.h
>> ?create mode 100644 drivers/serial/omap-serial.c
>
>
> [1]
> diff --git a/arch/arm/mach-omap2/board-zoom-peripherals.c b/arch/arm/mach-omap2/board-zoom-peripherals.c
> index 6b39849..641765a 100644
> --- a/arch/arm/mach-omap2/board-zoom-peripherals.c
> +++ b/arch/arm/mach-omap2/board-zoom-peripherals.c
> @@ -282,4 +282,5 @@ void __init zoom_peripherals_init(void)
> ? ? ? ?omap_i2c_init();
> ? ? ? ?usb_musb_init(&musb_board_data);
> ? ? ? ?enable_board_wakeup_source();
> + ? ? ? omap_serial_init();
> ?}
> --
> To unsubscribe from this list: send the line "unsubscribe linux-serial" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
>
--
---
Regards,
Govindraj.R
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support
2010-09-18 9:17 ` Govindraj
@ 2010-09-20 16:21 ` Kevin Hilman
2010-09-21 15:37 ` Govindraj
0 siblings, 1 reply; 6+ messages in thread
From: Kevin Hilman @ 2010-09-20 16:21 UTC (permalink / raw)
To: linux-arm-kernel
Govindraj <govindraj.ti@gmail.com> writes:
> On Sat, Sep 18, 2010 at 5:11 AM, Kevin Hilman
> <khilman@deeprootsystems.com> wrote:
>> "Govindraj.R" <govindraj.raja@ti.com> writes:
>>
>>> This patch series adds a serial driver to handle uarts on omap platforms.
>>> Currenlty omap-uarts are handled with 8250 driver, since updating
>>> this driver with omap specific features will over load
>>> the 8250 driver with all omap-specific data thus a new driver
>>> is added to configure and support features like
>>> dma, h/w, s/w flowcontrol for omap-uarts.
>>> Also the patch series updates various low level platform specific
>>> serial data to support omap-uarts with hwmod framework and adds support
>>> for uart4 on OMAP3630.
>>
>> This series is missing a couple things to work more broadly on all
>> boards, specifically 3630-based boards.
>>
>> First, due to the current UART idle code base, you need to enable all
>> OMAP UARTs 36xx. ?Enabling less than all OMAP UARTs will break the
>> current idle code. ?As we discussed, the next phase we will move the
>> idle management from this serial.c hackery into the omap-serial driver
>> iteself. ?Until then, you need to call omap_serial_init() on
>> Zoom2/Zoom3. ?Patch below[1]
>>
>> Also, you previously had a patch that updated omap_uart_idle_init() to
>> handle 36xx and specifically UART4. ?Without that, struct
>> omap_uart_state is not setup correctly for UART4, and thus cannot be
>> properly idled on 3630.
>
> ok fine, I will I incorporate initialize all uarts patch for zoom boards.
>
> Are you referring to this patch?
> https://patchwork.kernel.org/patch/108066/
>
> Is this still needed if we have initialized all uarts?
> This patch might not needed if we have initialized all uarts right?
Right. We don't need the above patchwork patch if all UARTs are
initialized.
The other patch I was referring to was the one that added UART4 support
to omap_uart_idle_init() (added the wk_en, wk_st, padconf etc.) I had a
pending request for you to drop the muxmode from that patch, but the
rest of it was still needed.
>>
>> Also, it's been a while since I tested this on OMAP2. ?Please re-test on
>> OMAP2 with the whole series. ?Also, please report here the other
>> platforms this was tested on. ?The final needs to be tested on OMAP2, 3
>> and 4 before merge.
>
> Yes Sure,
>
> Just FYI this patch series was also tested on omap2,3,4.
>
OK, be sure to test Zoom3, because my testing on Zoom3 led to a crash as
soon as idle was enabled due to the missing init of all UARTs.
Thanks,
Kevin
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support
2010-09-20 16:21 ` Kevin Hilman
@ 2010-09-21 15:37 ` Govindraj
2010-09-21 20:05 ` Kevin Hilman
0 siblings, 1 reply; 6+ messages in thread
From: Govindraj @ 2010-09-21 15:37 UTC (permalink / raw)
To: linux-arm-kernel
<SNIP>
>>>> Also the patch series updates various low level platform specific
>>>> serial data to support omap-uarts with hwmod framework and adds support
>>>> for uart4 on OMAP3630.
>>>
>>> This series is missing a couple things to work more broadly on all
>>> boards, specifically 3630-based boards.
>>>
>>> First, due to the current UART idle code base, you need to enable all
>>> OMAP UARTs 36xx. ?Enabling less than all OMAP UARTs will break the
>>> current idle code. ?As we discussed, the next phase we will move the
>>> idle management from this serial.c hackery into the omap-serial driver
>>> iteself. ?Until then, you need to call omap_serial_init() on
>>> Zoom2/Zoom3. ?Patch below[1]
>>>
>>> Also, you previously had a patch that updated omap_uart_idle_init() to
>>> handle 36xx and specifically UART4. ?Without that, struct
>>> omap_uart_state is not setup correctly for UART4, and thus cannot be
>>> properly idled on 3630.
>>
>> ok fine, I will I incorporate initialize all uarts patch for zoom boards.
>>
>> Are you referring to this patch?
>> https://patchwork.kernel.org/patch/108066/
>>
>> Is this still needed if we have initialized all uarts?
>> This patch might not needed if we have initialized all uarts right?
>
> Right. ?We don't need the above patchwork patch if all UARTs are
> initialized.
>
> The other patch I was referring to was the one that added UART4 support
> to omap_uart_idle_init() (added the wk_en, wk_st, padconf etc.) ?I had a
> pending request for you to drop the muxmode from that patch, but the
> rest of it was still needed.
>
>>>
>>> Also, it's been a while since I tested this on OMAP2. ?Please re-test on
>>> OMAP2 with the whole series. ?Also, please report here the other
>>> platforms this was tested on. ?The final needs to be tested on OMAP2, 3
>>> and 4 before merge.
>>
>> Yes Sure,
>>
>> Just FYI this patch series was also tested on omap2,3,4.
>>
>
> OK, be sure to test Zoom3, because my testing on Zoom3 led to a crash as
> soon as idle was enabled due to the missing init of all UARTs.
This patch series applied on top of pm-core branch
commit 4c1f85cdc189d41ee53c1bc3957a908c91cffc00
Merge: ca1684b 96c4e27
Author: Kevin Hilman <khilman@deeprootsystems.com>
Date: Thu Sep 16 15:29:06 2010 -0700
with below changes:
1) if (uart->timeout)
uart->timeout = (30 * HZ);
2) #define DEFAULT_TIMEOUT 5 [temporary change for timeout]
I see ret count getting incremented on ZOOM3 even without "UART4 support
to omap_uart_idle_init()" patch.
I dont see any crash.
Logs Snip:
/ # mount -t debugfs debugfs /debug
/ #
/ #
/ # echo 1 > /debug/pm_debug/sleep_while_idle
/ # cat /debug/pm_debug/count
usbhost_pwrdm (RET),OFF:0,RET:1,INA:0,ON:1,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0
sgx_pwrdm (OFF),OFF:1,RET:0,INA:0,ON:1,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0
per_pwrdm (ON),OFF:0,RET:773,INA:0,ON:774,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0
dss_pwrdm (RET),OFF:0,RET:1,INA:0,ON:1,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0
cam_pwrdm (RET),OFF:0,RET:1,INA:0,ON:1,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0
core_pwrdm (ON),OFF:0,RET:794,INA:0,ON:795,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0,RET-MEMBANK2-OFF:0
neon_pwrdm (ON),OFF:0,RET:796,INA:0,ON:797,RET-LOGIC-OFF:0
mpu_pwrdm (ON),OFF:0,RET:796,INA:0,ON:797,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0
iva2_pwrdm (RET),OFF:0,RET:1,INA:0,ON:1,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0,RET-MEMBANK2-OFF:0,RET-MEMBANK3-OFF:0,RET-MEMBANK4-OFF:0
per_clkdm->per_pwrdm (11)
usbhost_clkdm->usbhost_pwrdm (0)
cam_clkdm->cam_pwrdm (0)
dss_clkdm->dss_pwrdm (0)
core_l4_clkdm->core_pwrdm (9)
core_l3_clkdm->core_pwrdm (5)
d2d_clkdm->core_pwrdm (0)
sgx_clkdm->sgx_pwrdm (0)
iva2_clkdm->iva2_pwrdm (0)
neon_clkdm->neon_pwrdm (0)
mpu_clkdm->mpu_pwrdm (0)
prm_clkdm->wkup_pwrdm (0)
cm_clkdm->core_pwrdm (0)
--
---
Regards,
Govindraj.R
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support
2010-09-21 15:37 ` Govindraj
@ 2010-09-21 20:05 ` Kevin Hilman
0 siblings, 0 replies; 6+ messages in thread
From: Kevin Hilman @ 2010-09-21 20:05 UTC (permalink / raw)
To: linux-arm-kernel
Govindraj <govindraj.ti@gmail.com> writes:
> <SNIP>
>
>>>>> Also the patch series updates various low level platform specific
>>>>> serial data to support omap-uarts with hwmod framework and adds support
>>>>> for uart4 on OMAP3630.
>>>>
>>>> This series is missing a couple things to work more broadly on all
>>>> boards, specifically 3630-based boards.
>>>>
>>>> First, due to the current UART idle code base, you need to enable all
>>>> OMAP UARTs 36xx. ?Enabling less than all OMAP UARTs will break the
>>>> current idle code. ?As we discussed, the next phase we will move the
>>>> idle management from this serial.c hackery into the omap-serial driver
>>>> iteself. ?Until then, you need to call omap_serial_init() on
>>>> Zoom2/Zoom3. ?Patch below[1]
>>>>
>>>> Also, you previously had a patch that updated omap_uart_idle_init() to
>>>> handle 36xx and specifically UART4. ?Without that, struct
>>>> omap_uart_state is not setup correctly for UART4, and thus cannot be
>>>> properly idled on 3630.
>>>
>>> ok fine, I will I incorporate initialize all uarts patch for zoom boards.
>>>
>>> Are you referring to this patch?
>>> https://patchwork.kernel.org/patch/108066/
>>>
>>> Is this still needed if we have initialized all uarts?
>>> This patch might not needed if we have initialized all uarts right?
>>
>> Right. ?We don't need the above patchwork patch if all UARTs are
>> initialized.
>>
>> The other patch I was referring to was the one that added UART4 support
>> to omap_uart_idle_init() (added the wk_en, wk_st, padconf etc.) ?I had a
>> pending request for you to drop the muxmode from that patch, but the
>> rest of it was still needed.
>>
>>>>
>>>> Also, it's been a while since I tested this on OMAP2. ?Please re-test on
>>>> OMAP2 with the whole series. ?Also, please report here the other
>>>> platforms this was tested on. ?The final needs to be tested on OMAP2, 3
>>>> and 4 before merge.
>>>
>>> Yes Sure,
>>>
>>> Just FYI this patch series was also tested on omap2,3,4.
>>>
>>
>> OK, be sure to test Zoom3, because my testing on Zoom3 led to a crash as
>> soon as idle was enabled due to the missing init of all UARTs.
>
>
> This patch series applied on top of pm-core branch
>
> commit 4c1f85cdc189d41ee53c1bc3957a908c91cffc00
> Merge: ca1684b 96c4e27
> Author: Kevin Hilman <khilman@deeprootsystems.com>
> Date: Thu Sep 16 15:29:06 2010 -0700
>
> with below changes:
>
> 1) if (uart->timeout)
> uart->timeout = (30 * HZ);
>
> 2) #define DEFAULT_TIMEOUT 5 [temporary change for timeout]
Doing this masks the problem. If you do 1 without 2, you'll see that
UART4 can never go idle.
Please test without this change and use the sysfs files to enable the
timeouts:
echo 5 > /sys/devices/platform/omap/omap-hsuart.0/sleep_timeout
echo 5 > /sys/devices/platform/omap/omap-hsuart.1/sleep_timeout
echo 5 > /sys/devices/platform/omap/omap-hsuart.2/sleep_timeout
echo 5 > /sys/devices/platform/omap/omap-hsuart.3/sleep_timeout
> I see ret count getting incremented on ZOOM3 even without "UART4 support
> to omap_uart_idle_init()" patch.
>
> I dont see any crash.
It has to do more than not crash for this to be acceptable. All UARTs
need to have the same capabilities.
Currently, UART4 has no padconf, wk_en, or wk_st fields set. This means
1) it's sysfs entry doesn't get a 'sleep_timeout' file so it cannot be
made changed and 2) wakeups on UART4 cannot work.
As I said before, you had all this stuff in a previous series. I only
requested you drop the 'muxmode' stuff from that patch, but everything
else (padconf, wk_en, wk_st) was fine.
Please add this back to the series.
Kevin
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2010-09-21 20:05 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-17 16:05 [PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support Govindraj.R
2010-09-17 23:41 ` Kevin Hilman
2010-09-18 9:17 ` Govindraj
2010-09-20 16:21 ` Kevin Hilman
2010-09-21 15:37 ` Govindraj
2010-09-21 20:05 ` Kevin Hilman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).