Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm: (24 commits)
ARM: force dcache flush if dcache_dirty bit set
[ARM] pxa: workaround errata #37 by not using half turbo switching
[ARM] pxamci: fix printing gpio numbers in pxamci_probe
[ARM] pxa/csb726: adjust duplicate structure field initialization
ARM: Add kmap_atomic type debugging
ARM: boolean bit testing
ARM: update die() output
ARM: Dump code/mem oops lines with the appropriate log level
ARM: Dump memory and backtrace as one printk per line
ARM: 5756/1: ep93xx: introduce clk parent
ARM: 5754/1: ep93xx: update i2c support
ARM: 5753/1: ep93xx: remove old EP93XX_GPIO_* defines
ARM: 5729/1: ep93xx: define EP93XX_*_PHYS_BASE with macros
ARM: 5751/1: ep93xx/micro9: Add Micro9-Slim
ARM: 5750/1: ep93xx/micro9: Update platform code
ARM: 5749/1: ep93xx/micro9: Update maintainer
ARM: 5752/1: SA1100: fix building of h3100
ARM: 5748/1: bcmring: fix build warning messages
ARM: 5747/1: Fix the start_pg value in free_memmap()
ARM: 5746/1: Handle possible translation errors in ARMv6/v7 coherent_user_range
...
diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c
index 1689bda..dcc7244 100644
--- a/drivers/serial/serial_core.c
+++ b/drivers/serial/serial_core.c
@@ -1270,6 +1270,9 @@
BUG_ON(!kernel_locked());
+ if (!state)
+ return;
+
uport = state->uart_port;
port = &state->port;
@@ -1316,9 +1319,9 @@
*/
if (port->flags & ASYNC_INITIALIZED) {
unsigned long flags;
- spin_lock_irqsave(&port->lock, flags);
+ spin_lock_irqsave(&uport->lock, flags);
uport->ops->stop_rx(uport);
- spin_unlock_irqrestore(&port->lock, flags);
+ spin_unlock_irqrestore(&uport->lock, flags);
/*
* Before we drop DTR, make sure the UART transmitter
* has completely drained; this is especially
diff --git a/drivers/usb/host/pci-quirks.c b/drivers/usb/host/pci-quirks.c
index 23cf3bd..83b5f9c 100644
--- a/drivers/usb/host/pci-quirks.c
+++ b/drivers/usb/host/pci-quirks.c
@@ -475,4 +475,4 @@
else if (pdev->class == PCI_CLASS_SERIAL_USB_XHCI)
quirk_usb_handoff_xhci(pdev);
}
-DECLARE_PCI_FIXUP_HEADER(PCI_ANY_ID, PCI_ANY_ID, quirk_usb_early_handoff);
+DECLARE_PCI_FIXUP_FINAL(PCI_ANY_ID, PCI_ANY_ID, quirk_usb_early_handoff);
diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig
index 760e727..b84abd8 100644
--- a/drivers/usb/musb/Kconfig
+++ b/drivers/usb/musb/Kconfig
@@ -9,7 +9,7 @@
# (M)HDRC = (Multipoint) Highspeed Dual-Role Controller
config USB_MUSB_HDRC
depends on (USB || USB_GADGET)
- depends on !SUPERH
+ depends on (ARM || BLACKFIN)
select NOP_USB_XCEIV if ARCH_DAVINCI
select TWL4030_USB if MACH_OMAP_3430SDP
select NOP_USB_XCEIV if MACH_OMAP3EVM
diff --git a/fs/nfs/super.c b/fs/nfs/super.c
index 6dabf6f..a2c18ac 100644
--- a/fs/nfs/super.c
+++ b/fs/nfs/super.c
@@ -1848,8 +1848,8 @@
data->timeo != (10U * nfss->client->cl_timeout->to_initval / HZ) ||
data->nfs_server.port != nfss->port ||
data->nfs_server.addrlen != nfss->nfs_client->cl_addrlen ||
- !rpc_cmp_addr(&data->nfs_server.address,
- &nfss->nfs_client->cl_addr))
+ !rpc_cmp_addr((struct sockaddr *)&data->nfs_server.address,
+ (struct sockaddr *)&nfss->nfs_client->cl_addr))
return -EINVAL;
return 0;