# VIA Rhine Problem

## skarphace

I have been having problems trying to get my NIC to work.  It's an onboard NIC(sorry don't have the model on hand) that uses the VIA Rhine driver.  I learned that it used Rhine by booting up with the livecd and runing lsmod and saw that driver loaded.  I don't have any other NICs in this machine.

So, I recompiled the kernel with VIA Rhine support.  Copied the kernel and System.map over to /boot.  Made sure the timestamp was correct and that they copied over correctly.  Reboot.  Nothing.  Still get No Device Found.  The NIC is setup correctly in /etc/conf.d/net according to the documentation.

Does anyone have any suggestions?  I'm by no means an expert so don't hold back things that might seem silly to you.

----------

## pilo

Well did you compile the driver (via-rhine I believe) as a module or built-in?

Also, which motherboard do you have? If you know that, you can check exactly which chipset you're using, and crosscheck against the compability list of the via-rhine-driver.

If the driver is built-in, does dmesg give you any messages at all about a NIC?

----------

## jdgill0

If you added via-rhine support in the kernel as a module, you need to add via-rhine to /etc/modules.autoload.d/kernel-2.6.

----------

## skarphace

 *pilo wrote:*   

> Well did you compile the driver (via-rhine I believe) as a module or built-in?

 

It was compiled built in.

 *pilo wrote:*   

> Also, which motherboard do you have? If you know that, you can check exactly which chipset you're using, and crosscheck against the compability list of the via-rhine-driver.

 

The board is a cheap Foxconn.  I can't remember the chipset off hand, I'll update later with it when I get home.  I have googled the chipset model and found that users of this chipset successfully used the Rhine driver.  Where would I find this compatability list?

 *pilo wrote:*   

> If the driver is built-in, does dmesg give you any messages at all about a NIC?

 

Will update when I can get to this computer.

----------

## Nighthawk4

I am using the same NIC. Mine has worked fine, once I went back into the kernel and enabled it there.

I am using 2.6.11-r6, the manual one, not genkernel.

Hope that helps  :Wink: 

----------

## skarphace

Well, dmesg gave me the following.  I'm not 100% sure what I should be looking for but the following seemed relavant.

 *Systme wrote:*   

> lp: driver loaded but no devices found
> 
> NET: Registered protocol family 2
> 
> NET: Registered protocol family 1
> ...

 

They were in that order with other items in between.  The mainboard is a "400M01 series" with the VIA VT6103L LAN Chip(set).  I googled and found that users have successfully used the VIA Rhine driver with this chip(set).

----------

## jorgbell

On the web-site for the makers of your mother-board I found the req drivers including  Linux in their Lan driver zip file at this address

http://www.foxconnchannel.com/productsDownload_motherboard.cfm?pMotherboard=400M01-G-6L%3Cbr%3EAlso%20known%20as%20K7V400MG

Hope this helps

----------

## pmatos

 *skarphace wrote:*   

> I have been having problems trying to get my NIC to work.  It's an onboard NIC(sorry don't have the model on hand) that uses the VIA Rhine driver.  I learned that it used Rhine by booting up with the livecd and runing lsmod and saw that driver loaded.  I don't have any other NICs in this machine.
> 
> So, I recompiled the kernel with VIA Rhine support.  Copied the kernel and System.map over to /boot.  Made sure the timestamp was correct and that they copied over correctly.  Reboot.  Nothing.  Still get No Device Found.  The NIC is setup correctly in /etc/conf.d/net according to the documentation.
> 
> Does anyone have any suggestions?  I'm by no means an expert so don't hold back things that might seem silly to you.

 

Can you post lspci?

----------

## skarphace

Thanks jorgbell.  But it doesn't support the 2.6 kernel.  And since the file is called rhine, it's pretty much a lock that that's what it needs.

 *readme wrote:*   

> Kernel Supported
> 
> ================
> 
>     This driver support linux kernel version 2.2.x and 2.4.x now.

 

I think I will try setting it up as a module instead.  I'll loose a few thousandths of a millisecond, but it'll have to do, heh.

----------

## jorgbell

Try and make one for each of the ones listed because I VIA comes in many different flavours but at least you now know that its one of the VIA Rhine ones. 

Good luck

----------

## skarphace

I received the same old crap when compiled as a module.  Do I need to edit any files to have it loaded at startup?  I figured 'make && make modules_install' would take care of that.

And I don't have lspci yet.  However, I could get it if it would really help.

----------

## jdgill0

skarphace,

Go ahead and post the results of lspci -v if you don't mind.

----------

## skarphace

 *lspci wrote:*   

> pcilib: Cannot open /sys/bus/pci/devices
> 
> pcilib: Cannot open /proc/bus/pci
> 
> 0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8378 [KM400/A] Chipset Host Bridge
> ...

 

Thanks again for the help.  Sorry I'm so slow.

----------

## skarphace

Forgot the -v switch.  Here you go.

