Instalação do cartão FreeBSD Serial IO

1

Estou tentando instalar uma placa PCI serial IO em uma caixa do FreeBSD 9.1 (Pré-lançamento). Eu não tive sucesso durante horas de trabalho. Eu recompilei o kernel usando as opções puc e COM_MULTIPORT. Não há sucesso.

This is the "pciconf -l | grep ^none" result:

none0@pci0:0:9:0:       class=0x070002 card=0x32534348 chip=0x32534348 rev=0x10 hdr=0x00
none1@pci0:0:17:5:      class=0x040100 card=0x45521106 chip=0x30591106 rev=0x50 hdr=0x00
    
por Kamyar Inanloo 19.11.2012 / 13:23

1 resposta

1

Se traduzirmos parte da mensagem, recebemos isso:

none0@              no driver attached
pci0:0:9:0:         location of the card (on the PCI bus)
class=0x070002      This seems to indicate serial IO cards
card=0x3253 4348    4348 indicates Nanjing Qin Heng Electronics Co. Ltd ( http://wch.cn )
                    The PCI database identifies 0x3253 as a 
                    "Placa PCI serial paralela multiserial"

Em outras palavras, sabemos qual placa é. Mas o seu kernel não reconheceu isso. Sem reconhecê-lo, o driver correto não foi carregado.

Existem três soluções possíveis a partir daqui:

  1. Localize o driver correto (geralmente através do site do fabricante) e use-o.
  2. Ou atualize o kernel para uma versão que entenda este dispositivo
  3. Ou escreva seu próprio driver.

3) É muito trabalho.

2) É mais fácil atualizando o kernel, mas você já está usando o kernel não atual mais recente. Você poderia tentar 10 / current, mas duvido que funcione. Vale a pena tentar embora.

Como alternativa, modifique a origem do kernel. Faça o download, você ainda não o tem:% cd /usr/src/sys/dev/uart/ %código% vim uart_bus_pci.c (pesquisas para a linha contendo TOPIC Semiconductor TP560 56k modem )

Adicione a linha marcada com um sinal de adição. (use /TOPIC Semiconductor TP560 56k modem entre no modo de inserção)

 { 0x151f, 0x0000, 0xffff, 0, "TOPIC Semiconductor TP560 56k modem", 0x10 },
+{ 0x4348, 0x3253, 0xffff, 0, "WinChipHead Dual Port RS-232", 0x10 },
 { 0x9710, 0x9820, 0x1000, 1, "NetMos NM9820 Serial Port", 0x10 },

Salvar ( i )

Recompile o kernel. Você já fez isso com as opções puc e COM_MULTIPORT para saber como isso é feito. Para outros leitores com problemas semelhantes, consulte o link

Se tudo correr bem, o kernel agora [tentará] anexar um driver. Esperemos que um que funcione.
Este último não é garantido, pois nem todos os cartões de série usam multiplicadores da mesma maneira.

    
por 19.11.2012 / 23:16