HFC-S USB hat Knacken im NT-Modus (mISDN)

Frittenbude

Neuer User
Mitglied seit
23 Dez 2005
Beiträge
73
Punkte für Reaktionen
0
Punkte
6
Hallo zusammen,

erfreulicherweise konnte ich inzwischend meinen HFC-S USB-Adapter testweise im NT-Modus zum Laufen bekommen. Allerdings kommt es dabei zu Knacken (oder so ähnlich) in der Leitung. Jedenfalls dann, wenn ich das Freizeichen höre. Während des Gesprächs mit einem SIP-Gerät ist es weg. Ganz sicher bin ich mir bei letzterem nicht; werde ich noch genauer testen.

Diesen Test habe ich auf einem Kernel 2.6.9-27 durchgeführt. Der Rechner ist ein A64 auf 2GHz getaktet. An einer zu langsamen Maschine dürfte das Knacken demnach nicht liegen.
mISDN nutze ich, um den hfcsusb-Treiber zu laden.

Hier mal ein Auszug der Kernel-Messages:

hfcsusb_1 B1 protocol 0-->41000002 ch 0-->0
dsp_from_down: b_channel is now active DSP_S1/C1
dsp_from_down: done with activation, sending confirm to user space. DSP_S1/C1
dev_del_timer: timer(964e6f4) not running
dchannel_bh: event 2
dchannel_bh: event 1
dchannel_bh: event 1
dsp_from_up: releasing b_channel DSP_S1/C1
hfcsusb_1 B1 protocol 41000002-->0 ch 0-->0
dsp_from_down: b_channel is now inactive DSP_S1/C1
dev_del_timer: timer(964e6f4) not running
dev_del_timer: timer(964e71c) not running
dchannel_bh: event 2
dchannel_bh: event 1
dchannel_bh: event 1
dsp_manager: data:f8aa6008 prim:f3380 arg:c19c14ac
hfcsusb_manager: data(f49e81a4) prim(f1780) arg(00000000)
hfcsusb_1 B1 protocol 0-->0 ch 0-->0
dsp_manager: data:f8aa6008 prim:f3380 arg:f49e8220
hfcsusb_manager: data(f49e81a4) prim(f3382) arg(f8aa60a8)
dsp_manager: data:f8aa6008 prim:f1780 arg:00000000
dsp_manager: release_dsp id 10000101
release_dsp: removing conferences DSP_S1/C1
release_dsp: disconnecting instances DSP_S1/C1
release_dsp: remove & destroy object DSP_S1/C1
release_dsp: dsp instance released
dev_manager prim f1780 not handled
unregister_instance: no layer found

Fehler sind hier nicht, oder?

Hier ein Auszug der belegten Interrupts:
CPU0
0: 4723607 XT-PIC timer
1: 8 XT-PIC i8042
2: 0 XT-PIC cascade
8: 2 XT-PIC rtc
9: 0 XT-PIC acpi
10: 33476 XT-PIC eth0
11: 35 XT-PIC libata, VIA8233, ehci_hcd, uhci_hcd, uhci_hcd
12: 964530 XT-PIC uhci_hcd, uhci_hcd
14: 19089 XT-PIC ide0
15: 18 XT-PIC ide1
NMI: 0
ERR: 0

Kann jemand etwas zu dem Knacken sagen?

Wäre echt klasse, wenn dieses Problem auch noch beseitigt werden könnte. Denn dann könnte ich die HFC-S PCI-Karte sowie den HFC-S USB-Adapter gleichzeitig einsetzen.

Gruß,
Frittenbude
 
Vielleicht ein IRQ Problem.
Versuch doch mal apic im Kernel zu aktivieren.
 
Hi,

hat APIC etwas mit ACPI zu tun? Denn ACPI ist wohl im Kernel aktiviert.

Gruß,
Frittenbude
 
Frittenbude schrieb:
Hi,

hat APIC etwas mit ACPI zu tun? Denn ACPI ist wohl im Kernel aktiviert.

Gruß,
Frittenbude

Mach mal:

