Kernel: bump to 4.4.44

Bump kernel to 4.4.44. Compile-tested on ar71xx, ramips/mt7621 and x86/64.

.44 has been run-tested on the 17.01 branch here on ar71xx and mt7621.

Signed-off-by: Stijn Segers <francesco.borromini@inventati.org>
(cherry picked from commit 20996edd68)
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>

Conflicts:
	target/linux/ar71xx/patches-4.4/920-usb-chipidea-AR933x-platform-support.patch
	target/linux/ar71xx/patches-4.4/930-chipidea-pullup.patch
This commit is contained in:
Stijn Segers 2017-01-21 18:30:10 +01:00 committed by Stijn Tintel
parent 518bb7ae5a
commit ee3067c588
14 changed files with 41 additions and 76 deletions

View file

@ -3,10 +3,10 @@
LINUX_RELEASE?=1 LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .43 LINUX_VERSION-3.18 = .43
LINUX_VERSION-4.4 = .42 LINUX_VERSION-4.4 = .44
LINUX_KERNEL_HASH-3.18.43 = 1236e8123a6ce537d5029232560966feed054ae31776fe8481dd7d18cdd5492c LINUX_KERNEL_HASH-3.18.43 = 1236e8123a6ce537d5029232560966feed054ae31776fe8481dd7d18cdd5492c
LINUX_KERNEL_HASH-4.4.42 = 324747568e92f203e3ee5ec8b291a868f58b870f1ad214fa64aa3507ed42e878 LINUX_KERNEL_HASH-4.4.44 = fabdcf2703f22a5b8aa3a3407909f18fdeea610c3d0f418fdc29123ed04de748
ifdef KERNEL_PATCHVER ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER))) LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))

View file

