* [PATCH 0/4] Pull request for 'sis190' branch
@ 2007-12-10 22:27 Francois Romieu
2007-12-10 22:29 ` [PATCH 1/4] sis190: add cmos ram access code for the SiS19x/968 chipset pair Francois Romieu
` (4 more replies)
0 siblings, 5 replies; 7+ messages in thread
From: Francois Romieu @ 2007-12-10 22:27 UTC (permalink / raw)
To: jeff; +Cc: Andrew Morton, netdev, K.M. Liu
Please pull from branch 'sis190' in repository
git://git.kernel.org/pub/scm/linux/kernel/git/romieu/netdev-2.6.git sis190
to get the changes below.
Distance from 'upstream-linus' (7962024e9d16e9349d76b553326f3fa7be64305e)
-------------------------------------------------------------------------
c27e14e508664471b8e44ef1f81ec080213ea314
348de67fe200e25d8cb80cff35642192436cfeda
004a22d03d62cd08e5287273a5143447db009cd0
14deb44ffe7220be2de697d616f28cce17e72297
Diffstat
--------
drivers/net/sis190.c | 21 ++++++++++-----------
1 files changed, 10 insertions(+), 11 deletions(-)
Shortlog
--------
Francois Romieu (4):
sis190: add cmos ram access code for the SiS19x/968 chipset pair
sis190: remove duplicate INIT_WORK
sis190: mdio operation failure is not correctly detected
sis190: scheduling while atomic error
Patch
-----
diff --git a/drivers/net/sis190.c b/drivers/net/sis190.c
index 7200883..c0db182 100644
--- a/drivers/net/sis190.c
+++ b/drivers/net/sis190.c
@@ -372,7 +372,7 @@ static void __mdio_cmd(void __iomem *ioaddr, u32 ctl)
msleep(1);
}
- if (i > 999)
+ if (i > 99)
printk(KERN_ERR PFX "PHY command failed !\n");
}
@@ -847,10 +847,8 @@ static void sis190_soft_reset(void __iomem *ioaddr)
{
SIS_W32(IntrControl, 0x8000);
SIS_PCI_COMMIT();
- msleep(1);
SIS_W32(IntrControl, 0x0);
sis190_asic_down(ioaddr);
- msleep(1);
}
static void sis190_hw_start(struct net_device *dev)
@@ -1041,8 +1039,6 @@ static int sis190_open(struct net_device *dev)
if (rc < 0)
goto err_free_rx_1;
- INIT_WORK(&tp->phy_task, sis190_phy_task);
-
sis190_request_timer(dev);
rc = request_irq(dev->irq, sis190_interrupt, IRQF_SHARED, dev->name, dev);
@@ -1549,28 +1545,31 @@ static int __devinit sis190_get_mac_addr_from_eeprom(struct pci_dev *pdev,
}
/**
- * sis190_get_mac_addr_from_apc - Get MAC address for SiS965 model
+ * sis190_get_mac_addr_from_apc - Get MAC address for SiS96x model
* @pdev: PCI device
* @dev: network device to get address for
*
- * SiS965 model, use APC CMOS RAM to store MAC address.
+ * SiS96x model, use APC CMOS RAM to store MAC address.
* APC CMOS RAM is accessed through ISA bridge.
* MAC address is read into @net_dev->dev_addr.
*/
static int __devinit sis190_get_mac_addr_from_apc(struct pci_dev *pdev,
struct net_device *dev)
{
+ static const u16 __devinitdata ids[] = { 0x0965, 0x0966, 0x0968 };
struct sis190_private *tp = netdev_priv(dev);
struct pci_dev *isa_bridge;
u8 reg, tmp8;
- int i;
+ unsigned int i;
net_probe(tp, KERN_INFO "%s: Read MAC address from APC.\n",
pci_name(pdev));
- isa_bridge = pci_get_device(PCI_VENDOR_ID_SI, 0x0965, NULL);
- if (!isa_bridge)
- isa_bridge = pci_get_device(PCI_VENDOR_ID_SI, 0x0966, NULL);
+ for (i = 0; i < ARRAY_SIZE(ids); i++) {
+ isa_bridge = pci_get_device(PCI_VENDOR_ID_SI, ids[i], NULL);
+ if (isa_bridge)
+ break;
+ }
if (!isa_bridge) {
net_probe(tp, KERN_INFO "%s: Can not find ISA bridge.\n",
--
Ueimor
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 1/4] sis190: add cmos ram access code for the SiS19x/968 chipset pair
2007-12-10 22:27 [PATCH 0/4] Pull request for 'sis190' branch Francois Romieu
@ 2007-12-10 22:29 ` Francois Romieu
2007-12-10 22:30 ` [PATCH 2/4] sis190: remove duplicate INIT_WORK Francois Romieu
` (3 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Francois Romieu @ 2007-12-10 22:29 UTC (permalink / raw)
To: jeff
Cc: Andrew Morton, netdev, K.M. Liu, J. Gleacher,
Alexandre Penasso Teixeira, Arliton Rocha, Juan Jose Pablos,
Wipat Srutiprom
More work is needed to handle correctly the PHY of the new devices
when connected to a 10Mb link but this change already helps some
users as is.
Fix for:
http://bugzilla.kernel.org/show_bug.cgi?id=9467
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: K.M. Liu <kmliu@sis.com.tw>
Cc: J. Gleacher <jgleacher@yahoo.com>
Cc: Alexandre Penasso Teixeira <alexandre@keepsoftware.com>
Cc: Arliton Rocha <arliton@gmail.com>
Cc: Juan Jose Pablos <juanjo@apertus.es>
Cc: Wipat Srutiprom <wipat.s@psu.ac.th>
---
drivers/net/sis190.c | 15 +++++++++------
1 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/drivers/net/sis190.c b/drivers/net/sis190.c
index 7200883..51bbb60 100644
--- a/drivers/net/sis190.c
+++ b/drivers/net/sis190.c
@@ -1549,28 +1549,31 @@ static int __devinit sis190_get_mac_addr_from_eeprom(struct pci_dev *pdev,
}
/**
- * sis190_get_mac_addr_from_apc - Get MAC address for SiS965 model
+ * sis190_get_mac_addr_from_apc - Get MAC address for SiS96x model
* @pdev: PCI device
* @dev: network device to get address for
*
- * SiS965 model, use APC CMOS RAM to store MAC address.
+ * SiS96x model, use APC CMOS RAM to store MAC address.
* APC CMOS RAM is accessed through ISA bridge.
* MAC address is read into @net_dev->dev_addr.
*/
static int __devinit sis190_get_mac_addr_from_apc(struct pci_dev *pdev,
struct net_device *dev)
{
+ static const u16 __devinitdata ids[] = { 0x0965, 0x0966, 0x0968 };
struct sis190_private *tp = netdev_priv(dev);
struct pci_dev *isa_bridge;
u8 reg, tmp8;
- int i;
+ unsigned int i;
net_probe(tp, KERN_INFO "%s: Read MAC address from APC.\n",
pci_name(pdev));
- isa_bridge = pci_get_device(PCI_VENDOR_ID_SI, 0x0965, NULL);
- if (!isa_bridge)
- isa_bridge = pci_get_device(PCI_VENDOR_ID_SI, 0x0966, NULL);
+ for (i = 0; i < ARRAY_SIZE(ids); i++) {
+ isa_bridge = pci_get_device(PCI_VENDOR_ID_SI, ids[i], NULL);
+ if (isa_bridge)
+ break;
+ }
if (!isa_bridge) {
net_probe(tp, KERN_INFO "%s: Can not find ISA bridge.\n",
--
1.5.3.3
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 2/4] sis190: remove duplicate INIT_WORK
2007-12-10 22:27 [PATCH 0/4] Pull request for 'sis190' branch Francois Romieu
2007-12-10 22:29 ` [PATCH 1/4] sis190: add cmos ram access code for the SiS19x/968 chipset pair Francois Romieu
@ 2007-12-10 22:30 ` Francois Romieu
2007-12-10 22:31 ` [PATCH 3/4] sis190: mdio operation failure is not correctly detected Francois Romieu
` (2 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Francois Romieu @ 2007-12-10 22:30 UTC (permalink / raw)
To: jeff; +Cc: Andrew Morton, netdev, K.M. Liu
It is already done in sis190_init_one.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: K.M. Liu <kmliu@sis.com.tw>
---
drivers/net/sis190.c | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/drivers/net/sis190.c b/drivers/net/sis190.c
index 51bbb60..f6a921c 100644
--- a/drivers/net/sis190.c
+++ b/drivers/net/sis190.c
@@ -1041,8 +1041,6 @@ static int sis190_open(struct net_device *dev)
if (rc < 0)
goto err_free_rx_1;
- INIT_WORK(&tp->phy_task, sis190_phy_task);
-
sis190_request_timer(dev);
rc = request_irq(dev->irq, sis190_interrupt, IRQF_SHARED, dev->name, dev);
--
1.5.3.3
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 3/4] sis190: mdio operation failure is not correctly detected
2007-12-10 22:27 [PATCH 0/4] Pull request for 'sis190' branch Francois Romieu
2007-12-10 22:29 ` [PATCH 1/4] sis190: add cmos ram access code for the SiS19x/968 chipset pair Francois Romieu
2007-12-10 22:30 ` [PATCH 2/4] sis190: remove duplicate INIT_WORK Francois Romieu
@ 2007-12-10 22:31 ` Francois Romieu
2007-12-10 22:31 ` [PATCH 4/4] sis190: scheduling while atomic error Francois Romieu
2007-12-17 23:18 ` [PATCH 0/4] Pull request for 'sis190' branch Jeff Garzik
4 siblings, 0 replies; 7+ messages in thread
From: Francois Romieu @ 2007-12-10 22:31 UTC (permalink / raw)
To: jeff; +Cc: Andrew Morton, netdev, K.M. Liu
i ranges from 0 to 100 in the 'for' loop a few lines above.
Reported by davem.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: K.M. Liu <kmliu@sis.com.tw>
---
drivers/net/sis190.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/sis190.c b/drivers/net/sis190.c
index f6a921c..973b369 100644
--- a/drivers/net/sis190.c
+++ b/drivers/net/sis190.c
@@ -372,7 +372,7 @@ static void __mdio_cmd(void __iomem *ioaddr, u32 ctl)
msleep(1);
}
- if (i > 999)
+ if (i > 99)
printk(KERN_ERR PFX "PHY command failed !\n");
}
--
1.5.3.3
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 4/4] sis190: scheduling while atomic error
2007-12-10 22:27 [PATCH 0/4] Pull request for 'sis190' branch Francois Romieu
` (2 preceding siblings ...)
2007-12-10 22:31 ` [PATCH 3/4] sis190: mdio operation failure is not correctly detected Francois Romieu
@ 2007-12-10 22:31 ` Francois Romieu
2007-12-17 23:18 ` [PATCH 0/4] Pull request for 'sis190' branch Jeff Garzik
4 siblings, 0 replies; 7+ messages in thread
From: Francois Romieu @ 2007-12-10 22:31 UTC (permalink / raw)
To: jeff; +Cc: Andrew Morton, netdev, K.M. Liu
sis190_tx_timeout
-> sis190_hw_start
-> sis190_soft_reset
-> msleep *splat*
PCI transactions are correctly flushed here.
The msleep() is probably useless.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: K.M. Liu <kmliu@sis.com.tw>
---
drivers/net/sis190.c | 2 --
1 files changed, 0 insertions(+), 2 deletions(-)
diff --git a/drivers/net/sis190.c b/drivers/net/sis190.c
index 973b369..c0db182 100644
--- a/drivers/net/sis190.c
+++ b/drivers/net/sis190.c
@@ -847,10 +847,8 @@ static void sis190_soft_reset(void __iomem *ioaddr)
{
SIS_W32(IntrControl, 0x8000);
SIS_PCI_COMMIT();
- msleep(1);
SIS_W32(IntrControl, 0x0);
sis190_asic_down(ioaddr);
- msleep(1);
}
static void sis190_hw_start(struct net_device *dev)
--
1.5.3.3
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH 0/4] Pull request for 'sis190' branch
2007-12-10 22:27 [PATCH 0/4] Pull request for 'sis190' branch Francois Romieu
` (3 preceding siblings ...)
2007-12-10 22:31 ` [PATCH 4/4] sis190: scheduling while atomic error Francois Romieu
@ 2007-12-17 23:18 ` Jeff Garzik
2007-12-26 23:17 ` Francois Romieu
4 siblings, 1 reply; 7+ messages in thread
From: Jeff Garzik @ 2007-12-17 23:18 UTC (permalink / raw)
To: Francois Romieu; +Cc: Andrew Morton, netdev, K.M. Liu
Francois Romieu wrote:
> Please pull from branch 'sis190' in repository
>
> git://git.kernel.org/pub/scm/linux/kernel/git/romieu/netdev-2.6.git sis190
>
> to get the changes below.
>
> Distance from 'upstream-linus' (7962024e9d16e9349d76b553326f3fa7be64305e)
> -------------------------------------------------------------------------
>
> c27e14e508664471b8e44ef1f81ec080213ea314
> 348de67fe200e25d8cb80cff35642192436cfeda
> 004a22d03d62cd08e5287273a5143447db009cd0
> 14deb44ffe7220be2de697d616f28cce17e72297
>
> Diffstat
> --------
>
> drivers/net/sis190.c | 21 ++++++++++-----------
> 1 files changed, 10 insertions(+), 11 deletions(-)
>
> Shortlog
> --------
>
> Francois Romieu (4):
> sis190: add cmos ram access code for the SiS19x/968 chipset pair
> sis190: remove duplicate INIT_WORK
> sis190: mdio operation failure is not correctly detected
> sis190: scheduling while atomic error
pulled into #upstream
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH 0/4] Pull request for 'sis190' branch
2007-12-17 23:18 ` [PATCH 0/4] Pull request for 'sis190' branch Jeff Garzik
@ 2007-12-26 23:17 ` Francois Romieu
0 siblings, 0 replies; 7+ messages in thread
From: Francois Romieu @ 2007-12-26 23:17 UTC (permalink / raw)
To: Jeff Garzik; +Cc: Andrew Morton, netdev, K.M. Liu
Jeff Garzik <jeff@garzik.org> :
[...]
>> Shortlog
>> --------
>>
>> Francois Romieu (4):
>> sis190: add cmos ram access code for the SiS19x/968 chipset pair
>> sis190: remove duplicate INIT_WORK
>> sis190: mdio operation failure is not correctly detected
>> sis190: scheduling while atomic error
>
> pulled into #upstream
Imho no owner of a 968 south bridge will be able to use his integrated
network device as long as "sis190: add cmos ram access code ..." is
not included upstream. Waiting for 2.6.25 means no hardware support
before march 2008.
--
Ueimor
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2007-12-26 23:27 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-10 22:27 [PATCH 0/4] Pull request for 'sis190' branch Francois Romieu
2007-12-10 22:29 ` [PATCH 1/4] sis190: add cmos ram access code for the SiS19x/968 chipset pair Francois Romieu
2007-12-10 22:30 ` [PATCH 2/4] sis190: remove duplicate INIT_WORK Francois Romieu
2007-12-10 22:31 ` [PATCH 3/4] sis190: mdio operation failure is not correctly detected Francois Romieu
2007-12-10 22:31 ` [PATCH 4/4] sis190: scheduling while atomic error Francois Romieu
2007-12-17 23:18 ` [PATCH 0/4] Pull request for 'sis190' branch Jeff Garzik
2007-12-26 23:17 ` Francois Romieu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).