Code:
 cat /proc/interrupts 
           CPU0       
  0:   53378758    IO-APIC-edge  timer
  4:     167275    IO-APIC-edge  lirc_serial
  8:          4    IO-APIC-edge  rtc
  9:          0   IO-APIC-level  acpi
 14:      15800    IO-APIC-edge  ide0
 16:  426784478   IO-APIC-level  zaphfc, zaphfc
 18:   11672309   IO-APIC-level  saa7146 (2)
 19:   18997130   IO-APIC-level  saa7146 (0), saa7146 (1)
 21:       8015   IO-APIC-level  ehci_hcd:usb1, uhci_hcd:usb2, uhci_hcd:usb3, uhci_hcd:usb4, uhci_hcd:usb5
 23:      41979   IO-APIC-level  eth0

wenn bei dir IO-APIC steht und du IRQs grösser als 15 hast, dann ist APIC aktiv.
Ein System ohne APIC sieht so aus:
Code:
 cat /proc/interrupts 
           CPU0       
  0:    2616451          XT-PIC  timer
  1:       6068          XT-PIC  i8042
  2:          0          XT-PIC  cascade
  8:          4          XT-PIC  rtc
  9:        177          XT-PIC  acpi
 10:     156862          XT-PIC  nvidia
 11:      17749          XT-PIC  yenta, yenta, yenta, uhci_hcd, uhci_hcd, uhci_hcd, 0.0, Intel 82801CA-ICH3, Intel 82801CA-ICH3 Modem
 12:      63821          XT-PIC  i8042
 14:       9645          XT-PIC  ide0
 15:         13          XT-PIC  ide1
 
OK, dann ist APIC bei mir wohl nicht aktiviert.

Sind weniger als 16 IRQs und XT-PIC wird gemeldet.

Mal schauen, ob ich das irgendwie aktiviert bekomme. Ich hoffe, dass ich dafür keinen Kernel neukompilieren muss.

Gruß,
Frittenbude
 
Ich hab mir einen passenden Kernel gebaut.
Glaube kaum das das anderst geht.
 
Dazu hätte ich dann mal kurz eine Frage.

Wenn ich den Kernel kompiliere muss ich doch im Prinzip wie folgt vorgehen:
- neuesten Kernel von kernel.org herunterladen (2.6.15)
- ihn im /usr/src/ Verzeichnis entpacken
- Link "linux" und "linux-2.6" auf /usr/src/linux-2.6.15 legen
- im Source-Verzeichnis des Kernels "make menuconfig" eingeben und die gewünschten Treiber und Funktionen auswählen.
(ext2 und ext3 in den Kernel integrieren (also nicht als Modul), ist das richtig?)
- dann make ausführen
- bzImage aus /usr/src/linux/arch/i386/boot/ nach /boot/linux-2.6.15 kopieren
- dann in die grub.conf
root (hd0,0)
kernel /linux-2.6.15

Testweise habe ich das mal unter einer VMWare (gleiche Linux-Distribution) installiert, wobei beim Booten des neuen Kernels dann folgendes auftrat:

