All of lore.kernel.org
 help / color / mirror / Atom feed
From: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
To: Hanjun Guo <hanjun.guo@linaro.org>,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
	Marc Zyngier <marc.zyngier@arm.com>
Cc: Jason Cooper <jason@lakedaemon.net>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Tomasz Nowicki <tomasz.nowicki@linaro.org>,
	"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Jiang Liu <jiang.liu@linux.intel.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 2/5] genirq: irqdomain: Remove irqdomain dependency on struct device_node
Date: Thu, 23 Jul 2015 15:59:37 +0700	[thread overview]
Message-ID: <55B0ACF9.4080403@amd.com> (raw)
In-Reply-To: <55AF50B3.5090804@linaro.org>



On 7/22/15 15:13, Hanjun Guo wrote:
> On 07/22/2015 01:56 AM, Lorenzo Pieralisi wrote:
>> On Tue, Jul 21, 2015 at 11:07:57AM +0100, Marc Zyngier wrote:
>>> struct device_node is very much DT specific, and the original authors
>>> of the irqdomain subsystem recognized that tie, and went as far as
>>> mentionning that this could be replaced by some "void *token",
>>> should another firmware infrastructure be using it.
>>
>> Yes, that's similar to the problem Rafael solved with fwnode_handle,
>> I do not know if we can extend the fwnode_handle to manage these
>> generic tokens too, but the approach you have taken seem the right
>> one to me (and you are doing this for components that are not really
>> attached to struct device so I am not sure the fwnode_handle approach
>> can be shoehorned to solve it).
>
> If I understand correctly, fwnode_handle is not better , since
> we need to update every caller of irqdomain functions as it's a new
> type of pointer, that's will be the big change, void * is just fine.

Also, the fwnode_handle is mainly used to represent the DSDT device 
entry. In case of ACPI, GICv2m and ITS domain does not have a 
corresponded DSDT entry, but it uses other table. I am agree with just 
keeping this as void *.

Thanks,

Suravee

WARNING: multiple messages have this Message-ID (diff)
From: Suravee.Suthikulpanit@amd.com (Suravee Suthikulpanit)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/5] genirq: irqdomain: Remove irqdomain dependency on struct device_node
Date: Thu, 23 Jul 2015 15:59:37 +0700	[thread overview]
Message-ID: <55B0ACF9.4080403@amd.com> (raw)
In-Reply-To: <55AF50B3.5090804@linaro.org>



On 7/22/15 15:13, Hanjun Guo wrote:
> On 07/22/2015 01:56 AM, Lorenzo Pieralisi wrote:
>> On Tue, Jul 21, 2015 at 11:07:57AM +0100, Marc Zyngier wrote:
>>> struct device_node is very much DT specific, and the original authors
>>> of the irqdomain subsystem recognized that tie, and went as far as
>>> mentionning that this could be replaced by some "void *token",
>>> should another firmware infrastructure be using it.
>>
>> Yes, that's similar to the problem Rafael solved with fwnode_handle,
>> I do not know if we can extend the fwnode_handle to manage these
>> generic tokens too, but the approach you have taken seem the right
>> one to me (and you are doing this for components that are not really
>> attached to struct device so I am not sure the fwnode_handle approach
>> can be shoehorned to solve it).
>
> If I understand correctly, fwnode_handle is not better , since
> we need to update every caller of irqdomain functions as it's a new
> type of pointer, that's will be the big change, void * is just fine.

Also, the fwnode_handle is mainly used to represent the DSDT device 
entry. In case of ACPI, GICv2m and ITS domain does not have a 
corresponded DSDT entry, but it uses other table. I am agree with just 
keeping this as void *.

Thanks,

Suravee

WARNING: multiple messages have this Message-ID (diff)
From: Suravee Suthikulpanit <Suravee.Suthikulpanit@amd.com>
To: Hanjun Guo <hanjun.guo@linaro.org>,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
	Marc Zyngier <marc.zyngier@arm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>,
	Jiang Liu <jiang.liu@linux.intel.com>,
	Jason Cooper <jason@lakedaemon.net>,
	"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Tomasz Nowicki <tomasz.nowicki@linaro.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>
Subject: Re: [PATCH 2/5] genirq: irqdomain: Remove irqdomain dependency on struct device_node
Date: Thu, 23 Jul 2015 15:59:37 +0700	[thread overview]
Message-ID: <55B0ACF9.4080403@amd.com> (raw)
In-Reply-To: <55AF50B3.5090804@linaro.org>



On 7/22/15 15:13, Hanjun Guo wrote:
> On 07/22/2015 01:56 AM, Lorenzo Pieralisi wrote:
>> On Tue, Jul 21, 2015 at 11:07:57AM +0100, Marc Zyngier wrote:
>>> struct device_node is very much DT specific, and the original authors
>>> of the irqdomain subsystem recognized that tie, and went as far as
>>> mentionning that this could be replaced by some "void *token",
>>> should another firmware infrastructure be using it.
>>
>> Yes, that's similar to the problem Rafael solved with fwnode_handle,
>> I do not know if we can extend the fwnode_handle to manage these
>> generic tokens too, but the approach you have taken seem the right
>> one to me (and you are doing this for components that are not really
>> attached to struct device so I am not sure the fwnode_handle approach
>> can be shoehorned to solve it).
>
> If I understand correctly, fwnode_handle is not better , since
> we need to update every caller of irqdomain functions as it's a new
> type of pointer, that's will be the big change, void * is just fine.