```
0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8378 [KM400/A] Chipset Host Bridge

        Subsystem: VIA Technologies, Inc. VT8378 [KM400/A] Chipset Host Bridge

        Flags: bus master, 66Mhz, medium devsel, latency 8

        Memory at ee000000 (32-bit, prefetchable)

        Capabilities: [80] AGP version 3.5

        Capabilities: [c0] Power Management version 2

0000:00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI Bridge (prog-if 00 [Normal decode])

        Flags: bus master, 66Mhz, medium devsel, latency 0

        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0

        Memory behind bridge: ec000000-edffffff

        Prefetchable memory behind bridge: e8000000-ebffffff

        Capabilities: [80] Power Management version 2

0000:00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80) (prog-if 00 [UHCI])

        Subsystem: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller

        Flags: bus master, medium devsel, latency 32, IRQ 5

        I/O ports at d000

        Capabilities: [80] Power Management version 2

0000:00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80) (prog-if 00 [UHCI])

        Subsystem: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller

        Flags: bus master, medium devsel, latency 32, IRQ 5

        I/O ports at d400

        Capabilities: [80] Power Management version 2

0000:00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80) (prog-if 00 [UHCI])

        Subsystem: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller

        Flags: bus master, medium devsel, latency 32, IRQ 5

        I/O ports at d800

        Capabilities: [80] Power Management version 2

0000:00:10.3 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 82) (prog-if 20 [EHCI])

        Subsystem: VIA Technologies, Inc. USB 2.0

        Flags: bus master, medium devsel, latency 32, IRQ 5

        Memory at ef000000 (32-bit, non-prefetchable)

        Capabilities: [80] Power Management version 2

0000:00:11.0 ISA bridge: VIA Technologies, Inc. VT8235 ISA Bridge

        Subsystem: VIA Technologies, Inc. VT8235 ISA Bridge

        Flags: bus master, stepping, medium devsel, latency 0

        Capabilities: [c0] Power Management version 2

0000:00:11.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06) (prog-if 8a

[Master SecP PriP])

        Subsystem: Foxconn International, Inc.: Unknown device 0c18

        Flags: bus master, medium devsel, latency 32, IRQ 255

        I/O ports at dc00

        Capabilities: [c0] Power Management version 2

0000:00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 50)

        Subsystem: Foxconn International, Inc.: Unknown device 0c18

        Flags: medium devsel, IRQ 10

        I/O ports at e000

        Capabilities: [c0] Power Management version 2

0000:00:12.0 Ethernet controller: VIA Technologies, Inc. VT6102 [Rhine-II] (rev 74)

        Subsystem: Foxconn International, Inc.: Unknown device 0c18

        Flags: bus master, medium devsel, latency 32, IRQ 7

        I/O ports at e400

        Memory at ef001000 (32-bit, non-prefetchable)

        Capabilities: [40] Power Management version 2

0000:01:00.0 VGA compatible controller: VIA Technologies, Inc. VT8378 [S3 UniChrome] Integrated Video (rev 01) (prog-if 00 [VGA])

        Subsystem: Foxconn International, Inc.: Unknown device 0c18

        Flags: bus master, 66Mhz, medium devsel, latency 32, IRQ 11

        Memory at e8000000 (32-bit, prefetchable)

        Memory at ec000000 (32-bit, non-prefetchable)

        Capabilities: [60] Power Management version 2

        Capabilities: [70] AGP version 2.0
```

----------

## jdgill0

skarphace,

The following is for your parallel port

 *skarphace wrote:*   

> Well, dmesg gave me the following.  I'm not 100% sure what I should be looking for but the following seemed relavant.
> 
>  *Systme wrote:*   lp: driver loaded but no devices found 

 

What does dmesg | grep eth give you? According to your lscpi and the kernel config help, you do need via-rhine support.

----------

## skarphace

It returns nothing.  Is there something I need to do to get a module to load other then the "make && make modules_install" of the kernel?

----------

## jdgill0

skarphace,

Just to make sure we know what's going on for sure, can you post the results of the following?

```
grep -i via /usr/src/linux/.config
```

----------

## skarphace

The ones pertaining are as follows.  I didn't post the entire output because I don't have a way to copy and paste from that machine.  No network connection.

 *grep -i via /usr/src/linux/.config wrote:*   

> CONFIG_VIA_RHINE=y
> 
> # CONFIG_VIA_RHINE_MMIO is not set

 

Thanks again for the help.

----------

## jdgill0

skarphace,

Please post the output from uname -a.

----------

## skarphace

Interesting...

 *uname -a wrote:*   

> Linux yuri 2.6.11-gentoo-r6 #1 SMP Teu May 3 17:41:07 EST 2005 i686 AMD Athlon(tm) AuthenticAMD GNU/Linux

 

I have compiled and copied a newer build then May 3rd... seems like this is most likely the problem.

The timestamp on the kernel sitting on the boot partition is newer... what am I missing?

I am having a problem with grub at the moment where I have to manually boot the kernel but I only have one kernel bzimage on the boot partition.  I don't get it.

----------

## jdgill0

skarphace,

This is making a little more sense now.  It appears you are still using your older kernel without via-rhine support.

Show us:

```
/etc/fstab

/boot/grub/grub.conf

the output from "fdisk -l"

```