Cannot open root device "LABEL=/1" or unknown-block(0,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

Soweit ich es herausgefunden habe, werden Festplatten unter VMWare als SCSI-Platten angesprochen und ein Kernel kann gewöhnlich nicht direkt darauf zugreifen, sondern braucht wohl noch ein initrd-image. Ist das richtig?
Und wenn ja, würde meine Vorgehensweise denn ansonsten klappen, wenn ich es direkt auf meinem Server anwenden würde (ohne VMWare oder SCSI-Geräte)?

Gruß,
Frittenbude
 
Seht erst mal unter /usr/src/linux/.config ob die folgenden Optionen auf Y oder N stehen:

CONFIG_X86_UP_APIC=y
CONFIG_X86_UP_IOAPIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_MCE=y

Wenn ja kann man beim Laden des Kernel acpi=force und apic angeben. So wird ACPI und APIC erzwungen. Das macht man am besten z.B. bei GRUB in /boot/grub/menu.lst.

Wenn die Optionen deaktiviert sind neuen Kernel bauen, wenns trotzdem nicht klappt hat das Board keinen APIC Chip.

Bubble
 
Hi,

in meiner .config steht folgendes:

# CONFIG_X86_UP_APIC is not set
CONFIG_X86_MCE=y
# CONFIG_X86_MCE_NONFATAL is not set

Ist also nicht aktiviert. Aber davon bin ich ohnehin schon ausgegangen. Daher versuche ich ja den Kernel neu zu kompilieren.

Ist denn meine Vorgehensweise beim Kompilieren in meinem vorhergehenden Beitrag richtig? Ich habe mir schon einige Howtos angesehen. Wäre nett, wenn Du mir dazu etwas sagen könntest.

Gruß,
Frittenbude
 
Sieht erst mal gut aus.
vmlinuz muss irgendwo nach /boot gerne auch in ein unterverzeichnis. grub.conf is nicht der richtige ort zum konfigurieren.
/boot/grub/menu.lst hier muss es rein. hier mal meine:
kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 selinux=0 splash=silent resume=/dev/hda3 desktop elevator=as showopts
initrd (hd0,1)/boot/initrd

Bubble
 
OK, danke.

Wie erstelle ich denn die initrd-Datei?

Gruß,
Frittenbude
 
Wenn das bei dir bisher fehlt dann jetzt auch weg lassen.
 
Ich teste den Kernel ja vorab erstmal unter einer VMWare-Maschine. Da dort die virtuellen Laufwerke als SCSI-Laufwerke angesprochen werden, brauche ich wohl so ein Initrd-Image.

Ich möchte den kompilierten Kernel nicht gleich auf meinem "Wirksystem" einsetzen, da er nur Remote via SSH bedient werden kann. Lokal am Rechner sind keine Ein- und Ausgabegeräte angeschlossen. Daher möchte ich nicht einfach die Standardbootoption auf den neuen Kernel stellen. Sonst bekomme ich die Kiste im Problemfall nicht mehr hochgefahren.

Dabei fällt mir ein, dass ich den neuen Kernel direkt auf der Kiste kompilieren und als zweite Bootoption einbinden könnte. In diesem Fall bräuchte ich nur eine Tastatur anzuschließen und blind die zweite Bootoption bei Hochfahren auszuwählen. Im Problemfall könnte ich dann immer noch booten.
Allerdings könnte ich eventuelle Fehlermeldungen dann nicht sehen.

Eine andere Möglichkeit gibt es dann wohl nicht, außer den Kernel auf einem anderen System (nativ, z.B. auf Notebook) zu testen. Oder hat jemand eine andere Idee?

Gruß,
Frittenbude
 
;)

Teste mal auf der VMWare.
 
Dabei habe ich dann ja - wie gesagt - das Problem, dass ich ein initrd-image wegen SCSI erstellen müsste.

Daher werde ich es als Dualboot auf meinem Notebook testen.

Gruß,
Frittenbude
 
Frittenbude schrieb:
Dabei habe ich dann ja - wie gesagt - das Problem, dass ich ein initrd-image wegen SCSI erstellen müsste.

Bei Suse langt glaube ich "mkinitrd", ansonsten
"mkinitrd -o /tmp/initrd.img <kernelversion>" und anschließend nach /boot kopieren (eventuell vorher noch die Kernelversion an den Namen anhängen).
Und nicht vergessen, das auch in den Bootmanager einzutragen.
s. man mkinitrd
 
Hallo zusammen,

ich habe das System mal auf einem Notebook im Dualboot-Verfahren aufgesetzt und anschließend den Kernel neu kompiliert. Hat auch alles einwandfrei funktioniert.

Aber obwohl ich den neuen Kernel mit ACPI- und APIC-Funktionalität boote, zeigt mir "cat /proc/interrupts" kein APIC-Modus an:

[root@myserver ~]# cat /proc/interrupts
CPU0
0: 84447 XT-PIC timer
1: 8 XT-PIC i8042
2: 0 XT-PIC cascade
7: 0 XT-PIC Intel 82801DB-ICH4
8: 2 XT-PIC rtc
9: 2 XT-PIC acpi
11: 822 XT-PIC ehci_hcd:usb1, uhci_hcd:usb2, uhci_hcd:usb3, uhci_hcd:usb4, eth0
12: 106 XT-PIC i8042
14: 4915 XT-PIC ide0
15: 23 XT-PIC ide1
NMI: 0
LOC: 0
ERR: 0
MIS: 0

Laut dmesg ist zumindest ACPI aktiviert.

In meiner .config des kompilierten Kernels sind folgende Optionen, die mit APIC im Zusammenhang stehen aktiviert.

CONFIG_X86_GOOD_APIC=y
CONFIG_X86_UP_APIC=y
CONFIG_X86_UP_IOAPIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y

Das Notebook sollte eigentlich alle neuartigen Features diesbezüglich können. Es ist ein Centrino-Notebook mit dem Intel-Chipsatz i855GM.

Hier sind noch meine angegebenen Boot-Parameter.

