qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Claudio Fontana <claudio.fontana@huawei.com>
To: Alexander Graf <agraf@suse.de>, Peter Maydell <peter.maydell@linaro.org>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] QEMU pci mach-virt: setting PCI_INTERRUPT_LINE?
Date: Wed, 25 Feb 2015 13:16:18 +0100	[thread overview]
Message-ID: <54EDBD12.9020602@huawei.com> (raw)
In-Reply-To: <54EDBB56.10205@suse.de>

On 25.02.2015 13:08, Alexander Graf wrote:
> 
> 
> On 25.02.15 13:07, Claudio Fontana wrote:
>>
>>
>> On 24.02.2015 15:34, Claudio Fontana wrote:
>>> Hello,
>>>
>>> I am trying to set the pci interrupt line field in the configuration space
>>> (offset 0x3c), since it is initialized as zero.
>>>
>>> I would like to set it to the right value as read from the device tree,
>>> in order for other existing software which relies on it to be able to work unmodified..
>>>
>>> but it does not seem to work (I seem to read back zero even after setting the PCI_INTERRUPT_LINE field).
>>>
>>> I am also reading the interrupt pin, but that one instead seems to work out of the box..
>>>
>>> Thank you for any suggestion,
>>>
>>> Claudio
>>
>> By the way, I am currently just avoiding to rely on PCI_INTERRUPT_LINE for AArch64,
>> but shouldn't the register be programmable?
> 
> As far as I understand the register should really just be a scratch r/w
> register, yeah. Are you sure you're writing in byte granularity?
> 
> 
> Alex

Relatively sure, yeah.. I'll check again, but at least for x86_64 the get function works.
It's OSv's pci-function.cc

u8 function::get_interrupt_line()
{
    return pci_readb(PCI_CFG_INTERRUPT_LINE);
}

void function::set_interrupt_line(u8 irq)
{
    pci_writeb(PCI_CFG_INTERRUPT_LINE, irq);
}

I'll try to debug with PCI_DEBUG and such things, see if I find out something...

Ciao,

Claudio





-- 
Claudio Fontana
Server Virtualization Architect
Huawei Technologies Duesseldorf GmbH
Riesstraße 25 - 80992 München

office: +49 89 158834 4135
mobile: +49 15253060158

      reply	other threads:[~2015-02-25 12:16 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-24 14:34 [Qemu-devel] QEMU pci mach-virt: setting PCI_INTERRUPT_LINE? Claudio Fontana
2015-02-25 12:07 ` Claudio Fontana
2015-02-25 12:08   ` Alexander Graf
2015-02-25 12:16     ` Claudio Fontana [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=54EDBD12.9020602@huawei.com \
    --to=claudio.fontana@huawei.com \
    --cc=agraf@suse.de \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).