LINUX_RELEASE?=1
-LINUX_VERSION-3.18 = .68
+LINUX_VERSION-3.18 = .71
-LINUX_KERNEL_MD5SUM-3.18.68 = 5022a104125feab1042d86d72d66f447
+LINUX_KERNEL_MD5SUM-3.18.71 = 98875fe779041e89c37e51b0208011ea
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))
obj-$(CONFIG_PCI_AR724X) += pci-ar724x.o
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
-@@ -1820,6 +1820,9 @@
+@@ -1821,6 +1821,9 @@
#define PCI_VENDOR_ID_CB 0x1307 /* Measurement Computing */
obj-$(CONFIG_CAVIUM_OCTEON_SOC) += msi-octeon.o
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
-@@ -1820,6 +1820,9 @@
+@@ -1821,6 +1821,9 @@
#define PCI_VENDOR_ID_CB 0x1307 /* Measurement Computing */
};
/* Uart divisor latch read */
-@@ -3174,7 +3181,11 @@ static void serial8250_console_putchar(s
+@@ -3168,7 +3175,11 @@ static void serial8250_console_putchar(s
{
struct uart_8250_port *up = up_to_u8250p(port);
--- a/drivers/net/ethernet/ti/cpmac.c
+++ b/drivers/net/ethernet/ti/cpmac.c
-@@ -1146,6 +1146,8 @@ static int cpmac_probe(struct platform_d
+@@ -1147,6 +1147,8 @@ static int cpmac_probe(struct platform_d
goto out;
}
dev->irq = platform_get_irq_byname(pdev, "irq");
dev->netdev_ops = &cpmac_netdev_ops;
-@@ -1227,7 +1229,7 @@ int cpmac_init(void)
+@@ -1228,7 +1230,7 @@ int cpmac_init(void)
cpmac_mii->reset = cpmac_mdio_reset;
cpmac_mii->irq = mii_irqs;
if (!cpmac_mii->priv) {
pr_err("Can't ioremap mdio registers\n");
-@@ -1238,10 +1240,16 @@ int cpmac_init(void)
- #warning FIXME: unhardcode gpio&reset bits
+@@ -1239,10 +1241,16 @@ int cpmac_init(void)
+ /* FIXME: unhardcode gpio&reset bits */
ar7_gpio_disable(26);
ar7_gpio_disable(27);
- ar7_device_reset(AR7_RESET_BIT_CPMAC_LO);
cpmac_mii->reset(cpmac_mii);
for (i = 0; i < 300; i++) {
-@@ -1258,7 +1266,11 @@ int cpmac_init(void)
+@@ -1259,7 +1267,11 @@ int cpmac_init(void)
mask = 0;
}
#include <linux/uaccess.h>
#include <linux/ipv6.h>
#include <linux/icmpv6.h>
-@@ -837,10 +838,10 @@ static void tcp_v6_send_response(struct
+@@ -844,10 +845,10 @@ static void tcp_v6_send_response(struct
topt = (__be32 *)(t1 + 1);
if (tsecr) {
*/
--- a/net/ipv6/datagram.c
+++ b/net/ipv6/datagram.c
-@@ -386,7 +386,7 @@ int ipv6_recv_error(struct sock *sk, str
+@@ -390,7 +390,7 @@ int ipv6_recv_error(struct sock *sk, str
ipv6_iface_scope_id(&sin->sin6_addr,
IP6CB(skb)->iif);
} else {
&sin->sin6_addr);
sin->sin6_scope_id = 0;
}
-@@ -720,12 +720,12 @@ int ip6_datagram_send_ctl(struct net *ne
+@@ -724,12 +724,12 @@ int ip6_datagram_send_ctl(struct net *ne
}
if (fl6->flowlabel&IPV6_FLOWINFO_MASK) {
case IPV6_2292HOPOPTS:
--- a/net/ipv6/ip6_gre.c
+++ b/net/ipv6/ip6_gre.c
-@@ -476,11 +476,11 @@ static int ip6gre_rcv(struct sk_buff *sk
+@@ -479,11 +479,11 @@ static int ip6gre_rcv(struct sk_buff *sk
offset += 4;
}
if (flags&GRE_KEY) {
offset += 4;
}
}
-@@ -745,7 +745,7 @@ static netdev_tx_t ip6gre_xmit2(struct s
+@@ -748,7 +748,7 @@ static netdev_tx_t ip6gre_xmit2(struct s
if (tunnel->parms.o_flags&GRE_SEQ) {
++tunnel->o_seqno;
ptr--;
}
if (tunnel->parms.o_flags&GRE_KEY) {
-@@ -841,7 +841,7 @@ static inline int ip6gre_xmit_ipv6(struc
+@@ -844,7 +844,7 @@ static inline int ip6gre_xmit_ipv6(struc
dsfield = ipv6_get_dsfield(ipv6h);
if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)
if (t->parms.flags & IP6_TNL_F_USE_ORIG_FWMARK)
--- a/net/ipv6/ip6_tunnel.c
+++ b/net/ipv6/ip6_tunnel.c
-@@ -1291,7 +1291,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
+@@ -1301,7 +1301,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str
dsfield = ipv6_get_dsfield(ipv6h);
if (t->parms.flags & IP6_TNL_F_USE_ORIG_TCLASS)
goto next_ht;
--- a/net/ipv6/ip6_offload.c
+++ b/net/ipv6/ip6_offload.c
-@@ -221,7 +221,7 @@ static struct sk_buff **ipv6_gro_receive
+@@ -224,7 +224,7 @@ static struct sk_buff **ipv6_gro_receive
continue;
iph2 = (struct ipv6hdr *)(p->data + off);
* XXX skbs on the gro_list have all been parsed and pulled
--- a/include/net/addrconf.h
+++ b/include/net/addrconf.h
-@@ -43,7 +43,7 @@ struct prefix_info {
+@@ -45,7 +45,7 @@ struct prefix_info {
__be32 reserved2;
struct in6_addr prefix;
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
-@@ -3683,14 +3683,16 @@ static bool tcp_parse_aligned_timestamp(
+@@ -3682,14 +3682,16 @@ static bool tcp_parse_aligned_timestamp(
{
const __be32 *ptr = (const __be32 *)(th + 1);
static struct amd_chipset_info {
struct pci_dev *nb_dev;
struct pci_dev *smbus_dev;
-@@ -461,6 +463,10 @@ void usb_amd_dev_put(void)
+@@ -462,6 +464,10 @@ void usb_amd_dev_put(void)
}
EXPORT_SYMBOL_GPL(usb_amd_dev_put);
/*
* Make sure the controller is completely inactive, unable to
* generate interrupts or do DMA.
-@@ -540,8 +546,17 @@ reset_needed:
+@@ -541,8 +547,17 @@ reset_needed:
uhci_reset_hc(pdev, base);
return 1;
}
static inline int io_type_enabled(struct pci_dev *pdev, unsigned int mask)
{
u16 cmd;
-@@ -1102,3 +1117,4 @@ static void quirk_usb_early_handoff(stru
+@@ -1103,3 +1118,4 @@ static void quirk_usb_early_handoff(stru
}
DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_ANY_ID, PCI_ANY_ID,
PCI_CLASS_SERIAL_USB, 8, quirk_usb_early_handoff);
return ret;
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
-@@ -827,6 +827,7 @@
+@@ -828,6 +828,7 @@
#define PCI_DEVICE_ID_TI_XX12 0x8039
#define PCI_DEVICE_ID_TI_XX12_FM 0x803b
#define PCI_DEVICE_ID_TI_XIO2000A 0x8231
unsigned long type);
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
-@@ -1050,6 +1050,12 @@
+@@ -1051,6 +1051,12 @@
#define PCI_DEVICE_ID_SGI_LITHIUM 0x1002
#define PCI_DEVICE_ID_SGI_IOC4 0x100a
#include <video/da8xx-fb.h>
#include <asm/div64.h>
-@@ -1317,12 +1318,54 @@ static struct fb_ops da8xx_fb_ops = {
+@@ -1316,12 +1317,54 @@ static struct fb_ops da8xx_fb_ops = {
.fb_blank = cfb_blank,
};
for (i = 0, lcdc_info = known_lcd_panels;
i < ARRAY_SIZE(known_lcd_panels); i++, lcdc_info++) {
if (strcmp(fb_pdata->type, lcdc_info->name) == 0)
-@@ -1351,7 +1394,7 @@ static int fb_probe(struct platform_devi
+@@ -1350,7 +1393,7 @@ static int fb_probe(struct platform_devi
int ret;
unsigned long ulcm;
dev_err(&device->dev, "Can not get platform data\n");
return -ENOENT;
}
-@@ -1391,7 +1434,10 @@ static int fb_probe(struct platform_devi
+@@ -1390,7 +1433,10 @@ static int fb_probe(struct platform_devi
break;
}
if (!lcd_cfg) {
ret = -EINVAL;
-@@ -1410,7 +1456,7 @@ static int fb_probe(struct platform_devi
+@@ -1409,7 +1455,7 @@ static int fb_probe(struct platform_devi
par->dev = &device->dev;
par->lcdc_clk = tmp_lcdc_clk;
par->lcdc_clk_rate = clk_get_rate(par->lcdc_clk);
par->panel_power_ctrl = fb_pdata->panel_power_ctrl;
par->panel_power_ctrl(1);
}
-@@ -1654,12 +1700,26 @@ static int fb_resume(struct device *dev)
+@@ -1653,12 +1699,26 @@ static int fb_resume(struct device *dev)
static SIMPLE_DEV_PM_OPS(fb_pm_ops, fb_suspend, fb_resume);
static struct fb_videomode known_lcd_panels[] = {
/* Sharp LCD035Q3DG01 */
[0] = {
-@@ -831,6 +834,32 @@ static int lcd_init(struct da8xx_fb_par
+@@ -830,6 +833,32 @@ static int lcd_init(struct da8xx_fb_par
return 0;
}
/* IRQ handler for version 2 of LCDC */
static irqreturn_t lcdc_irq_handler_rev02(int irq, void *arg)
{
-@@ -868,6 +897,8 @@ static irqreturn_t lcdc_irq_handler_rev0
+@@ -867,6 +896,8 @@ static irqreturn_t lcdc_irq_handler_rev0
LCD_DMA_FRM_BUF_CEILING_ADDR_0_REG);
par->vsync_flag = 1;
wake_up_interruptible(&par->vsync_wait);
}
if (stat & LCD_END_OF_FRAME1) {
-@@ -943,6 +974,8 @@ static irqreturn_t lcdc_irq_handler_rev0
+@@ -942,6 +973,8 @@ static irqreturn_t lcdc_irq_handler_rev0
LCD_DMA_FRM_BUF_CEILING_ADDR_1_REG);
par->vsync_flag = 1;
wake_up_interruptible(&par->vsync_wait);
--- a/drivers/video/fbdev/da8xx-fb.c
+++ b/drivers/video/fbdev/da8xx-fb.c
-@@ -909,6 +909,8 @@ static irqreturn_t lcdc_irq_handler_rev0
+@@ -908,6 +908,8 @@ static irqreturn_t lcdc_irq_handler_rev0
LCD_DMA_FRM_BUF_CEILING_ADDR_1_REG);
par->vsync_flag = 1;
wake_up_interruptible(&par->vsync_wait);
}
/* Set only when controller is disabled and at the end of
-@@ -974,8 +976,6 @@ static irqreturn_t lcdc_irq_handler_rev0
+@@ -973,8 +975,6 @@ static irqreturn_t lcdc_irq_handler_rev0
LCD_DMA_FRM_BUF_CEILING_ADDR_1_REG);
par->vsync_flag = 1;
wake_up_interruptible(&par->vsync_wait);
--- a/arch/um/include/asm/Kbuild
+++ /dev/null
-@@ -1,30 +0,0 @@
+@@ -1,31 +0,0 @@
-generic-y += barrier.h
-generic-y += bug.h
-generic-y += clkdev.h
-generic-y += switch_to.h
-generic-y += topology.h
-generic-y += trace_clock.h
+-generic-y += word-at-a-time.h
-generic-y += xor.h
--- a/arch/um/include/asm/a.out-core.h
+++ /dev/null
--- a/arch/mips/jz4740/board-qi_lb60.c
+++ b/arch/mips/jz4740/board-qi_lb60.c
-@@ -312,7 +312,6 @@ static struct spi_board_info qi_lb60_spi
+@@ -313,7 +313,6 @@ static struct spi_board_info qi_lb60_spi
.chip_select = 0,
.bus_num = 1,
.max_speed_hz = 30 * 1000,