Be sure to mount /boot if you have a separate boot partition prior to listing /boot/grub/grub.conf.

----------

## skarphace

I have to type all of this out, forgive me for any minor errors.

fstab:

```
/dev/hdb1        /boot        ext3        noauto,noatime

/dev/hdb2        none        swap        sw

/dev/hdb3        /        xfs        noatime

/dev/cdroms/cdrom0        /mnt/cdrom        ato        sw

none        /proc        proc        defaults

none        /dev/shm        tmpfs        nodev,nosuid,noexec
```

I was fairly certain that hdb3 was also ext3 but it seems to mount ok as xfs... hm.

fdisk -l:

```
/dev/hdb1        1        19        152586        83        Linux

/dev/hdb2        20        144        1004062+        82        Linux swap / Solaris

/dev/hdb3        145        2577        19543072+        83        Linux
```

EDIT: Oh, and grub.conf hasn't been setup yet.  Shouldn't I be fine by manually booting with grub?  I just do a...

 *manual boot wrote:*   

> kernel /kernel-2.6.11-gentoo-r3
> 
> boot

 

----------

## jdgill0

skarphace,

I think maybe you are haveing problems with loading the kernel you want to load, since you don't specify root (hd1,0) prior to the kernel line when running grub.

To address your problem, why not go ahead and setup grub.conf?  It's simple.  The following is what I use, I have a separate /boot partition as well.

```
default 0

timeout 10

splashimage=(hd1,0)/grub/splash.xpm.gz

# 0

title Gentoo 2.6.11-gentoo-r3 ati

   kernel (hd1,0)/kernel-2.6.11-gentoo-r3 root=/dev/hdb3

```

If you don't want to setup your grub.conf file, then try kernel (hd1,0)/kernel-2.6.11-gentoo-r3 in place of your kernel /kernel-2.6.11-gentoo-r3.  However, I still highly recommend setting up grub.conf.

----------

## skarphace

Wow, thank you so much.  It was such a noob problem.  It appears when I was copying the kernel and system.map over, the boot partition was not mounted...  It was just being copied to the folder /boot on the root partition...  I know everyone and everything kept telling me to make sure it was mounted but I swear I remember setting it up to automount.

Thank you to everyone, especially jdg for all your help.

I have one, smaller question though.  I remember setting my root partition up as ext3 but it's setup in fstab to mount as xfs and it mounts fine.  Are they compatible somehow or was my root partition actually setup as XFS somehow?  If I did set it up as ext3, I'd rather mount it that way.

----------

## jdgill0

skarphace,

hehe, I missed the noauto for /boot in your fstab myself  :Smile:  ... As for the root partition being xfs or ext3, run the command mount without any options.  You will get a listing of all mounted partitions along with the filesystem type it was mounted as being and the options that were actually used as well.  xfs and ext3 are not compatible.

----------

## skarphace

 *jdgill0 wrote:*   

> ...run the command mount without any options.  

 

Yeah, it's listed as xfs and everything works.  That sucks.  I assume there's no way to convert to ext3?

----------

## jdgill0

skarphace,

There is no direct way to convert between filesystems, sorry.  You would basically need to format a new partition or hard drive and copy your root partition to it, reboot with fstab pointing to the new partition, and then reformat the xfs partition, then cp'ing root back from the temporary partition.  Of course, do the cp'ing of root from the liveCD as there are various things that do not copy correctly from an actively used root partition.

Also you might consider just using ext2 for /boot, as you really don't need a journaling filesystem for such a small partition, and I advise you to leave /boot with the "noauto" mount option.  Redoing /boot is much easier than the whole of root, just create say /boot.bak directory, cp contents of /boot to /boot.bak, then reformat /boot and cp its contents back -- one thing though, you will need to remove /boot/boot which is a symlink, else you will have circular copying indefinitely, then just recreate the /boot/boot symlink after you are done converting /boot ... also be sure to complete the transformation of /boot before rebooting to keep from having a missing /boot. Oh, and be sure to modify fstab to say ext2 instead of ext3 for /boot -- if you did decide to convert /boot that is  :Smile: 

----------

## thecooptoo

im having a problem with a MoBo that has a via-rhine NW card. my system lockups up after about an hour

https://forums.gentoo.org/viewtopic-t-435192-highlight-.html

googling would appear to indicate that there is a run-time problem with this driver and the kernel 

If anyone has a stable system with the via-rhine module, whcih kernel is it with ?

----------

## skarphace

 *thecooptoo wrote:*   

> im having a problem with a MoBo that has a via-rhine NW card. my system lockups up after about an hour
> 
> https://forums.gentoo.org/viewtopic-t-435192-highlight-.html
> 
> googling would appear to indicate that there is a run-time problem with this driver and the kernel 
> ...

 

I'm running it with 2.6.13 r1, if I remember correctly.  Runs great.  I'd suggest trying to recompile the kernel with a recent version and see if that helps.

----------

## thecooptoo

I'm having problems updating the kernel  it locks up at after 80% of 'udapting portage' do then switch it foo and an again. How can i update it without a network  connection ?

----------