Also, the fwnode_handle is mainly used to represent the DSDT device 
entry. In case of ACPI, GICv2m and ITS domain does not have a 
corresponded DSDT entry, but it uses other table. I am agree with just 
keeping this as void *.

Thanks,

Suravee

  reply	other threads:[~2015-07-23  8:59 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-21 10:07 [PATCH 0/5] Making the generic ACPI GSI layer irqdomain aware Marc Zyngier
2015-07-21 10:07 ` Marc Zyngier
2015-07-21 10:07 ` Marc Zyngier
2015-07-21 10:07 ` [PATCH 1/5] genirq: irqdomain: Use an accessor for the of_node field Marc Zyngier
2015-07-21 10:07   ` Marc Zyngier
2015-07-21 10:07   ` Marc Zyngier
2015-07-22  7:35   ` Hanjun Guo
2015-07-22  7:35     ` Hanjun Guo
2015-07-22  7:52     ` Marc Zyngier
2015-07-22  7:52       ` Marc Zyngier
2015-07-22  7:58       ` Thomas Gleixner
2015-07-22  7:58         ` Thomas Gleixner
2015-07-22 12:43         ` Marc Zyngier
2015-07-22 12:43           ` Marc Zyngier
2015-07-22  7:57     ` Thomas Gleixner
2015-07-22  7:57       ` Thomas Gleixner
2015-07-21 10:07 ` [PATCH 2/5] genirq: irqdomain: Remove irqdomain dependency on struct device_node Marc Zyngier
2015-07-21 10:07   ` Marc Zyngier
2015-07-21 10:07   ` Marc Zyngier
2015-07-21 17:56   ` Lorenzo Pieralisi
2015-07-21 17:56     ` Lorenzo Pieralisi
2015-07-22  8:13     ` Hanjun Guo
2015-07-22  8:13       ` Hanjun Guo
2015-07-23  8:59       ` Suravee Suthikulpanit [this message]
2015-07-23  8:59         ` Suravee Suthikulpanit
2015-07-23  8:59         ` Suravee Suthikulpanit
2015-07-21 10:07 ` [PATCH 3/5] genirq: irqdomain: Add irq_create_acpi_mappings Marc Zyngier
2015-07-21 10:07   ` Marc Zyngier
2015-07-21 10:07   ` Marc Zyngier
2015-07-21 10:07 ` [PATCH 4/5] acpi: gsi: Use acpi_gsi_descriptor to allocate interrupts Marc Zyngier
2015-07-21 10:07   ` Marc Zyngier
2015-07-21 10:07   ` Marc Zyngier
2015-07-21 18:16   ` Lorenzo Pieralisi
2015-07-21 18:16     ` Lorenzo Pieralisi
2015-07-22  7:46     ` Marc Zyngier
2015-07-22  7:46       ` Marc Zyngier
2015-07-21 10:08 ` [PATCH 5/5] irqchip: GIC: Switch ACPI support to stacked domains Marc Zyngier
2015-07-21 10:08   ` Marc Zyngier
2015-07-21 10:08   ` Marc Zyngier
2015-07-21 12:34   ` Graeme Gregory
2015-07-21 12:34     ` Graeme Gregory
2015-07-21 13:03     ` Marc Zyngier
2015-07-21 13:03       ` Marc Zyngier
2015-07-21 18:05   ` Lorenzo Pieralisi
2015-07-21 18:05     ` Lorenzo Pieralisi
2015-07-21 18:12     ` Marc Zyngier
2015-07-21 18:12       ` Marc Zyngier
2015-07-22  8:35       ` Hanjun Guo
2015-07-22  8:35         ` Hanjun Guo
2015-07-22  8:35         ` Hanjun Guo
2015-07-22  8:45         ` Hanjun Guo
2015-07-22  8:45           ` Hanjun Guo
2015-07-22  8:45           ` Hanjun Guo
2015-07-22  8:53         ` Marc Zyngier
2015-07-22  8:53           ` Marc Zyngier
2015-07-22  8:53           ` Marc Zyngier
2015-07-22  9:33           ` Hanjun Guo
2015-07-22  9:33             ` Hanjun Guo
2015-07-22  9:33             ` Hanjun Guo
2015-07-21 12:35 ` [PATCH 0/5] Making the generic ACPI GSI layer irqdomain aware Graeme Gregory
2015-07-21 12:35   ` Graeme Gregory
2015-07-22  6:45 ` Hanjun Guo
2015-07-22  6:45   ` Hanjun Guo

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=55B0ACF9.4080403@amd.com \
    --to=suravee.suthikulpanit@amd.com \
    --cc=hanjun.guo@linaro.org \
    --cc=jason@lakedaemon.net \
    --cc=jiang.liu@linux.intel.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=marc.zyngier@arm.com \
    --cc=rjw@rjwysocki.net \
    --cc=tglx@linutronix.de \
    --cc=tomasz.nowicki@linaro.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.