[PATCH 00/11] OMAP: Serial: Add omap-serial driver with platform support
Govindraj
govindraj.ti at gmail.com
Sat Sep 18 05:17:22 EDT 2010
On Sat, Sep 18, 2010 at 5:11 AM, Kevin Hilman
<khilman at deeprootsystems.com> wrote:
> "Govindraj.R" <govindraj.raja at 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
More information about the linux-arm-kernel
mailing list