Displaying 20 results from an estimated 67 matches for "setup_irq".
2014 Aug 20
2
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...mportant to support that, but I think maybe it's not
> enough, msi_chip is only responsible for IRQ allocation, teardown, etc..
>
> The key difference between PCI device and Non-PCI MSI is the interfaces to
> access hardware MSI registers.
> for instance, currently, msi_chip->setup_irq() to setup MSI irq and configure
> the MSI address/data registers, so we need to provide device specific
> write_msi_msg() interface, then when we call msi_chip->setup_irq(), the device
> MSI registers can be configured appropriately.
What if we can register/override the setup_irq() fr...
2014 Aug 20
2
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...mportant to support that, but I think maybe it's not
> enough, msi_chip is only responsible for IRQ allocation, teardown, etc..
>
> The key difference between PCI device and Non-PCI MSI is the interfaces to
> access hardware MSI registers.
> for instance, currently, msi_chip->setup_irq() to setup MSI irq and configure
> the MSI address/data registers, so we need to provide device specific
> write_msi_msg() interface, then when we call msi_chip->setup_irq(), the device
> MSI registers can be configured appropriately.
What if we can register/override the setup_irq() fr...
2011 Mar 17
1
serial console driver using release_irq()/setup_irq() on suspend/resume
Keir,
is there any particular reason this is being done this way, other than
having made the change in 15259:35e38c9048c8 very simple? I''m
asking because in general, with no modules, Xen ought to not need
setup_irq() post-init (for release_irq() the serial driver is actually the
only consumer), and after fiddling with request_irq() callers this is
now the only one needing the function to be in .text.
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
ht...
2014 Aug 20
0
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
>> The key difference between PCI device and Non-PCI MSI is the interfaces to
>> access hardware MSI registers.
>> for instance, currently, msi_chip->setup_irq() to setup MSI irq and configure
>> the MSI address/data registers, so we need to provide device specific
>> write_msi_msg() interface, then when we call msi_chip->setup_irq(), the device
>> MSI registers can be configured appropriately.
>
> What if we can register/overr...
2007 Apr 18
0
[PATCH 2/5] Interrupts subarch cleanup.patch
...sed (usually add in
- * the architecture specific gates)
+ /*
+ * setup after interrupt gates are initialised (usually add in
+ * the architecture specific gates) and initialize controllers
*/
intr_init_hook();
+#ifdef CONFIG_X86_LOCAL_APIC
+ apic_intr_init();
+#endif
+ if (!acpi_ioapic)
+ setup_irq(2, &cascade_action);
/*
* Set the clock to HZ Hz, we already have a valid
===================================================================
--- a/arch/i386/mach-default/setup.c
+++ b/arch/i386/mach-default/setup.c
@@ -18,24 +18,6 @@
int no_broadcast=DEFAULT_SEND_IPI;
-/**
- * pre_...
2007 Apr 18
0
[PATCH 2/5] Interrupts subarch cleanup.patch
...sed (usually add in
- * the architecture specific gates)
+ /*
+ * setup after interrupt gates are initialised (usually add in
+ * the architecture specific gates) and initialize controllers
*/
intr_init_hook();
+#ifdef CONFIG_X86_LOCAL_APIC
+ apic_intr_init();
+#endif
+ if (!acpi_ioapic)
+ setup_irq(2, &cascade_action);
/*
* Set the clock to HZ Hz, we already have a valid
===================================================================
--- a/arch/i386/mach-default/setup.c
+++ b/arch/i386/mach-default/setup.c
@@ -18,24 +18,6 @@
int no_broadcast=DEFAULT_SEND_IPI;
-/**
- * pre_...
2014 Aug 01
1
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
Hi Yijing
> -----Original Message-----
> From: Yijing Wang [mailto:wangyijing at huawei.com]
> Sent: Saturday, July 26, 2014 8:39 AM
> To: linux-kernel at vger.kernel.org
> Cc: Xinwei Hu; Wuyun; Bjorn Helgaas; linux-pci at vger.kernel.org;
> Paul.Mundt at huawei.com; James E.J. Bottomley; Marc Zyngier; linux-arm-
> kernel at lists.infradead.org; Russell King; linux-arch at
2014 Aug 01
1
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
Hi Yijing
> -----Original Message-----
> From: Yijing Wang [mailto:wangyijing at huawei.com]
> Sent: Saturday, July 26, 2014 8:39 AM
> To: linux-kernel at vger.kernel.org
> Cc: Xinwei Hu; Wuyun; Bjorn Helgaas; linux-pci at vger.kernel.org;
> Paul.Mundt at huawei.com; James E.J. Bottomley; Marc Zyngier; linux-arm-
> kernel at lists.infradead.org; Russell King; linux-arch at
2014 Aug 20
2
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...-
> kernel at vger.kernel.org
> Subject: Re: [RFC PATCH 00/11] Refactor MSI to support Non-PCI device
>
> >> The key difference between PCI device and Non-PCI MSI is the
> >> interfaces to access hardware MSI registers.
> >> for instance, currently, msi_chip->setup_irq() to setup MSI irq and
> >> configure the MSI address/data registers, so we need to provide
> >> device specific
> >> write_msi_msg() interface, then when we call msi_chip->setup_irq(),
> >> the device MSI registers can be configured appropriately.
> >
&...
2014 Aug 20
2
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...-
> kernel at vger.kernel.org
> Subject: Re: [RFC PATCH 00/11] Refactor MSI to support Non-PCI device
>
> >> The key difference between PCI device and Non-PCI MSI is the
> >> interfaces to access hardware MSI registers.
> >> for instance, currently, msi_chip->setup_irq() to setup MSI irq and
> >> configure the MSI address/data registers, so we need to provide
> >> device specific
> >> write_msi_msg() interface, then when we call msi_chip->setup_irq(),
> >> the device MSI registers can be configured appropriately.
> >
&...
2014 Aug 04
0
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...msi_chip framework is important to support that, but I think maybe it's not enough, msi_chip is only responsible for IRQ allocation, teardown, etc..
The key difference between PCI device and Non-PCI MSI is the interfaces to access hardware MSI registers.
for instance, currently, msi_chip->setup_irq() to setup MSI irq and configure the MSI address/data registers, so we need to provide device specific write_msi_msg() interface,
then when we call msi_chip->setup_irq(), the device MSI registers can be configured appropriately.
My patchset is just a RFC draft, I will update it later, all we wa...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 13/17] paravirt_ops - time updates
...return retval;
+}
#ifdef CONFIG_CPU_FREQ
/* Frequency scaling support. Adjust the TSC based timer when the cpu frequency
@@ -893,6 +903,11 @@ static struct irqaction irq0 = {
timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL
};
+inline void time_init_hook()
+{
+ setup_irq(0, &irq0);
+}
+
void __init time_init(void)
{
if (nohpet)
@@ -932,7 +947,7 @@ void __init time_init(void)
vxtime.tsc_quot = (USEC_PER_MSEC << US_SCALE) / cpu_khz;
vxtime.last_tsc = get_cycles_sync();
set_cyc2ns_scale(cpu_khz);
- setup_irq(0, &irq0);
+ do_time_init();
#ifn...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 13/17] paravirt_ops - time updates
...return retval;
+}
#ifdef CONFIG_CPU_FREQ
/* Frequency scaling support. Adjust the TSC based timer when the cpu frequency
@@ -893,6 +903,11 @@ static struct irqaction irq0 = {
timer_interrupt, IRQF_DISABLED, CPU_MASK_NONE, "timer", NULL, NULL
};
+inline void time_init_hook()
+{
+ setup_irq(0, &irq0);
+}
+
void __init time_init(void)
{
if (nohpet)
@@ -932,7 +947,7 @@ void __init time_init(void)
vxtime.tsc_quot = (USEC_PER_MSEC << US_SCALE) / cpu_khz;
vxtime.last_tsc = get_cycles_sync();
set_cyc2ns_scale(cpu_khz);
- setup_irq(0, &irq0);
+ do_time_init();
#ifn...
2020 Aug 04
0
[PATCH V5 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
...cer(&vq->call_ctx.producer);
> +??? vq->call_ctx.producer.token = vq->call_ctx.ctx;
> +??? irq_bypass_register_producer(&vq->call_ctx.producer);
> +??? spin_unlock(&vq->call_ctx.ctx_lock);
> +}
>
>
>
> I think setup_irq() and update_irq() could be unified with the following
> logic:
>
> irq_bypass_unregister_producer(&vq->call_ctx.producer);
> irq = ops->get_vq_irq(vdpa, qid);
> ??? if (!vq->call_ctx.ctx || irq < 0) {
> ??? ??? spin_unlock(&vq->call_ctx...
2020 Aug 05
0
[PATCH V5 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
...oducer(&vq->call_ctx.producer);
>>> +??? vq->call_ctx.producer.token = vq->call_ctx.ctx;
>>> + irq_bypass_register_producer(&vq->call_ctx.producer);
>>> +??? spin_unlock(&vq->call_ctx.ctx_lock);
>>> +}
>>
>>
>> I think setup_irq() and update_irq() could be unified with the
>> following logic:
>>
>> irq_bypass_unregister_producer(&vq->call_ctx.producer);
>> irq = ops->get_vq_irq(vdpa, qid);
>> ??? if (!vq->call_ctx.ctx || irq < 0) {
>> ??? ??? spin_unlock(&vq->call...
2020 Aug 05
0
[PATCH V5 4/6] vhost_vdpa: implement IRQ offloading in vhost_vdpa
...gt; +??? vq->call_ctx.producer.token = vq->call_ctx.ctx;
>>>>> + irq_bypass_register_producer(&vq->call_ctx.producer);
>>>>> +??? spin_unlock(&vq->call_ctx.ctx_lock);
>>>>> +}
>>>>
>>>>
>>>> I think setup_irq() and update_irq() could be unified with the
>>>> following logic:
>>>>
>>>> irq_bypass_unregister_producer(&vq->call_ctx.producer);
>>>> irq = ops->get_vq_irq(vdpa, qid);
>>>> ??? if (!vq->call_ctx.ctx || irq < 0) {
>&...
2008 Sep 19
19
MSI causing softpanics in guest
...00000000 00000000 00000000 00000000 00000000 00000000
00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000
00000000 00000000 00000000 00000000 00000000 00000000 00000000
00000000
Call Trace:
[<c0248aef>] startup_pirq+0x3f/0x250
[<c0150b50>] setup_irq+0x160/0x1b0
[<ee0dd270>] nfe_interrupt_handler+0x0/0x30 [nfemsg]
[<c0150c43>] request_irq+0xa3/0xc0
[<ee02c8ad>] nfemsg_module_init+0x8ad/0x133e [nfemsg]
[<c030531b>] cond_resched+0x2b/0x40
[<c0305369>] wait_for_completion+0x19/0xf0
[<c0142818>] sys_init_mo...
2020 Jul 23
0
[PATCH V3 3/6] vDPA: implement vq IRQ allocate/free helpers in vDPA core
...evice
2) register producer when DRIVER_OK and unregister producer when
!DRIVER_OK in vhost-vDPA
3) deal with the synchronization with SET_VRING_CALL
4) document that irq is not expected to be changed during DRIVER_OK
This can make sure the API works during driver probe, and we don't need
the setup_irq and unsetup_irq method in vdpa_driver
Thanks
> + */
> +int vdpa_devm_request_irq(struct device *dev, struct vdpa_device *vdev,
> + unsigned int irq, irq_handler_t handler,
> + unsigned long irqflags, const char *devname, void *dev_id,
> + int qid)
> +{
> + int re...
2006 Mar 14
0
[patch] call out to arch code to deliver timer interrupts
...r_event(struct vcpu *v)
+{
+ send_guest_virq(v, VIRQ_TIMER);
+}
+
diff -r df0ad1c46f10 -r 686cd624618c xen/arch/x86/time.c
--- a/xen/arch/x86/time.c Thu Mar 9 16:03:23 2006 +0100
+++ b/xen/arch/x86/time.c Tue Mar 14 14:56:55 2006 -0600
@@ -923,6 +923,11 @@ void __init early_time_init(void)
setup_irq(0, &irq0);
}
+void arch_send_timer_event(struct vcpu *v)
+{
+ send_guest_virq(v, VIRQ_TIMER);
+}
+
/*
* Local variables:
* mode: C
diff -r df0ad1c46f10 -r 686cd624618c xen/common/schedule.c
--- a/xen/common/schedule.c Thu Mar 9 16:03:23 2006 +0100
+++ b/xen/common/schedule.c Tue Mar...
2019 Apr 26
0
[PATCH 07/10] s390/airq: use DMA memory for adapter interrupts
...9 100644
--- a/drivers/s390/cio/airq.c
+++ b/drivers/s390/cio/airq.c
@@ -19,6 +19,7 @@
#include <asm/airq.h>
#include <asm/isc.h>
+#include <asm/cio.h>
#include "cio.h"
#include "cio_debug.h"
@@ -113,6 +114,11 @@ void __init init_airq_interrupts(void)
setup_irq(THIN_INTERRUPT, &airq_interrupt);
}
+static inline unsigned long iv_size(unsigned long bits)
+{
+ return BITS_TO_LONGS(bits) * sizeof(unsigned long);
+}
+
/**
* airq_iv_create - create an interrupt vector
* @bits: number of bits in the interrupt vector
@@ -123,14 +129,15 @@ void __init...