[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-ia64-devel] [Patch] Issue about interrupt for PV-on-HVM on IPF



Hi Alex,

I (Doi.Tsunehisa) said:
> You (alex.williamson) said:
>>> +static int get_callback_irq(struct pci_dev *pdev)
>>> +{
>>> +#ifdef __ia64__
>>> +   int irq;
>>> +   for (irq = 0; irq < 16; irq++) {
>>> +           if (isa_irq_to_vector_map[irq] == pdev->irq)
>>> +                   return irq;
>> 
>>    This should probably be isa_irq_to_vector(irq).  Will the HVM PCI
>> device always use an ISA IRQ?  Thanks,
> 
>   In my investigation, it always uses its value.

  In qemu-dm code, it uses only PIC as interrupt controller, I think.
Other interrupt controller is masked as follow:

[tools/ioemu/hw/pc.c]
   627  /* PC hardware initialisation */
   628  static void pc_init1(uint64_t ram_size, ....
   .....
   650      /* init CPUs */
   651      for(i = 0; i < smp_cpus; i++) {
   652          env = cpu_init();
   653  #ifndef CONFIG_DM
   654          if (i != 0)
   655              env->hflags |= HF_HALTED_MASK;
   656          if (smp_cpus > 1) {
   657              /* XXX: enable it in all cases */
   658              env->cpuid_features |= CPUID_APIC;
   659          }
   660  #endif /* !CONFIG_DM */
   661          register_savevm("cpu", i, 3, cpu_save, cpu_load, env);
   662          qemu_register_reset(main_cpu_reset, env);
   663  #ifndef CONFIG_DM
   664          if (pci_enabled) {
   665              apic_init(env);
   666          }
   667  #endif /* !CONFIG_DM */
   668      }
   .....
   818  #ifndef CONFIG_DM
   819      if (pci_enabled) {
   820          ioapic = ioapic_init();
   821      }
   822  #endif /* !CONFIG_DM */
   823      isa_pic = pic_init(pic_irq_request, first_cpu);
   824  #ifndef CONFIG_DM
   825      pit = pit_init(0x40, 0);
   826      pcspk_init(pit);
   827  #endif /* !CONFIG_DM */
   828  #ifndef CONFIG_DM
   829      if (pci_enabled) {
   830          pic_set_alt_irq_func(isa_pic, ioapic_set_irq, ioapic);
   831      }
   832  #endif /* !CONFIG_DM */
   833
   834      if (pci_enabled)
   835          pci_xen_platform_init(pci_bus);

Thanks,
- Tsunehisa Doi

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.