# How to use serial PCI card on Gentoo? [Solved]

## bluephoenix

I am using a motherboard without COM interface (they didn't put the connecter on the motherboard).

But I will setup the server without a screen. So I have to use the serial interface as Console.

I bought a systembase 2-port serial PCI card. And it is proved to be supported by Windows.

Now I can't make it working on Gentoo even I tried some kernel parameter. 

I went to their website and found they only provide the driver for the following:

Ver 10

		Test RedHat 9.0	    ( kernel 2.4.20 )

		Test Fedora core  1 ( kernel 2.4.22 )

		Test Fedora core  4 ( kernel 2.6.11 )

		Test Fedora core  5 ( kernel 2.6.15 )

		Test Fedora core  6 ( kernel 2.6.18 )

		Test Fedora core  7 ( kernel 2.6.21 )

		Test Fedora core  8 ( kernel 2.6.23 )

		Test Fedora core  9 ( kernel 2.6.25 )

		Test Fedora core 10 ( kernel 2.6.27 )

		Test Fedora core 11 ( kernel 2.6.29 )

		Test Fedora core 12 ( kernel 2.6.31 )

		Test RedHat EL 5 (kernel 2.6.18-8.el5 )

	Ver 11

                Test Cent OS 5.4 ( kernel 2.6.18-164.el5 )

        Ver 12

                Test Ubuntu 9.10 ( kernel 2.6.31-14 )

                Test OpenSuse 11.2 ( kernel 2.6.31-5 )

        Ver 15

                Test Ubuntu 11.10 ( kernel 3.0.0-12 )

                Test Fedora 15 ( kernel 2.6.41.4-1 )

	Ver 16

		Test Ubuntu 11.10 ( kernel 3.0.0-12 )

		Test Redhat Enterprise Linux ( Kernel 2.6.32-71.e16.i686 )

		Test CentOS ( Kernel 2.6.32-131-0.15.e16.i686 )

	Ver 17	

		Test Ubuntu 11.10 ( kernel 3.0.0-12 )

		Test Redhat Enterprise Linux ( Kernel 2.6.32-71.e16.i686 )

		Test CentOS ( Kernel 2.6.32-131-0.15.e16.i686 )

After I downloaded the driver, extracted the ZIP file, I got the following files:

2012/07/17 周二  10:34            46,160 eh_async_mpdrv.v17.sh

2013/03/24 周日  01:46                 0 files.txt

2012/11/01 周四  16:39               478 release_note.txt

2012/11/05 周一  16:05            67,794 SystemBase Linux PCI(e) MultiPort Installation Manual_v1.7.pdf

2012/11/05 周一  18:49             1,271 Test Linux Version.txt

After I execute the "eh_async_mpdrv.v17.sh", I got error report and finally the card still cannot work.

So who can help me to how to install the driver for the card in Gentoo?

Thank you very much!Last edited by bluephoenix on Fri Apr 12, 2013 2:38 pm; edited 1 time in total

----------

## bluephoenix

Since 3 days no answer, I turn to use another serial PCI card with the chipset of netmos 9865.

I found there are some posts describe how to use this card on Linux, which is better situation than the one when I use systembase chipset. But I still did not find the method about how to use it in Gentoo Linux.

I try to follow some hints about "making the source code", but I got the following error messages:

make: *** /lib/modules/3.5.7-gentoo/build/: No such file or directory. Stop.

make: *** [default] Error 2

For sure, in Gentoo, there is no /lib/modules this folder at all. But I don't know how to modify the content of the source code, even I don't know which file I need to modify.

I believe those method could be used on other Linux, such as redhat, ubuntu and etc. I think Gentoo makes the compiling procedure more complex, maybe for the portage reason. How to compile the driver sourcing code as we can do it on other platform?

Is Gentoo a so strange Linux?

----------

## ppurka

I don't know how you have set up your Gentoo. In fact, are you trying to set up Gentoo, or have you already set up Gentoo?

If you are trying this from the livecd, then you should have already compiled and installed your kernel in a chroot. If you are already booted into Gentoo then you should have the directory /lib/modules. IN my system it is linked to the kernel sources:

```
~» ls -l /lib/modules/3.8.2-gentoo/build

lrwxrwxrwx 1 root root 27 Mar 11 18:59 /lib/modules/3.8.2-gentoo/build -> /usr/src/linux-3.8.2-gentoo
```

If you are only in the livecd, then it is much harder. Not sure how you can get the kernel sources.

----------

## creaker

bluephoenix, what is your motherboard model name?

----------

## bluephoenix

I am using "colorful" Chiness brand motherboard. I am using AMD 220 CPU. I am using 32-bit Gentoo.

I have installed 4 sets of Gentoo computer, two server and two desktop. I didn't open all of them to check if I have /lib/modules folder. But I checked two of them. I am sure there is no folder with this name. I think the reason is because I NEVER compile a feature in the kernel as a module. I always choose "*" instead of "M".

----------

## bluephoenix

I made a link for the /lib/modules/3.5.7-gentoo/ pointing to /usr/src/linux.

And downloaded the later version of MCS9865 driver (v2.0).

Now the "MAKE" procedure passed.

And I gut the mcs9865-isa.ko and mcs9865.ko. I copy them to /usr/src/linux/drivers/tty/serial

I also copy mcs9865 to /etc/init.d

But when I modprobe mcs9865, I got the following error message:

FATAL: Module mcs9865 not found.

I don't know how to compile the mcs9865.ko into the kernel.

----------

## mvaterlaus

try to install the modules with the command

```
make install
```

this way you are sure, that the modules are copied to the correct location.

----------

## John R. Graham

@bluephoenix,

I think you may be making this harder than it is. How do you know that the appropriate driver isn't available in the standard kernel? Could you post the output of

```
lspci
```

please?

- John

----------

## John R. Graham

 *mvaterlaus wrote:*   

> try to install the modules with the command
> 
> ```
> make install
> ```
> ...

 That will not work. The command you're looking for is

```
make modules_install
```

  :Wink: 

- John

----------

## bluephoenix

After I input make module_install, I got:

make: *** No rule to make target 'module_install'. Stop.

After I input make install, i got:

cp mcs9865.ko mcs9865-isa.ko /usr/src/linux/drivers/tty/serial/

depmod -A

chmod +x mcs9865

cp mcs9865 /etc/init.d/

ln -s /etc/init.d/mcs9865 /etc/rc3.d/$99mcs9865 || true

......

modprobe mcs9865

FATAL: Module mcs9865 not found.

make: *** [install] Error 1

After I input "lspci", i got:

Serial controller: NetMos Technology PCI 9865 Multi-I/O Controller

Serial controller: NetMos Technology PCI 9865 Multi-I/O Controller

After I input "lspci -v", I got:

Serial controller: NetMos Technology PCI 9865 Multi-I/O Controller (prog-if 02 [165550])

Subsystem: Device a000:1000

Flags: medium devsel, IRQ 18

I/O ports at d000 [size=8]

Memory at feb0000 (32-bit, non-prefetchable) [size=4K]

Capabilities: [48] Power Management version 2

Kernel driver in use:serial

.......

After I input "setserial -g /dev/ttyS[0-7]*", I got:

/dev/ttyS4, UART: 16650V2, Port:0xe800, IRQ:20

/dev/ttyS5, UART: 16650V2, Port:0xd000, IRQ:18

----------

## John R. Graham

 *bluephoenix wrote:*   

> After I input make module_install, I got:
> 
> make: *** No rule to make target 'module_install'. Stop.

 Well, first, you have a typo there. It's "make modules_install", not "make module_install".

Next, I'll be looking at the lcpci output. Stand by.  :Wink: 

- John

----------

## John R. Graham

According to this thread on kerneltrap, support should've been added to the standard 8250/16550 serial driver (by Gentoo developer gregkh) about 3 years ago. Make sure you have

```
  -> Device Drivers

    -> Character devices

      -> Serial drivers

        -> 8250/16550 and compatible serial support
```

in your kernel configuration turned on (and the other relevant options you'll see there) in your standard kernel source and then rebuild and install your kernel and modules.

- John

----------

## bluephoenix

Yes, when I type make modules_install, I got correct output. But only a scsi driver is compiled.  I do the command from /user/src/linux folder. 

And I am sure I checked the opinion of 8250/16550 compatible serial port

----------

## bluephoenix

Now after reinstall the system, I find indeed we don't need to compile the serial PCI card driver. The kernel itself can support the netmos 9865 chipset, The system take it as the normal 8250 serial interface. 

Anyway, now the problem is solved. Linux does support limited chipset, if I cannot let Linux support my hardware, I can only buy the hardware Linux can support.

----------

## John R. Graham

Like I said.  :Wink: 

- John

----------