kernel /linux-2.6.15 ro root=LABEL=/ acpi=force apic

Hat jemand ne Idee woran das liegen könnte?

Gruß,
Frittenbude
 
Zeigt den dmesg gar nichts zu apic an?
(dmesg | grep -i apic)
 
Hi!

Das hätte ich vielleicht schon eher ausprobieren sollten ;)

Folgende Ausgabe erhalte ich:

[root@myserver ~]# dmesg | grep -i apic
Kernel command line: ro root=LABEL=/ acpi=force apic
Local APIC disabled by BIOS -- you can enable it with "lapic"
mapped APIC to ffffd000 (013ff000)

Ist das eine Boot-Option?
Ich werde es mal testen und mich anschließend zurückmelden.

So, habe es jetzt mit der Option "lapic" probiert und erhalte nachfolgende Meldung.

[root@myserver ~]# dmesg | grep -i apic
Kernel command line: ro root=LABEL=/ acpi=force lapic
Local APIC disabled by BIOS -- reenabling.
Found and enabled local APIC!
mapped APIC to ffffd000 (fee00000)

"cat /proc/interrupts" sagt aber nach wie vor nichts von APIC, sondern nur XT-PIC.

[root@myserver ~]# cat /proc/interrupts
CPU0
0: 16620 XT-PIC timer
1: 8 XT-PIC i8042
2: 0 XT-PIC cascade
7: 0 XT-PIC Intel 82801DB-ICH4
8: 2 XT-PIC rtc
9: 2 XT-PIC acpi
11: 421 XT-PIC ehci_hcd:usb1, uhci_hcd:usb2, uhci_hcd:usb3, uhci_hcd:usb4, eth0
12: 106 XT-PIC i8042
14: 4763 XT-PIC ide0
15: 23 XT-PIC ide1
NMI: 0
LOC: 8714
ERR: 0
MIS: 0

Gruß,
Frittenbude
 
Zuletzt bearbeitet:
Würde mal sagen, der Laptop unterstützt kein APIC-IRQ Verteilung.
Bei mir sieht das so aus:

Code:
Jan 14 19:29:52 vdr-pbx kernel: ACPI: Local APIC address 0xfee00000
Jan 14 19:29:52 vdr-pbx kernel: ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
Jan 14 19:29:52 vdr-pbx kernel: Processor #0 6:8 APIC version 16
Jan 14 19:29:52 vdr-pbx kernel: ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
Jan 14 19:29:52 vdr-pbx kernel: ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
Jan 14 19:29:52 vdr-pbx kernel: IOAPIC[0]: apic_id 2, version 3, address 0xfec00000, GSI 0-23
Jan 14 19:29:52 vdr-pbx kernel: Enabling APIC mode:  Flat.  Using 1 I/O APICs
Jan 14 19:29:52 vdr-pbx kernel: mapped APIC to ffffd000 (fee00000)
Jan 14 19:29:52 vdr-pbx kernel: mapped IOAPIC to ffffc000 (fec00000)
Jan 14 19:29:52 vdr-pbx kernel: ENABLING IO-APIC IRQs
Jan 14 19:29:52 vdr-pbx kernel: ACPI: Using IOAPIC for interrupt routing
Jan 14 19:37:04 vdr-pbx kernel: ACPI: Local APIC address 0xfee00000
Jan 14 19:37:04 vdr-pbx kernel: ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
Jan 14 19:37:04 vdr-pbx kernel: Processor #0 6:8 APIC version 16
Jan 14 19:37:04 vdr-pbx kernel: ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
Jan 14 19:37:04 vdr-pbx kernel: ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
Jan 14 19:37:04 vdr-pbx kernel: IOAPIC[0]: apic_id 2, version 3, address 0xfec00000, GSI 0-23
Jan 14 19:37:04 vdr-pbx kernel: Enabling APIC mode:  Flat.  Using 1 I/O APICs
Jan 14 19:37:04 vdr-pbx kernel: mapped APIC to ffffd000 (fee00000)
Jan 14 19:37:04 vdr-pbx kernel: mapped IOAPIC to ffffc000 (fec00000)
Jan 14 19:37:04 vdr-pbx kernel: ENABLING IO-APIC IRQs
Jan 14 19:37:04 vdr-pbx kernel: ACPI: Using IOAPIC for interrupt routing

Ich habe das Mainboard im Einsatz: ASUS A7V600-X
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.