diff options
| author | Greg Kroah-Hartman <gregkh@suse.de> | 2010-09-24 16:41:57 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-09-24 16:41:57 -0700 |
| commit | 520ae0f9cfcfa5be2bd040820690cef41e9ce8ff (patch) | |
| tree | fe201f30c71c4ebf641659483d1c9e04fa731b34 | |
| parent | 0733e801bcc06540e0d8c56579e406eface45991 (diff) | |
| download | patches-520ae0f9cfcfa5be2bd040820690cef41e9ce8ff.tar.gz | |
remove two tty patches
| -rw-r--r-- | driver-core/add-packet-hub-driver-for-topcliff-platform-controller-hub.patch | 2 | ||||
| -rw-r--r-- | series | 2 | ||||
| -rw-r--r-- | tty/8250-pm-callback-for-platform-uarts.patch | 100 | ||||
| -rw-r--r-- | tty/alchemy-uart-pm-through-serial-framework.patch | 123 |
4 files changed, 1 insertions, 226 deletions
diff --git a/driver-core/add-packet-hub-driver-for-topcliff-platform-controller-hub.patch b/driver-core/add-packet-hub-driver-for-topcliff-platform-controller-hub.patch index ba8985b5631623..5272e9a270c05c 100644 --- a/driver-core/add-packet-hub-driver-for-topcliff-platform-controller-hub.patch +++ b/driver-core/add-packet-hub-driver-for-topcliff-platform-controller-hub.patch @@ -72,7 +72,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> +++ b/drivers/misc/Makefile @@ -35,3 +35,4 @@ obj-y += eeprom/ obj-y += cb710/ - obj-$(CONFIG_VMWARE_BALLOON) += vmware_balloon.o + obj-$(CONFIG_VMWARE_BALLOON) += vmw_balloon.o obj-$(CONFIG_ARM_CHARLCD) += arm-charlcd.o +obj-$(CONFIG_PCH_PHUB) += pch_phub.o --- /dev/null @@ -98,8 +98,6 @@ tty/tty-make-tiocgicount-a-handler.patch tty/tty-convert-the-usb-drivers-to-the-new-icount-interface.patch tty/tty-icount-changeover-for-other-main-devices.patch tty/tty-fix-warning-left-over-from-tiocgicount-changes.patch -tty/8250-pm-callback-for-platform-uarts.patch -tty/alchemy-uart-pm-through-serial-framework.patch tty/tty-add-a-new-file-proc-tty-consoles.patch ################################### diff --git a/tty/8250-pm-callback-for-platform-uarts.patch b/tty/8250-pm-callback-for-platform-uarts.patch deleted file mode 100644 index e1e14644b73e5c..00000000000000 --- a/tty/8250-pm-callback-for-platform-uarts.patch +++ /dev/null @@ -1,100 +0,0 @@ -From manuel.lauss@googlemail.com Fri Sep 24 09:43:36 2010 -From: Manuel Lauss <manuel.lauss@googlemail.com> -To: linux-serial@vger.kernel.org -Cc: Greg KH <greg@kroah.com>, - Andrew Morton <akpm@linux-foundation.org>, - Alan Cox <alan@lxorguk.ukuu.org.uk>, - Manuel Lauss <manuel.lauss@googlemail.com> -Subject: 8250: pm callback for platform uarts -Date: Fri, 24 Sep 2010 18:13:28 +0200 -Message-Id: <1285344809-16839-1-git-send-email-manuel.lauss@googlemail.com> - -The 8250 driver provides in its uart_ops a pm callback which in turn -handles 8250 pm and, if it exists, calls a private callback. -However there's no way for platform 8250 devices to assign anything -to this callback. - -This patch adds a new pm field to the plat_8250_port and uart_port -structures and modifies the 8250 pm callback to call the platform -method before powering up and after powering down (if the platform -is capable of cutting power/clks to the block). - -Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com> -Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>, -Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> - ---- - drivers/serial/8250.c | 15 +++++++-------- - include/linux/serial_8250.h | 2 ++ - include/linux/serial_core.h | 2 ++ - 3 files changed, 11 insertions(+), 8 deletions(-) - ---- a/drivers/serial/8250.c -+++ b/drivers/serial/8250.c -@@ -154,12 +154,6 @@ struct uart_8250_port { - unsigned char lsr_saved_flags; - #define MSR_SAVE_FLAGS UART_MSR_ANY_DELTA - unsigned char msr_saved_flags; -- -- /* -- * We provide a per-port pm hook. -- */ -- void (*pm)(struct uart_port *port, -- unsigned int state, unsigned int old); - }; - - struct irq_info { -@@ -2446,10 +2440,13 @@ serial8250_pm(struct uart_port *port, un - { - struct uart_8250_port *p = (struct uart_8250_port *)port; - -+ if ((p->port.pm) && (state == 0)) /* power up: call platform first */ -+ p->port.pm(port, state, oldstate); -+ - serial8250_set_sleep(p, state != 0); - -- if (p->pm) -- p->pm(port, state, oldstate); -+ if ((p->port.pm) && (state != 0)) /* power down */ -+ p->port.pm(port, state, oldstate); - } - - static unsigned int serial8250_port_size(struct uart_8250_port *pt) -@@ -3010,6 +3007,7 @@ static int __devinit serial8250_probe(st - port.serial_in = p->serial_in; - port.serial_out = p->serial_out; - port.set_termios = p->set_termios; -+ port.pm = p->pm; - port.dev = &dev->dev; - port.irqflags |= irqflag; - ret = serial8250_register_port(&port); -@@ -3161,6 +3159,7 @@ int serial8250_register_port(struct uart - uart->port.flags = port->flags | UPF_BOOT_AUTOCONF; - uart->port.mapbase = port->mapbase; - uart->port.private_data = port->private_data; -+ uart->port.pm = port->pm; - if (port->dev) - uart->port.dev = port->dev; - ---- a/include/linux/serial_8250.h -+++ b/include/linux/serial_8250.h -@@ -35,6 +35,8 @@ struct plat_serial8250_port { - void (*set_termios)(struct uart_port *, - struct ktermios *new, - struct ktermios *old); -+ void (*pm)(struct uart_port *, unsigned int state, -+ unsigned old); - }; - - /* ---- a/include/linux/serial_core.h -+++ b/include/linux/serial_core.h -@@ -289,6 +289,8 @@ struct uart_port { - void (*set_termios)(struct uart_port *, - struct ktermios *new, - struct ktermios *old); -+ void (*pm)(struct uart_port *, unsigned int state, -+ unsigned int old); - unsigned int irq; /* irq number */ - unsigned long irqflags; /* irq flags */ - unsigned int uartclk; /* base uart clock */ diff --git a/tty/alchemy-uart-pm-through-serial-framework.patch b/tty/alchemy-uart-pm-through-serial-framework.patch deleted file mode 100644 index f7ef77c2e51c1e..00000000000000 --- a/tty/alchemy-uart-pm-through-serial-framework.patch +++ /dev/null @@ -1,123 +0,0 @@ -From manuel.lauss@googlemail.com Fri Sep 24 09:43:55 2010 -From: Manuel Lauss <manuel.lauss@googlemail.com> -To: linux-serial@vger.kernel.org -Cc: Greg KH <greg@kroah.com>, - Andrew Morton <akpm@linux-foundation.org>, - Alan Cox <alan@lxorguk.ukuu.org.uk>, - Manuel Lauss <manuel.lauss@googlemail.com> -Subject: Alchemy: UART PM through serial framework. -Date: Fri, 24 Sep 2010 18:13:29 +0200 -Message-Id: <1285344809-16839-2-git-send-email-manuel.lauss@googlemail.com> - -Hook up the Alchemy on-chip uarts with the platform 8250 PM callback and -enable/disable clocks to the uart blocks as needed. This also allows to -get rid of the UART1 PM hack in the Alchemy PM code. - -Tested on Au1200. - -Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com> -Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> -Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> - ---- - arch/mips/alchemy/common/platform.c | 23 +++++++++++++++++++++++ - arch/mips/alchemy/common/power.c | 35 ----------------------------------- - 2 files changed, 23 insertions(+), 35 deletions(-) - ---- a/arch/mips/alchemy/common/platform.c -+++ b/arch/mips/alchemy/common/platform.c -@@ -24,6 +24,28 @@ - - #include <prom.h> - -+static void alchemy_8250_pm(struct uart_port *port, unsigned int state, -+ unsigned int old_state) -+{ -+ switch (state) { -+ case 0: -+ if ((__raw_readl(port->membase + UART_MOD_CNTRL) & 3) != 3) { -+ /* power-on sequence as suggested in the databooks */ -+ __raw_writel(0, port->membase + UART_MOD_CNTRL); -+ wmb(); -+ __raw_writel(1, port->membase + UART_MOD_CNTRL); -+ wmb(); -+ } -+ __raw_writel(3, port->membase + UART_MOD_CNTRL); /* full on */ -+ wmb(); -+ break; -+ case 3: /* power off */ -+ __raw_writel(0, port->membase + UART_MOD_CNTRL); -+ wmb(); -+ break; -+ } -+} -+ - #define PORT(_base, _irq) \ - { \ - .mapbase = _base, \ -@@ -33,6 +55,7 @@ - .flags = UPF_SKIP_TEST | UPF_IOREMAP | \ - UPF_FIXED_TYPE, \ - .type = PORT_16550A, \ -+ .pm = alchemy_8250_pm, \ - } - - static struct plat_serial8250_port au1x00_uart_data[] = { ---- a/arch/mips/alchemy/common/power.c -+++ b/arch/mips/alchemy/common/power.c -@@ -49,11 +49,6 @@ - * We only have to save/restore registers that aren't otherwise - * done as part of a driver pm_* function. - */ --static unsigned int sleep_uart0_inten; --static unsigned int sleep_uart0_fifoctl; --static unsigned int sleep_uart0_linectl; --static unsigned int sleep_uart0_clkdiv; --static unsigned int sleep_uart0_enable; - static unsigned int sleep_usb[2]; - static unsigned int sleep_sys_clocks[5]; - static unsigned int sleep_sys_pinfunc; -@@ -62,22 +57,6 @@ static unsigned int sleep_static_memctlr - - static void save_core_regs(void) - { -- extern void save_au1xxx_intctl(void); -- extern void pm_eth0_shutdown(void); -- -- /* -- * Do the serial ports.....these really should be a pm_* -- * registered function by the driver......but of course the -- * standard serial driver doesn't understand our Au1xxx -- * unique registers. -- */ -- sleep_uart0_inten = au_readl(UART0_ADDR + UART_IER); -- sleep_uart0_fifoctl = au_readl(UART0_ADDR + UART_FCR); -- sleep_uart0_linectl = au_readl(UART0_ADDR + UART_LCR); -- sleep_uart0_clkdiv = au_readl(UART0_ADDR + UART_CLK); -- sleep_uart0_enable = au_readl(UART0_ADDR + UART_MOD_CNTRL); -- au_sync(); -- - #ifndef CONFIG_SOC_AU1200 - /* Shutdown USB host/device. */ - sleep_usb[0] = au_readl(USB_HOST_CONFIG); -@@ -175,20 +154,6 @@ static void restore_core_regs(void) - au_writel(sleep_static_memctlr[3][0], MEM_STCFG3); - au_writel(sleep_static_memctlr[3][1], MEM_STTIME3); - au_writel(sleep_static_memctlr[3][2], MEM_STADDR3); -- -- /* -- * Enable the UART if it was enabled before sleep. -- * I guess I should define module control bits........ -- */ -- if (sleep_uart0_enable & 0x02) { -- au_writel(0, UART0_ADDR + UART_MOD_CNTRL); au_sync(); -- au_writel(1, UART0_ADDR + UART_MOD_CNTRL); au_sync(); -- au_writel(3, UART0_ADDR + UART_MOD_CNTRL); au_sync(); -- au_writel(sleep_uart0_inten, UART0_ADDR + UART_IER); au_sync(); -- au_writel(sleep_uart0_fifoctl, UART0_ADDR + UART_FCR); au_sync(); -- au_writel(sleep_uart0_linectl, UART0_ADDR + UART_LCR); au_sync(); -- au_writel(sleep_uart0_clkdiv, UART0_ADDR + UART_CLK); au_sync(); -- } - } - - void au_sleep(void) |