@ -491,7 +491,7 @@
memcpy(p, foc->val, foc->len); memcpy(p, foc->val, foc->len);
--- a/net/ipv4/igmp.c --- a/net/ipv4/igmp.c
+++ b/net/ipv4/igmp.c +++ b/net/ipv4/igmp.c
@@ -500,7 +500,7 @@ static struct sk_buff *add_grec(struct s @@ -505,7 +505,7 @@ static struct sk_buff *add_grec(struct s
if (!skb) if (!skb)
return NULL; return NULL;
psrc = (__be32 *)skb_put(skb, sizeof(__be32)); psrc = (__be32 *)skb_put(skb, sizeof(__be32));
@ -610,7 +610,7 @@
goto next_ht; goto next_ht;
--- a/net/ipv6/ip6_offload.c --- a/net/ipv6/ip6_offload.c
+++ b/net/ipv6/ip6_offload.c +++ b/net/ipv6/ip6_offload.c
@@ -221,7 +221,7 @@ static struct sk_buff **ipv6_gro_receive @@ -222,7 +222,7 @@ static struct sk_buff **ipv6_gro_receive
continue; continue;
iph2 = (struct ipv6hdr *)(p->data + off); iph2 = (struct ipv6hdr *)(p->data + off);

View file

@ -14,7 +14,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net>
--- a/mm/page_alloc.c --- a/mm/page_alloc.c
+++ b/mm/page_alloc.c +++ b/mm/page_alloc.c
@@ -6782,8 +6782,6 @@ int alloc_contig_range(unsigned long sta @@ -6785,8 +6785,6 @@ int alloc_contig_range(unsigned long sta
/* Make sure the range is really isolated. */ /* Make sure the range is really isolated. */
if (test_pages_isolated(outer_start, end, false)) { if (test_pages_isolated(outer_start, end, false)) {

View file

@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/core/dev.c --- a/net/core/dev.c
+++ b/net/core/dev.c +++ b/net/core/dev.c
@@ -4222,6 +4222,9 @@ static enum gro_result dev_gro_receive(s @@ -4224,6 +4224,9 @@ static enum gro_result dev_gro_receive(s
enum gro_result ret; enum gro_result ret;
int grow; int grow;
@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!(skb->dev->features & NETIF_F_GRO)) if (!(skb->dev->features & NETIF_F_GRO))
goto normal; goto normal;
@@ -5381,6 +5384,48 @@ static void __netdev_adjacent_dev_unlink @@ -5383,6 +5386,48 @@ static void __netdev_adjacent_dev_unlink
&upper_dev->adj_list.lower); &upper_dev->adj_list.lower);
} }
@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static int __netdev_upper_dev_link(struct net_device *dev, static int __netdev_upper_dev_link(struct net_device *dev,
struct net_device *upper_dev, bool master, struct net_device *upper_dev, bool master,
void *private) void *private)
@@ -5452,6 +5497,7 @@ static int __netdev_upper_dev_link(struc @@ -5454,6 +5499,7 @@ static int __netdev_upper_dev_link(struc
goto rollback_lower_mesh; goto rollback_lower_mesh;
} }
@ -84,7 +84,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info); &changeupper_info.info);
return 0; return 0;
@@ -5578,6 +5624,7 @@ void netdev_upper_dev_unlink(struct net_ @@ -5580,6 +5626,7 @@ void netdev_upper_dev_unlink(struct net_
list_for_each_entry(i, &upper_dev->all_adj_list.upper, list) list_for_each_entry(i, &upper_dev->all_adj_list.upper, list)
__netdev_adjacent_dev_unlink(dev, i->dev, i->ref_nr); __netdev_adjacent_dev_unlink(dev, i->dev, i->ref_nr);
@ -92,7 +92,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info); &changeupper_info.info);
} }
@@ -6118,6 +6165,7 @@ int dev_set_mac_address(struct net_devic @@ -6120,6 +6167,7 @@ int dev_set_mac_address(struct net_devic
if (err) if (err)
return err; return err;
dev->addr_assign_type = NET_ADDR_SET; dev->addr_assign_type = NET_ADDR_SET;

View file

@ -19,8 +19,6 @@ Signed-off-by: Petr Štetiar <ynezz@true.cz>
drivers/tty/serial/imx.c | 23 +++++++++++++++++------ drivers/tty/serial/imx.c | 23 +++++++++++++++++------
1 file changed, 17 insertions(+), 6 deletions(-) 1 file changed, 17 insertions(+), 6 deletions(-)
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 76818f5..086675e 100644
--- a/drivers/tty/serial/imx.c --- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c +++ b/drivers/tty/serial/imx.c
@@ -148,8 +148,11 @@ @@ -148,8 +148,11 @@
@ -35,7 +33,7 @@ index 76818f5..086675e 100644
#define USR2_RTSF (1<<4) /* RTS edge interrupt flag */ #define USR2_RTSF (1<<4) /* RTS edge interrupt flag */
#define USR2_TXDC (1<<3) /* Transmitter complete */ #define USR2_TXDC (1<<3) /* Transmitter complete */
#define USR2_BRCD (1<<2) /* Break condition */ #define USR2_BRCD (1<<2) /* Break condition */
@@ -804,16 +807,19 @@ static unsigned int imx_tx_empty(struct uart_port *port) @@ -804,16 +807,19 @@ static unsigned int imx_tx_empty(struct
static unsigned int imx_get_mctrl(struct uart_port *port) static unsigned int imx_get_mctrl(struct uart_port *port)
{ {
struct imx_port *sport = (struct imx_port *)port; struct imx_port *sport = (struct imx_port *)port;
@ -49,19 +47,20 @@ index 76818f5..086675e 100644
- if (readl(sport->port.membase + UCR2) & UCR2_CTS) - if (readl(sport->port.membase + UCR2) & UCR2_CTS)
- tmp |= TIOCM_RTS; - tmp |= TIOCM_RTS;
-
- if (readl(sport->port.membase + uts_reg(sport)) & UTS_LOOP)
- tmp |= TIOCM_LOOP;
+ /* in DCE mode DCDIN is always 0 */ + /* in DCE mode DCDIN is always 0 */
+ if (!(usr1 & USR2_DCDIN)) + if (!(usr1 & USR2_DCDIN))
+ tmp |= TIOCM_CAR; + tmp |= TIOCM_CAR;
+
- if (readl(sport->port.membase + uts_reg(sport)) & UTS_LOOP)
- tmp |= TIOCM_LOOP;
+ /* in DCE mode RIIN is always 0 */ + /* in DCE mode RIIN is always 0 */
+ if (readl(sport->port.membase + USR2) & USR2_RIIN) + if (readl(sport->port.membase + USR2) & USR2_RIIN)
+ tmp |= TIOCM_RI; + tmp |= TIOCM_RI;
return tmp; return tmp;
} }
@@ -831,6 +837,11 @@ static void imx_set_mctrl(struct uart_port *port, unsigned int mctrl) @@ -831,6 +837,11 @@ static void imx_set_mctrl(struct uart_po
writel(temp, sport->port.membase + UCR2); writel(temp, sport->port.membase + UCR2);
} }
@ -73,6 +72,3 @@ index 76818f5..086675e 100644
temp = readl(sport->port.membase + uts_reg(sport)) & ~UTS_LOOP; temp = readl(sport->port.membase + uts_reg(sport)) & ~UTS_LOOP;
if (mctrl & TIOCM_LOOP) if (mctrl & TIOCM_LOOP)
temp |= UTS_LOOP; temp |= UTS_LOOP;
--
1.9.1

View file

@ -16,11 +16,9 @@ Signed-off-by: Petr Štetiar <ynezz@true.cz>
drivers/tty/serial/imx.c | 6 +++--- drivers/tty/serial/imx.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-) 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 231e7d5..bfc4555 100644
--- a/drivers/tty/serial/imx.c --- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c +++ b/drivers/tty/serial/imx.c
@@ -797,9 +797,9 @@ static unsigned int imx_get_hwmctrl(struct imx_port *sport) @@ -817,9 +817,9 @@ static unsigned int imx_get_mctrl(struct
if (!(usr1 & USR2_DCDIN)) if (!(usr1 & USR2_DCDIN))
tmp |= TIOCM_CAR; tmp |= TIOCM_CAR;
@ -33,6 +31,3 @@ index 231e7d5..bfc4555 100644
return tmp; return tmp;
} }
--
1.9.1

