* Build 64bit on RaQ2
@ 2005-03-25 23:31 Jim Gifford
2005-03-26 0:38 ` Kumba
2005-03-26 9:12 ` Peter Horton
0 siblings, 2 replies; 7+ messages in thread
From: Jim Gifford @ 2005-03-25 23:31 UTC (permalink / raw)
To: Linux MIPS List
Has anyone had any luck compiling a 64 bit version on the RaQ2. I can
get it to compile but, it locks up during boot up.
elf64: 00080000 - 0042fd3f (ffffffff,803e6000) (ffffffff,8000000)
elf64: ffffffff,80080000 (8008000) 3731589t + 134331t
That's all I got during bootup, no error messages or anything.
--
----
Jim Gifford
maillist@jg555.com
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Build 64bit on RaQ2
2005-03-25 23:31 Build 64bit on RaQ2 Jim Gifford
@ 2005-03-26 0:38 ` Kumba
2005-03-26 9:12 ` Peter Horton
1 sibling, 0 replies; 7+ messages in thread
From: Kumba @ 2005-03-26 0:38 UTC (permalink / raw)
To: Jim Gifford; +Cc: Linux MIPS List
Jim Gifford wrote:
> Has anyone had any luck compiling a 64 bit version on the RaQ2. I can
> get it to compile but, it locks up during boot up.
>
> elf64: 00080000 - 0042fd3f (ffffffff,803e6000) (ffffffff,8000000)
> elf64: ffffffff,80080000 (8008000) 3731589t + 134331t
>
> That's all I got during bootup, no error messages or anything.
Peter Horton had some experimental code in the kernel at one point to try
this. I managed to get a 2.6.9 (I think, maybe 2.6.10) mips64 kernel to boot
on cobalt, but it was pretty useless. Poor machine was slower than molasses
uphill in winter.
I believe cobalt would run better using the o64 kernel hack than pure n64
kernel (-mabi=64), but cobalt needs some fixups to its spaces.h before an o64
kernel will build on it.
--Kumba
--
"Such is oft the course of deeds that move the wheels of the world: small
hands do them because they must, while the eyes of the great are elsewhere."
--Elrond
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Build 64bit on RaQ2
2005-03-25 23:31 Build 64bit on RaQ2 Jim Gifford
2005-03-26 0:38 ` Kumba
@ 2005-03-26 9:12 ` Peter Horton
2005-03-28 23:06 ` Jim Gifford
1 sibling, 1 reply; 7+ messages in thread
From: Peter Horton @ 2005-03-26 9:12 UTC (permalink / raw)
To: Jim Gifford; +Cc: Linux MIPS List
On Fri, Mar 25, 2005 at 03:31:19PM -0800, Jim Gifford wrote:
> Has anyone had any luck compiling a 64 bit version on the RaQ2. I can
> get it to compile but, it locks up during boot up.
>
> elf64: 00080000 - 0042fd3f (ffffffff,803e6000) (ffffffff,8000000)
> elf64: ffffffff,80080000 (8008000) 3731589t + 134331t
>
> That's all I got during bootup, no error messages or anything.
>
As a starting point you need to ensure the "cpu_has_llsc" is false for
64-bit Cobalt kernels. LLD/SCD is broken on RM5230/5231. There is an
experimental patch for 2.6.9 on
http://www.colonel-panic.org/cobalt-mips.
P.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Build 64bit on RaQ2
2005-03-26 9:12 ` Peter Horton
@ 2005-03-28 23:06 ` Jim Gifford
2005-03-29 21:46 ` Peter Horton
0 siblings, 1 reply; 7+ messages in thread
From: Jim Gifford @ 2005-03-28 23:06 UTC (permalink / raw)
To: Peter Horton, Linux MIPS List
Peter Horton wrote:
>On Fri, Mar 25, 2005 at 03:31:19PM -0800, Jim Gifford wrote:
>
>
>> Has anyone had any luck compiling a 64 bit version on the RaQ2. I can
>>get it to compile but, it locks up during boot up.
>>
>>elf64: 00080000 - 0042fd3f (ffffffff,803e6000) (ffffffff,8000000)
>>elf64: ffffffff,80080000 (8008000) 3731589t + 134331t
>>
>>That's all I got during bootup, no error messages or anything.
>>
>>
>>
>
>As a starting point you need to ensure the "cpu_has_llsc" is false for
>64-bit Cobalt kernels. LLD/SCD is broken on RM5230/5231. There is an
>experimental patch for 2.6.9 on
>http://www.colonel-panic.org/cobalt-mips.
>
>P.
>
>
Peter,
Got it to compile, but the tulip driver is giving me fits. I built
it as a module and into the kernel
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
0000:00:07.0: tulip_stop_rxtx() failed
--
----
Jim Gifford
maillist@jg555.com
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Build 64bit on RaQ2
2005-03-28 23:06 ` Jim Gifford
@ 2005-03-29 21:46 ` Peter Horton
2005-03-29 22:11 ` Jim Gifford
2005-04-02 4:39 ` Jim Gifford
0 siblings, 2 replies; 7+ messages in thread
From: Peter Horton @ 2005-03-29 21:46 UTC (permalink / raw)
To: Jim Gifford; +Cc: Peter Horton, Linux MIPS List
On Mon, Mar 28, 2005 at 03:06:36PM -0800, Jim Gifford wrote:
>
> Got it to compile, but the tulip driver is giving me fits. I built
> it as a module and into the kernel
>
>
> 0000:00:07.0: tulip_stop_rxtx() failed
> 0000:00:07.0: tulip_stop_rxtx() failed
> 0000:00:07.0: tulip_stop_rxtx() failed
> 0000:00:07.0: tulip_stop_rxtx() failed
> 0000:00:07.0: tulip_stop_rxtx() failed
> 0000:00:07.0: tulip_stop_rxtx() failed
>
Tulip driver gave me problems also. I landed up inserting a printk()
which made it work, see the patch. I didn't get round to debugging it
any further, sorry.
P.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Build 64bit on RaQ2
2005-03-29 21:46 ` Peter Horton
@ 2005-03-29 22:11 ` Jim Gifford
2005-04-02 4:39 ` Jim Gifford
1 sibling, 0 replies; 7+ messages in thread
From: Jim Gifford @ 2005-03-29 22:11 UTC (permalink / raw)
To: Peter Horton; +Cc: Linux MIPS List
Peter Horton wrote:
>On Mon, Mar 28, 2005 at 03:06:36PM -0800, Jim Gifford wrote:
>
>
>> Got it to compile, but the tulip driver is giving me fits. I built
>>it as a module and into the kernel
>>
>>
>>0000:00:07.0: tulip_stop_rxtx() failed
>>0000:00:07.0: tulip_stop_rxtx() failed
>>0000:00:07.0: tulip_stop_rxtx() failed
>>0000:00:07.0: tulip_stop_rxtx() failed
>>0000:00:07.0: tulip_stop_rxtx() failed
>>0000:00:07.0: tulip_stop_rxtx() failed
>>
>>
>>
>
>Tulip driver gave me problems also. I landed up inserting a printk()
>which made it work, see the patch. I didn't get round to debugging it
>any further, sorry.
>
>P.
>
>
>
I posted a simliar question to the linux-net list, a lot of people don't
understand why the driver doesn't work in 64 bit, but works perfectly in
32 bit.
--
----
Jim Gifford
maillist@jg555.com
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Build 64bit on RaQ2
2005-03-29 21:46 ` Peter Horton
2005-03-29 22:11 ` Jim Gifford
@ 2005-04-02 4:39 ` Jim Gifford
1 sibling, 0 replies; 7+ messages in thread
From: Jim Gifford @ 2005-04-02 4:39 UTC (permalink / raw)
To: Peter Horton; +Cc: Linux MIPS List
[-- Attachment #1: Type: text/plain, Size: 350 bytes --]
Peter Horton wrote:
>
>Tulip driver gave me problems also. I landed up inserting a printk()
>which made it work, see the patch. I didn't get round to debugging it
>any further, sorry.
>
>P.
>
>
>
Peter here is the fix for the linux-mips version of kernel and the tulip
driver. Thanx again for you help
--
----
Jim Gifford
maillist@jg555.com
[-- Attachment #2: tulip-mips[1].patch --]
[-- Type: text/x-diff, Size: 4749 bytes --]
diff -Naurp linux.orig/drivers/net/tulip/de2104x.c linux/drivers/net/tulip/de2104x.c
--- linux.orig/drivers/net/tulip/de2104x.c 2005-03-18 09:37:38.000000000 -0800
+++ linux/drivers/net/tulip/de2104x.c 2005-04-01 20:10:25.323550440 -0800
@@ -1787,15 +1787,10 @@ static void __init de21041_get_srom_info
/* DEC now has a specification but early board makers
just put the address in the first EEPROM locations. */
/* This does memcmp(eedata, eedata+16, 8) */
-
-#ifndef CONFIG_MIPS_COBALT
-
for (i = 0; i < 8; i ++)
if (ee_data[i] != ee_data[16+i])
sa_offset = 20;
-#endif
-
/* store MAC address */
for (i = 0; i < 6; i ++)
de->dev->dev_addr[i] = ee_data[i + sa_offset];
@@ -1932,7 +1927,7 @@ bad_srom:
goto fill_defaults;
}
-static int __init de_init_one (struct pci_dev *pdev,
+static int __devinit de_init_one (struct pci_dev *pdev,
const struct pci_device_id *ent)
{
struct net_device *dev;
diff -Naurp linux.orig/drivers/net/tulip/de4x5.c linux/drivers/net/tulip/de4x5.c
--- linux.orig/drivers/net/tulip/de4x5.c 2005-03-18 09:37:38.000000000 -0800
+++ linux/drivers/net/tulip/de4x5.c 2005-04-01 20:10:25.854469728 -0800
@@ -2124,7 +2124,6 @@ static struct eisa_driver de4x5_eisa_dri
.remove = __devexit_p (de4x5_eisa_remove),
}
};
-MODULE_DEVICE_TABLE(eisa, de4x5_eisa_ids);
#endif
#ifdef CONFIG_PCI
diff -Naurp linux.orig/drivers/net/tulip/media.c linux/drivers/net/tulip/media.c
--- linux.orig/drivers/net/tulip/media.c 2005-03-18 09:37:38.000000000 -0800
+++ linux/drivers/net/tulip/media.c 2005-04-01 20:10:26.553363480 -0800
@@ -44,8 +44,10 @@ static const unsigned char comet_miireg2
/* MII transceiver control section.
Read and write the MII registers using software-generated serial
- MDIO protocol. See the MII specifications or DP83840A data sheet
- for details. */
+ MDIO protocol.
+ See IEEE 802.3-2002.pdf (Section 2, Chapter "22.2.4 Management functions")
+ or DP83840A data sheet for more details.
+ */
int tulip_mdio_read(struct net_device *dev, int phy_id, int location)
{
@@ -307,13 +309,29 @@ void tulip_select_media(struct net_devic
int reset_length = p[2 + init_length];
misc_info = (u16*)(reset_sequence + reset_length);
if (startup) {
+ int timeout = 10; /* max 1 ms */
iowrite32(mtable->csr12dir | 0x100, ioaddr + CSR12);
for (i = 0; i < reset_length; i++)
iowrite32(reset_sequence[i], ioaddr + CSR12);
+
+ /* flush posted writes */
+ ioread32(ioaddr + CSR12);
+
+ /* Sect 3.10.3 in DP83840A.pdf (p39) */
+ udelay(500);
+
+ /* Section 4.2 in DP83840A.pdf (p43) */
+ /* and IEEE 802.3 "22.2.4.1.1 Reset" */
+ while (timeout-- &&
+ (tulip_mdio_read (dev, phy_num, MII_BMCR) & BMCR_RESET))
+ udelay(100);
}
for (i = 0; i < init_length; i++)
iowrite32(init_sequence[i], ioaddr + CSR12);
+
+ ioread32(ioaddr + CSR12); /* flush posted writes */
}
+
tmp_info = get_u16(&misc_info[1]);
if (tmp_info)
tp->advertising[phy_num] = tmp_info | 1;
@@ -399,9 +417,6 @@ void tulip_select_media(struct net_devic
}
tp->csr6 = new_csr6 | (tp->csr6 & 0xfdff) | (tp->full_duplex ? 0x0200 : 0);
-
- udelay(1000);
-
return;
}
diff -Naurp linux.orig/drivers/net/tulip/tulip_core.c linux/drivers/net/tulip/tulip_core.c
--- linux.orig/drivers/net/tulip/tulip_core.c 2005-03-18 09:37:38.000000000 -0800
+++ linux/drivers/net/tulip/tulip_core.c 2005-04-01 20:10:27.003295080 -0800
@@ -22,7 +22,7 @@
#else
#define DRV_VERSION "1.1.13"
#endif
-#define DRV_RELDATE "May 11, 2002"
+#define DRV_RELDATE "December 15, 2004"
#include <linux/module.h>
@@ -1514,8 +1514,8 @@ static int __devinit tulip_init_one (str
(PCI_SLOT(pdev->devfn) == 12))) {
/* Cobalt MAC address in first EEPROM locations. */
sa_offset = 0;
- /* Ensure our media table fixup get's applied */
- memcpy(ee_data + 16, ee_data, 8);
+ /* No media table either */
+ tp->flags &= ~HAS_MEDIA_TABLE;
}
#endif
#ifdef CONFIG_GSC
diff -Naurp linux.orig/drivers/net/tulip/tulip.h linux/drivers/net/tulip/tulip.h
--- linux.orig/drivers/net/tulip/tulip.h 2005-03-18 09:37:38.000000000 -0800
+++ linux/drivers/net/tulip/tulip.h 2005-04-01 20:10:26.851318184 -0800
@@ -475,8 +475,11 @@ static inline void tulip_stop_rxtx(struc
udelay(10);
if (!i)
- printk(KERN_DEBUG "%s: tulip_stop_rxtx() failed\n",
- pci_name(tp->pdev));
+ printk(KERN_DEBUG "%s: tulip_stop_rxtx() failed"
+ " (CSR5 0x%x CSR6 0x%x)\n",
+ pci_name(tp->pdev),
+ ioread32(ioaddr + CSR5),
+ ioread32(ioaddr + CSR6));
}
}
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2005-04-02 4:39 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-25 23:31 Build 64bit on RaQ2 Jim Gifford
2005-03-26 0:38 ` Kumba
2005-03-26 9:12 ` Peter Horton
2005-03-28 23:06 ` Jim Gifford
2005-03-29 21:46 ` Peter Horton
2005-03-29 22:11 ` Jim Gifford
2005-04-02 4:39 ` Jim Gifford
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox