123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- /*
- * arch/arm/mach-omap2/serial.c
- *
- * OMAP2 serial support.
- *
- * Copyright (C) 2005-2008 Nokia Corporation
- * Author: Paul Mundt <paul.mundt@nokia.com>
- *
- * Major rework for PM support by Kevin Hilman
- *
- * Based off of arch/arm/mach-omap/omap1/serial.c
- *
- * Copyright (C) 2009 Texas Instruments
- * Added OMAP4 support - Santosh Shilimkar <santosh.shilimkar@ti.com
- *
- * This file is subject to the terms and conditions of the GNU General Public
- * License. See the file "COPYING" in the main directory of this archive
- * for more details.
- */
- #include <linux/kernel.h>
- #include <linux/init.h>
- #include <linux/clk.h>
- #include <linux/io.h>
- #include <linux/delay.h>
- #include <linux/platform_device.h>
- #include <linux/slab.h>
- #include <linux/pm_runtime.h>
- #include <linux/console.h>
- #include <linux/omap-dma.h>
- #include <linux/platform_data/serial-omap.h>
- #include "common.h"
- #include "omap_hwmod.h"
- #include "omap_device.h"
- #include "omap-pm.h"
- #include "soc.h"
- #include "prm2xxx_3xxx.h"
- #include "pm.h"
- #include "cm2xxx_3xxx.h"
- #include "prm-regbits-34xx.h"
- #include "control.h"
- #include "mux.h"
- #include "serial.h"
- /*
- * NOTE: By default the serial auto_suspend timeout is disabled as it causes
- * lost characters over the serial ports. This means that the UART clocks will
- * stay on until power/autosuspend_delay is set for the uart from sysfs.
- * This also causes that any deeper omap sleep states are blocked.
- */
- #define DEFAULT_AUTOSUSPEND_DELAY -1
- #define MAX_UART_HWMOD_NAME_LEN 16
- struct omap_uart_state {
- int num;
- struct list_head node;
- struct omap_hwmod *oh;
- struct omap_device_pad default_omap_uart_pads[2];
- };
- static LIST_HEAD(uart_list);
- static u8 num_uarts;
- static u8 console_uart_id = -1;
- static u8 no_console_suspend;
- static u8 uart_debug;
- #define DEFAULT_RXDMA_POLLRATE 1 /* RX DMA polling rate (us) */
|