View file

@ -16,11 +16,9 @@ Signed-off-by: Petr Štetiar <ynezz@true.cz>
drivers/tty/serial/imx.c | 17 +++++++++++++---- drivers/tty/serial/imx.c | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-) 1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index bfc4555..5ced61e 100644
--- a/drivers/tty/serial/imx.c --- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c +++ b/drivers/tty/serial/imx.c
@@ -734,6 +734,7 @@ static irqreturn_t imx_int(int irq, void *dev_id) @@ -753,6 +753,7 @@ static irqreturn_t imx_int(int irq, void
struct imx_port *sport = dev_id; struct imx_port *sport = dev_id;
unsigned int sts; unsigned int sts;
unsigned int sts2; unsigned int sts2;
@ -28,7 +26,7 @@ index bfc4555..5ced61e 100644
sts = readl(sport->port.membase + USR1); sts = readl(sport->port.membase + USR1);
sts2 = readl(sport->port.membase + USR2); sts2 = readl(sport->port.membase + USR2);
@@ -743,26 +744,34 @@ static irqreturn_t imx_int(int irq, void *dev_id) @@ -762,26 +763,34 @@ static irqreturn_t imx_int(int irq, void
imx_dma_rxint(sport); imx_dma_rxint(sport);
else else
imx_rxint(irq, dev_id); imx_rxint(irq, dev_id);
@ -67,6 +65,3 @@ index bfc4555..5ced61e 100644
} }
/* /*
--
1.9.1

View file

@ -18,11 +18,9 @@ Signed-off-by: Petr Štetiar <ynezz@true.cz>
drivers/tty/serial/imx.c | 23 ++++++++++++++++++++++- drivers/tty/serial/imx.c | 23 ++++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-) 1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 5ced61e..fcd48fd 100644
--- a/drivers/tty/serial/imx.c --- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c +++ b/drivers/tty/serial/imx.c
@@ -1221,11 +1221,32 @@ static int imx_startup(struct uart_port *port) @@ -1184,11 +1184,32 @@ static int imx_startup(struct uart_port
temp |= (UCR2_RXEN | UCR2_TXEN); temp |= (UCR2_RXEN | UCR2_TXEN);
if (!sport->have_rtscts) if (!sport->have_rtscts)
temp |= UCR2_IRTS; temp |= UCR2_IRTS;
@ -56,6 +54,3 @@ index 5ced61e..fcd48fd 100644
writel(temp, sport->port.membase + UCR3); writel(temp, sport->port.membase + UCR3);
} }
--
1.9.1

View file

@ -1428,7 +1428,7 @@ Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
/* /*
* Returns zero if the TRB isn't in this segment, otherwise it returns the DMA * Returns zero if the TRB isn't in this segment, otherwise it returns the DMA
@@ -3121,17 +3122,22 @@ static u32 xhci_td_remainder(struct xhci @@ -3110,17 +3111,22 @@ static u32 xhci_td_remainder(struct xhci
{ {
u32 maxp, total_packet_count; u32 maxp, total_packet_count;
@ -1455,7 +1455,7 @@ Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
/* Queueing functions don't count the current TRB into transferred */ /* Queueing functions don't count the current TRB into transferred */
return (total_packet_count - ((transferred + trb_buff_len) / maxp)); return (total_packet_count - ((transferred + trb_buff_len) / maxp));
} }
@@ -3519,7 +3525,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd * @@ -3508,7 +3514,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
field |= 0x1; field |= 0x1;
/* xHCI 1.0/1.1 6.4.1.2.1: Transfer Type field */ /* xHCI 1.0/1.1 6.4.1.2.1: Transfer Type field */
@ -1487,7 +1487,7 @@ Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
writel(temp, &xhci->ir_set->irq_control); writel(temp, &xhci->ir_set->irq_control);
/* Set the HCD state before we enable the irqs */ /* Set the HCD state before we enable the irqs */
@@ -1704,6 +1709,9 @@ int xhci_drop_endpoint(struct usb_hcd *h @@ -1691,6 +1696,9 @@ int xhci_drop_endpoint(struct usb_hcd *h
xhci_endpoint_zero(xhci, xhci->devs[udev->slot_id], ep); xhci_endpoint_zero(xhci, xhci->devs[udev->slot_id], ep);
@ -1497,7 +1497,7 @@ Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
xhci_dbg(xhci, "drop ep 0x%x, slot id %d, new drop flags = %#x, new add flags = %#x\n", xhci_dbg(xhci, "drop ep 0x%x, slot id %d, new drop flags = %#x, new add flags = %#x\n",
(unsigned int) ep->desc.bEndpointAddress, (unsigned int) ep->desc.bEndpointAddress,
udev->slot_id, udev->slot_id,
@@ -1799,6 +1807,15 @@ int xhci_add_endpoint(struct usb_hcd *hc @@ -1786,6 +1794,15 @@ int xhci_add_endpoint(struct usb_hcd *hc
return -ENOMEM; return -ENOMEM;
} }

View file

@ -1420,7 +1420,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
/* /*
* Returns zero if the TRB isn't in this segment, otherwise it returns the DMA * Returns zero if the TRB isn't in this segment, otherwise it returns the DMA
@@ -3121,17 +3122,22 @@ static u32 xhci_td_remainder(struct xhci @@ -3110,17 +3111,22 @@ static u32 xhci_td_remainder(struct xhci
{ {
u32 maxp, total_packet_count; u32 maxp, total_packet_count;
@ -1447,7 +1447,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
/* Queueing functions don't count the current TRB into transferred */ /* Queueing functions don't count the current TRB into transferred */
return (total_packet_count - ((transferred + trb_buff_len) / maxp)); return (total_packet_count - ((transferred + trb_buff_len) / maxp));
} }
@@ -3519,7 +3525,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd * @@ -3508,7 +3514,7 @@ int xhci_queue_ctrl_tx(struct xhci_hcd *
field |= 0x1; field |= 0x1;
/* xHCI 1.0/1.1 6.4.1.2.1: Transfer Type field */ /* xHCI 1.0/1.1 6.4.1.2.1: Transfer Type field */
@ -1479,7 +1479,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
writel(temp, &xhci->ir_set->irq_control); writel(temp, &xhci->ir_set->irq_control);
/* Set the HCD state before we enable the irqs */ /* Set the HCD state before we enable the irqs */
@@ -1704,6 +1709,9 @@ int xhci_drop_endpoint(struct usb_hcd *h @@ -1691,6 +1696,9 @@ int xhci_drop_endpoint(struct usb_hcd *h
xhci_endpoint_zero(xhci, xhci->devs[udev->slot_id], ep); xhci_endpoint_zero(xhci, xhci->devs[udev->slot_id], ep);
@ -1489,7 +1489,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
xhci_dbg(xhci, "drop ep 0x%x, slot id %d, new drop flags = %#x, new add flags = %#x\n", xhci_dbg(xhci, "drop ep 0x%x, slot id %d, new drop flags = %#x, new add flags = %#x\n",
(unsigned int) ep->desc.bEndpointAddress, (unsigned int) ep->desc.bEndpointAddress,
udev->slot_id, udev->slot_id,
@@ -1799,6 +1807,15 @@ int xhci_add_endpoint(struct usb_hcd *hc @@ -1786,6 +1794,15 @@ int xhci_add_endpoint(struct usb_hcd *hc
return -ENOMEM; return -ENOMEM;
} }

View file

@ -13,11 +13,9 @@ Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/watchdog/sp5100_tco.c | 2 ++ drivers/watchdog/sp5100_tco.c | 2 ++
1 file changed, 2 insertions(+) 1 file changed, 2 insertions(+)
diff --git a/drivers/watchdog/sp5100_tco.c b/drivers/watchdog/sp5100_tco.c
index eb8044e..ef039f8 100644
--- a/drivers/watchdog/sp5100_tco.c --- a/drivers/watchdog/sp5100_tco.c
+++ b/drivers/watchdog/sp5100_tco.c +++ b/drivers/watchdog/sp5100_tco.c
@@ -306,6 +306,8 @@ static struct miscdevice sp5100_tco_miscdev = { @@ -306,6 +306,8 @@ static struct miscdevice sp5100_tco_misc
static const struct pci_device_id sp5100_tco_pci_tbl[] = { static const struct pci_device_id sp5100_tco_pci_tbl[] = {
{ PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SBX00_SMBUS, PCI_ANY_ID, { PCI_VENDOR_ID_ATI, PCI_DEVICE_ID_ATI_SBX00_SMBUS, PCI_ANY_ID,
PCI_ANY_ID, }, PCI_ANY_ID, },
@ -26,5 +24,3 @@ index eb8044e..ef039f8 100644
{ 0, }, /* End of list */ { 0, }, /* End of list */
}; };
MODULE_DEVICE_TABLE(pci, sp5100_tco_pci_tbl); MODULE_DEVICE_TABLE(pci, sp5100_tco_pci_tbl);
--
2.7.4

View file

@ -14,11 +14,9 @@ Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/watchdog/sp5100_tco.c | 2 ++ drivers/watchdog/sp5100_tco.c | 2 ++
1 file changed, 2 insertions(+) 1 file changed, 2 insertions(+)
diff --git a/drivers/watchdog/sp5100_tco.c b/drivers/watchdog/sp5100_tco.c
index ef039f8..0ccadb4 100644
--- a/drivers/watchdog/sp5100_tco.c --- a/drivers/watchdog/sp5100_tco.c
+++ b/drivers/watchdog/sp5100_tco.c +++ b/drivers/watchdog/sp5100_tco.c
@@ -308,6 +308,8 @@ static const struct pci_device_id sp5100_tco_pci_tbl[] = { @@ -308,6 +308,8 @@ static const struct pci_device_id sp5100
PCI_ANY_ID, }, PCI_ANY_ID, },
{ PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_HUDSON2_SMBUS, PCI_ANY_ID, { PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_HUDSON2_SMBUS, PCI_ANY_ID,
PCI_ANY_ID, }, PCI_ANY_ID, },
@ -27,5 +25,3 @@ index ef039f8..0ccadb4 100644
{ 0, }, /* End of list */ { 0, }, /* End of list */
}; };
MODULE_DEVICE_TABLE(pci, sp5100_tco_pci_tbl); MODULE_DEVICE_TABLE(pci, sp5100_tco_pci_tbl);
--
2.7.4

View file

@ -15,19 +15,17 @@ Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/watchdog/sp5100_tco.c | 28 ++++++++++++++++------------ drivers/watchdog/sp5100_tco.c | 28 ++++++++++++++++------------
1 file changed, 16 insertions(+), 12 deletions(-) 1 file changed, 16 insertions(+), 12 deletions(-)
diff --git a/drivers/watchdog/sp5100_tco.c b/drivers/watchdog/sp5100_tco.c
index 0ccadb4..6467b91 100644
--- a/drivers/watchdog/sp5100_tco.c --- a/drivers/watchdog/sp5100_tco.c
+++ b/drivers/watchdog/sp5100_tco.c +++ b/drivers/watchdog/sp5100_tco.c
@@ -335,21 +335,24 @@ static unsigned char sp5100_tco_setupdevice(void) @@ -335,21 +335,24 @@ static unsigned char sp5100_tco_setupdev
if (!sp5100_tco_pci) if (!sp5100_tco_pci)
return 0; return 0;
- pr_info("PCI Revision ID: 0x%x\n", sp5100_tco_pci->revision); - pr_info("PCI Revision ID: 0x%x\n", sp5100_tco_pci->revision);
+ pr_info("PCI Vendor ID: 0x%x, Device ID: 0x%x, Revision ID: 0x%x\n", + pr_info("PCI Vendor ID: 0x%x, Device ID: 0x%x, Revision ID: 0x%x\n",
+ sp5100_tco_pci->vendor, sp5100_tco_pci->device, + sp5100_tco_pci->vendor, sp5100_tco_pci->device,
+ sp5100_tco_pci->revision); + sp5100_tco_pci->revision);
/* /*
* Determine type of southbridge chipset. * Determine type of southbridge chipset.
*/ */
@ -49,9 +47,9 @@ index 0ccadb4..6467b91 100644
+ data_reg = SB800_IO_PM_DATA_REG; + data_reg = SB800_IO_PM_DATA_REG;
+ base_addr = SB800_PM_WATCHDOG_BASE; + base_addr = SB800_PM_WATCHDOG_BASE;
} }
/* Request the IO ports used by this driver */ /* Request the IO ports used by this driver */
@@ -385,7 +388,12 @@ static unsigned char sp5100_tco_setupdevice(void) @@ -385,7 +388,12 @@ static unsigned char sp5100_tco_setupdev
* Secondly, Find the watchdog timer MMIO address * Secondly, Find the watchdog timer MMIO address
* from SBResource_MMIO register. * from SBResource_MMIO register.
*/ */
@ -65,7 +63,7 @@ index 0ccadb4..6467b91 100644
/* Read SBResource_MMIO from AcpiMmioEn(PM_Reg: 24h) */ /* Read SBResource_MMIO from AcpiMmioEn(PM_Reg: 24h) */
outb(SB800_PM_ACPI_MMIO_EN+3, SB800_IO_PM_INDEX_REG); outb(SB800_PM_ACPI_MMIO_EN+3, SB800_IO_PM_INDEX_REG);
val = inb(SB800_IO_PM_DATA_REG); val = inb(SB800_IO_PM_DATA_REG);
@@ -395,10 +403,6 @@ static unsigned char sp5100_tco_setupdevice(void) @@ -395,10 +403,6 @@ static unsigned char sp5100_tco_setupdev
val = val << 8 | inb(SB800_IO_PM_DATA_REG); val = val << 8 | inb(SB800_IO_PM_DATA_REG);
outb(SB800_PM_ACPI_MMIO_EN+0, SB800_IO_PM_INDEX_REG); outb(SB800_PM_ACPI_MMIO_EN+0, SB800_IO_PM_INDEX_REG);
val = val << 8 | inb(SB800_IO_PM_DATA_REG); val = val << 8 | inb(SB800_IO_PM_DATA_REG);
@ -74,7 +72,5 @@ index 0ccadb4..6467b91 100644
- pci_read_config_dword(sp5100_tco_pci, - pci_read_config_dword(sp5100_tco_pci,
- SP5100_SB_RESOURCE_MMIO_BASE, &val); - SP5100_SB_RESOURCE_MMIO_BASE, &val);
} }
/* The SBResource_MMIO is enabled and mapped memory space? */ /* The SBResource_MMIO is enabled and mapped memory space? */
--
2.7.4

View file

@ -25,11 +25,9 @@ Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
drivers/watchdog/sp5100_tco.c | 15 ++++++++++----- drivers/watchdog/sp5100_tco.c | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-) 1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/drivers/watchdog/sp5100_tco.c b/drivers/watchdog/sp5100_tco.c
index 6467b91..028618c 100644
--- a/drivers/watchdog/sp5100_tco.c --- a/drivers/watchdog/sp5100_tco.c
+++ b/drivers/watchdog/sp5100_tco.c +++ b/drivers/watchdog/sp5100_tco.c
@@ -73,6 +73,13 @@ MODULE_PARM_DESC(nowayout, "Watchdog cannot be stopped once started." @@ -73,6 +73,13 @@ MODULE_PARM_DESC(nowayout, "Watchdog can
/* /*
* Some TCO specific functions * Some TCO specific functions
*/ */
@ -46,13 +44,13 @@ index 6467b91..028618c 100644
@@ -129,7 +136,7 @@ static void tco_timer_enable(void) @@ -129,7 +136,7 @@ static void tco_timer_enable(void)
{ {
int val; int val;
- if (sp5100_tco_pci->revision >= 0x40) { - if (sp5100_tco_pci->revision >= 0x40) {
+ if (!tco_has_sp5100_reg_layout(sp5100_tco_pci)) { + if (!tco_has_sp5100_reg_layout(sp5100_tco_pci)) {
/* For SB800 or later */ /* For SB800 or later */
/* Set the Watchdog timer resolution to 1 sec */ /* Set the Watchdog timer resolution to 1 sec */
outb(SB800_PM_WATCHDOG_CONFIG, SB800_IO_PM_INDEX_REG); outb(SB800_PM_WATCHDOG_CONFIG, SB800_IO_PM_INDEX_REG);
@@ -342,8 +349,7 @@ static unsigned char sp5100_tco_setupdevice(void) @@ -342,8 +349,7 @@ static unsigned char sp5100_tco_setupdev
/* /*
* Determine type of southbridge chipset. * Determine type of southbridge chipset.
*/ */
@ -62,7 +60,7 @@ index 6467b91..028618c 100644
dev_name = SP5100_DEVNAME; dev_name = SP5100_DEVNAME;
index_reg = SP5100_IO_PM_INDEX_REG; index_reg = SP5100_IO_PM_INDEX_REG;
data_reg = SP5100_IO_PM_DATA_REG; data_reg = SP5100_IO_PM_DATA_REG;
@@ -388,8 +394,7 @@ static unsigned char sp5100_tco_setupdevice(void) @@ -388,8 +394,7 @@ static unsigned char sp5100_tco_setupdev
* Secondly, Find the watchdog timer MMIO address * Secondly, Find the watchdog timer MMIO address
* from SBResource_MMIO register. * from SBResource_MMIO register.
*/ */
@ -72,5 +70,3 @@ index 6467b91..028618c 100644
/* Read SBResource_MMIO from PCI config(PCI_Reg: 9Ch) */ /* Read SBResource_MMIO from PCI config(PCI_Reg: 9Ch) */
pci_read_config_dword(sp5100_tco_pci, pci_read_config_dword(sp5100_tco_pci,
SP5100_SB_RESOURCE_MMIO_BASE, &val); SP5100_SB_RESOURCE_MMIO_BASE, &val);
--
2.7.4