WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

Re: [Xen-users] Accessing /dev/ttyI0 in guest domain not possible?

To: "Mark Williamson" <mark.williamson@xxxxxxxxxxxx>
Subject: Re: [Xen-users] Accessing /dev/ttyI0 in guest domain not possible?
From: forumuser@xxxxxxxxxx
Date: Tue, 5 Jul 2005 15:07:41 +0200 (CEST)
Cc: forumuser@xxxxxxxxxx, xen-users@xxxxxxxxxxxxxxxxxxx
Delivery-date: Tue, 05 Jul 2005 13:06:48 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
Importance: Normal
In-reply-to: <200507040218.20559.mark.williamson@xxxxxxxxxxxx>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
References: <1083.192.168.0.13.1120416469.squirrel@home> <200507040218.20559.mark.williamson@xxxxxxxxxxxx>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: SquirrelMail/1.4.2
Hi Mark,

Making some progress now. However, I still have some problems although it
looks I can access the ISDN card so now and then.

This is what I have done:

title Xen 2.0 / XenLinux 2.6.11 rks
   kernel /boot/xen.gz dom0_mem=64000 console=vga physdev_dom0_hide=(01:0d.0)
   module /boot/vmlinuz-2.6.11-rks-xen0 root=/dev/hda3 ro console=tty0

And in my guest OS I put the line: pci = ['01,0e,0'] so I will have access
to my ISDN PCI card. Asterisk is not complaining anymore, but no calls are
 ISDN calls are "seen" by my gues OS.

Using lspvc -v I found out that the ISDN card did not got an IRQ, so I
inserted the card in another PCI-slot and rebooted the system. Now I get
the message that shows me an IRQ has been found:

ISDN subsystem Rev: 1.1.2.3/1.1.2.3/1.1.2.2/1.1.2.3/1.1.2.2/1.1.2.2
dss1_divert module successfully installed
HiSax: Linux Driver for passive ISDN cards
HiSax: Version 3.5 (kernel)
HiSax: Layer1 Revision 2.46.2.5
HiSax: Layer2 Revision 2.30.2.4
HiSax: TeiMgr Revision 2.20.2.3
HiSax: Layer3 Revision 2.22.2.3
HiSax: LinkLayer Revision 2.59.2.4
HiSax: Total 0 card defined
hisax_isac: ISAC-S/ISAC-SX ISDN driver v0.1.0
hisax_fcpcipnp: Fritz!Card PCI/PCIv2/PnP ISDN driver v0.0.1
HiSax: Card 1 Protocol EDSS1 Id=fcpcipnp0 (0)
HiSax: DSS1 Rev. 2.32.2.3
HiSax: 2 channels added
HiSax: MAX_WAITING_CALLS added
PCI: Obtained IRQ 21 for device 0000:01:0d.0
hisax_fcpcipnp: found adapter Fritz!Card PCI at 0000:01:0d.0

The only thing that worries me is the line "HiSax: Total 0 card defined".

lspci -v looks ok now:
0000:01:0d.0 Network controller: AVM Audiovisuelles MKTG & Computer System
GmbH A1 ISDN [Fritz] (rev 02)
        Subsystem: AVM Audiovisuelles MKTG & Computer System GmbH
FRITZ!Card ISDN Controller
        Flags: medium devsel, IRQ 21
        Memory at febfff60 (32-bit, non-prefetchable) [size=32]
        I/O ports at 7860 [size=32]

However, no calls are recognized by the card....

Now I start my guest OS (changing the  pci = ['01,0e,0'] to  pci =
['01,0d,0'] which sees my ISDN card:

HiSax: Linux Driver for passive ISDN cards
HiSax: Version 3.5 (kernel)
HiSax: Layer1 Revision 2.46.2.5
HiSax: Layer2 Revision 2.30.2.4
HiSax: TeiMgr Revision 2.20.2.3
HiSax: Layer3 Revision 2.22.2.3
HiSax: LinkLayer Revision 2.59.2.4
hisax_isac: ISAC-S/ISAC-SX ISDN driver v0.1.0
hisax_fcpcipnp: Fritz!Card PCI/PCIv2/PnP ISDN driver v0.0.1
HiSax: Card 1 Protocol EDSS1 Id=fcpcipnp0 (0)
HiSax: DSS1 Rev. 2.32.2.3
HiSax: 2 channels added
HiSax: MAX_WAITING_CALLS added
PCI: Obtained IRQ 21 for device 0000:01:0d.0
hisax_fcpcipnp: found adapter Fritz!Card PCI at 0000:01:0d.0

But again, no calls are recognized.

I have the feeling that this is an IRQ problem. I restarted the system
several times and I got it working once....

Does xen do anything special with interrupts I should be aware of?

Thanks,
Rene









>> Now I started up my xenU domain which does not show anything about found
>> ISDN cards, but I am not worried as I don't see any message about
>> network
>> cards either which work perfectly.
>
> The default configuration uses a virtual network card - network traffic
> gets
> sent via dom0, which owns the *real* network card.
>
>> But when starting my Asterisk server in the xenU domain I get some
>> errors:
>> Jul  3 18:10:36 ERROR[865]: Unable to register channel '/dev/ttyI0'
>> Jul  3 18:10:36 WARNING[865]: chan_modem.so: load_module failed,
>> returning
>> -1 Jul  3 18:10:36 WARNING[865]: Loading module chan_modem.so failed!
>>
>> So it looks that an unpriviliged domain cannot access my ISDN card?
>
> The XenU kernel won't support any real hardware devices, only Xen's
> virtual
> devices.
>
>> Digging further, I decided to boot a xen0 domain as guest instead of
>> xenU.
>> Now my ISDN card is recognized although not installed(?)
>
>> HiSax: AVM PCI driver Rev. 1.29.2.4
>> FritzPCI: No PCI card found
>> HiSax: Card AVM Fritz PnP/PCI not installed !
>>
>> Asterisk doesn't complain anymore although I am not sure if it works...
>>
>> Does anyone know why xenU is not allowed to access my ISDN /dev/ttyI0?
>
> You need to give the domain direct access to the ISDN card.  This is
> important
> because only one domain can own a PCI card at once.  Multiple drivers
> fighting over a PCI card will end in tears...
>
> You need to hide the PCI device from dom0 so that it doesn't try to drive
> it:
> add "physdev_dom0_hide=(xx.yy.z)" to Xen's commandline, substituting the
> config address of your card (you can find this in the output of "lspci").
>
> When you boot, check "xm dmesg" for an explicit line from Xen saying that
> it's
> hiding the PCI device.  If there isn't one then something's wrong - you'll
> have to debug this first.
>
> Once hiding the device works, you need to give the domain access to it.
> You
> need to add this to the config file - the syntax for this is (I think)
> described in the user manual.
>
> Once you've done those things, boot the xen0 kernel in the domain and it
> should work.  Let us know if you get stuck.
>
> Cheers,
> Mark
>
> _______________________________________________
> Xen-users mailing list
> Xen-users@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-users
>
>


_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users