Message ID | 20170720144517.32529-2-lorenzo.pieralisi@arm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
I think we can take this as-is into ACPICA. Bob > -----Original Message----- > From: Lorenzo Pieralisi [mailto:lorenzo.pieralisi@arm.com] > Sent: Thursday, July 20, 2017 7:45 AM > To: linux-acpi@vger.kernel.org > Cc: linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>; Moore, Robert > <robert.moore@intel.com>; Zhang, Rui <rui.zhang@intel.com>; Rafael J. > Wysocki <rjw@rjwysocki.net>; Will Deacon <will.deacon@arm.com>; Robin > Murphy <robin.murphy@arm.com>; Hanjun Guo <hanjun.guo@linaro.org>; Feng > Kan <fkan@apm.com>; Jon Masters <jcm@redhat.com>; Nate Watterson > <nwatters@codeaurora.org> > Subject: [PATCH 1/4] ACPI: Allow _DMA method in walk resources > > The _DMA object contains a resource template, this change adds support > for the walk resources function so that ACPI devices containing a _DMA > object can actually parse it to detect DMA ranges for the respective > bus. > > Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> > Cc: Robert Moore <robert.moore@intel.com> > Cc: Zhang Rui <rui.zhang@intel.com> > Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> > --- > drivers/acpi/acpica/rsxface.c | 7 ++++--- > include/acpi/acnames.h | 1 + > 2 files changed, 5 insertions(+), 3 deletions(-) > > diff --git a/drivers/acpi/acpica/rsxface.c > b/drivers/acpi/acpica/rsxface.c index 59a4f9e..be65e65 100644 > --- a/drivers/acpi/acpica/rsxface.c > +++ b/drivers/acpi/acpica/rsxface.c > @@ -615,7 +615,7 @@ ACPI_EXPORT_SYMBOL(acpi_walk_resource_buffer) > * device we are querying > * name - Method name of the resources we want. > * (METHOD_NAME__CRS, METHOD_NAME__PRS, > or > - * METHOD_NAME__AEI) > + * METHOD_NAME__AEI or METHOD_NAME__DMA) > * user_function - Called for each resource > * context - Passed to user_function > * > @@ -641,11 +641,12 @@ acpi_walk_resources(acpi_handle device_handle, > if (!device_handle || !user_function || !name || > (!ACPI_COMPARE_NAME(name, METHOD_NAME__CRS) && > !ACPI_COMPARE_NAME(name, METHOD_NAME__PRS) && > - !ACPI_COMPARE_NAME(name, METHOD_NAME__AEI))) { > + !ACPI_COMPARE_NAME(name, METHOD_NAME__AEI) && > + !ACPI_COMPARE_NAME(name, METHOD_NAME__DMA))) { > return_ACPI_STATUS(AE_BAD_PARAMETER); > } > > - /* Get the _CRS/_PRS/_AEI resource list */ > + /* Get the _CRS/_PRS/_AEI/_DMA resource list */ > > buffer.length = ACPI_ALLOCATE_LOCAL_BUFFER; > status = acpi_rs_get_method_data(device_handle, name, &buffer); > diff --git a/include/acpi/acnames.h b/include/acpi/acnames.h index > b421584..d8dd3bf 100644 > --- a/include/acpi/acnames.h > +++ b/include/acpi/acnames.h > @@ -54,6 +54,7 @@ > #define METHOD_NAME__CLS "_CLS" > #define METHOD_NAME__CRS "_CRS" > #define METHOD_NAME__DDN "_DDN" > +#define METHOD_NAME__DMA "_DMA" > #define METHOD_NAME__HID "_HID" > #define METHOD_NAME__INI "_INI" > #define METHOD_NAME__PLD "_PLD" > -- > 2.10.0
Could you post this as a pull request on our github? https://github.com/acpica/acpica > -----Original Message----- > From: Moore, Robert > Sent: Thursday, July 20, 2017 8:49 AM > To: 'Lorenzo Pieralisi' <lorenzo.pieralisi@arm.com>; linux- > acpi@vger.kernel.org > Cc: linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > Zhang, Rui <rui.zhang@intel.com>; Rafael J. Wysocki <rjw@rjwysocki.net>; > Will Deacon <will.deacon@arm.com>; Robin Murphy <robin.murphy@arm.com>; > Hanjun Guo <hanjun.guo@linaro.org>; Feng Kan <fkan@apm.com>; Jon Masters > <jcm@redhat.com>; Nate Watterson <nwatters@codeaurora.org> > Subject: RE: [PATCH 1/4] ACPI: Allow _DMA method in walk resources > > I think we can take this as-is into ACPICA. > Bob > > > > -----Original Message----- > > From: Lorenzo Pieralisi [mailto:lorenzo.pieralisi@arm.com] > > Sent: Thursday, July 20, 2017 7:45 AM > > To: linux-acpi@vger.kernel.org > > Cc: linux-arm-kernel@lists.infradead.org; > > linux-kernel@vger.kernel.org; Lorenzo Pieralisi > > <lorenzo.pieralisi@arm.com>; Moore, Robert <robert.moore@intel.com>; > Zhang, Rui <rui.zhang@intel.com>; Rafael J. > > Wysocki <rjw@rjwysocki.net>; Will Deacon <will.deacon@arm.com>; Robin > > Murphy <robin.murphy@arm.com>; Hanjun Guo <hanjun.guo@linaro.org>; > > Feng Kan <fkan@apm.com>; Jon Masters <jcm@redhat.com>; Nate Watterson > > <nwatters@codeaurora.org> > > Subject: [PATCH 1/4] ACPI: Allow _DMA method in walk resources > > > > The _DMA object contains a resource template, this change adds support > > for the walk resources function so that ACPI devices containing a _DMA > > object can actually parse it to detect DMA ranges for the respective > > bus. > > > > Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> > > Cc: Robert Moore <robert.moore@intel.com> > > Cc: Zhang Rui <rui.zhang@intel.com> > > Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> > > --- > > drivers/acpi/acpica/rsxface.c | 7 ++++--- > > include/acpi/acnames.h | 1 + > > 2 files changed, 5 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/acpi/acpica/rsxface.c > > b/drivers/acpi/acpica/rsxface.c index 59a4f9e..be65e65 100644 > > --- a/drivers/acpi/acpica/rsxface.c > > +++ b/drivers/acpi/acpica/rsxface.c > > @@ -615,7 +615,7 @@ ACPI_EXPORT_SYMBOL(acpi_walk_resource_buffer) > > * device we are querying > > * name - Method name of the resources we > want. > > * (METHOD_NAME__CRS, > METHOD_NAME__PRS, > > or > > - * METHOD_NAME__AEI) > > + * METHOD_NAME__AEI or > METHOD_NAME__DMA) > > * user_function - Called for each resource > > * context - Passed to user_function > > * > > @@ -641,11 +641,12 @@ acpi_walk_resources(acpi_handle device_handle, > > if (!device_handle || !user_function || !name || > > (!ACPI_COMPARE_NAME(name, METHOD_NAME__CRS) && > > !ACPI_COMPARE_NAME(name, METHOD_NAME__PRS) && > > - !ACPI_COMPARE_NAME(name, METHOD_NAME__AEI))) { > > + !ACPI_COMPARE_NAME(name, METHOD_NAME__AEI) && > > + !ACPI_COMPARE_NAME(name, METHOD_NAME__DMA))) { > > return_ACPI_STATUS(AE_BAD_PARAMETER); > > } > > > > - /* Get the _CRS/_PRS/_AEI resource list */ > > + /* Get the _CRS/_PRS/_AEI/_DMA resource list */ > > > > buffer.length = ACPI_ALLOCATE_LOCAL_BUFFER; > > status = acpi_rs_get_method_data(device_handle, name, &buffer); > diff > > --git a/include/acpi/acnames.h b/include/acpi/acnames.h index > > b421584..d8dd3bf 100644 > > --- a/include/acpi/acnames.h > > +++ b/include/acpi/acnames.h > > @@ -54,6 +54,7 @@ > > #define METHOD_NAME__CLS "_CLS" > > #define METHOD_NAME__CRS "_CRS" > > #define METHOD_NAME__DDN "_DDN" > > +#define METHOD_NAME__DMA "_DMA" > > #define METHOD_NAME__HID "_HID" > > #define METHOD_NAME__INI "_INI" > > #define METHOD_NAME__PLD "_PLD" > > -- > > 2.10.0
On Thu, Jul 20, 2017 at 03:50:16PM +0000, Moore, Robert wrote: > Could you post this as a pull request on our github? > > https://github.com/acpica/acpica Sure, will do, thanks ! Lorenzo > > -----Original Message----- > > From: Moore, Robert > > Sent: Thursday, July 20, 2017 8:49 AM > > To: 'Lorenzo Pieralisi' <lorenzo.pieralisi@arm.com>; linux- > > acpi@vger.kernel.org > > Cc: linux-arm-kernel@lists.infradead.org; linux-kernel@vger.kernel.org; > > Zhang, Rui <rui.zhang@intel.com>; Rafael J. Wysocki <rjw@rjwysocki.net>; > > Will Deacon <will.deacon@arm.com>; Robin Murphy <robin.murphy@arm.com>; > > Hanjun Guo <hanjun.guo@linaro.org>; Feng Kan <fkan@apm.com>; Jon Masters > > <jcm@redhat.com>; Nate Watterson <nwatters@codeaurora.org> > > Subject: RE: [PATCH 1/4] ACPI: Allow _DMA method in walk resources > > > > I think we can take this as-is into ACPICA. > > Bob > > > > > > > -----Original Message----- > > > From: Lorenzo Pieralisi [mailto:lorenzo.pieralisi@arm.com] > > > Sent: Thursday, July 20, 2017 7:45 AM > > > To: linux-acpi@vger.kernel.org > > > Cc: linux-arm-kernel@lists.infradead.org; > > > linux-kernel@vger.kernel.org; Lorenzo Pieralisi > > > <lorenzo.pieralisi@arm.com>; Moore, Robert <robert.moore@intel.com>; > > Zhang, Rui <rui.zhang@intel.com>; Rafael J. > > > Wysocki <rjw@rjwysocki.net>; Will Deacon <will.deacon@arm.com>; Robin > > > Murphy <robin.murphy@arm.com>; Hanjun Guo <hanjun.guo@linaro.org>; > > > Feng Kan <fkan@apm.com>; Jon Masters <jcm@redhat.com>; Nate Watterson > > > <nwatters@codeaurora.org> > > > Subject: [PATCH 1/4] ACPI: Allow _DMA method in walk resources > > > > > > The _DMA object contains a resource template, this change adds support > > > for the walk resources function so that ACPI devices containing a _DMA > > > object can actually parse it to detect DMA ranges for the respective > > > bus. > > > > > > Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> > > > Cc: Robert Moore <robert.moore@intel.com> > > > Cc: Zhang Rui <rui.zhang@intel.com> > > > Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> > > > --- > > > drivers/acpi/acpica/rsxface.c | 7 ++++--- > > > include/acpi/acnames.h | 1 + > > > 2 files changed, 5 insertions(+), 3 deletions(-) > > > > > > diff --git a/drivers/acpi/acpica/rsxface.c > > > b/drivers/acpi/acpica/rsxface.c index 59a4f9e..be65e65 100644 > > > --- a/drivers/acpi/acpica/rsxface.c > > > +++ b/drivers/acpi/acpica/rsxface.c > > > @@ -615,7 +615,7 @@ ACPI_EXPORT_SYMBOL(acpi_walk_resource_buffer) > > > * device we are querying > > > * name - Method name of the resources we > > want. > > > * (METHOD_NAME__CRS, > > METHOD_NAME__PRS, > > > or > > > - * METHOD_NAME__AEI) > > > + * METHOD_NAME__AEI or > > METHOD_NAME__DMA) > > > * user_function - Called for each resource > > > * context - Passed to user_function > > > * > > > @@ -641,11 +641,12 @@ acpi_walk_resources(acpi_handle device_handle, > > > if (!device_handle || !user_function || !name || > > > (!ACPI_COMPARE_NAME(name, METHOD_NAME__CRS) && > > > !ACPI_COMPARE_NAME(name, METHOD_NAME__PRS) && > > > - !ACPI_COMPARE_NAME(name, METHOD_NAME__AEI))) { > > > + !ACPI_COMPARE_NAME(name, METHOD_NAME__AEI) && > > > + !ACPI_COMPARE_NAME(name, METHOD_NAME__DMA))) { > > > return_ACPI_STATUS(AE_BAD_PARAMETER); > > > } > > > > > > - /* Get the _CRS/_PRS/_AEI resource list */ > > > + /* Get the _CRS/_PRS/_AEI/_DMA resource list */ > > > > > > buffer.length = ACPI_ALLOCATE_LOCAL_BUFFER; > > > status = acpi_rs_get_method_data(device_handle, name, &buffer); > > diff > > > --git a/include/acpi/acnames.h b/include/acpi/acnames.h index > > > b421584..d8dd3bf 100644 > > > --- a/include/acpi/acnames.h > > > +++ b/include/acpi/acnames.h > > > @@ -54,6 +54,7 @@ > > > #define METHOD_NAME__CLS "_CLS" > > > #define METHOD_NAME__CRS "_CRS" > > > #define METHOD_NAME__DDN "_DDN" > > > +#define METHOD_NAME__DMA "_DMA" > > > #define METHOD_NAME__HID "_HID" > > > #define METHOD_NAME__INI "_INI" > > > #define METHOD_NAME__PLD "_PLD" > > > -- > > > 2.10.0 >
diff --git a/drivers/acpi/acpica/rsxface.c b/drivers/acpi/acpica/rsxface.c index 59a4f9e..be65e65 100644 --- a/drivers/acpi/acpica/rsxface.c +++ b/drivers/acpi/acpica/rsxface.c @@ -615,7 +615,7 @@ ACPI_EXPORT_SYMBOL(acpi_walk_resource_buffer) * device we are querying * name - Method name of the resources we want. * (METHOD_NAME__CRS, METHOD_NAME__PRS, or - * METHOD_NAME__AEI) + * METHOD_NAME__AEI or METHOD_NAME__DMA) * user_function - Called for each resource * context - Passed to user_function * @@ -641,11 +641,12 @@ acpi_walk_resources(acpi_handle device_handle, if (!device_handle || !user_function || !name || (!ACPI_COMPARE_NAME(name, METHOD_NAME__CRS) && !ACPI_COMPARE_NAME(name, METHOD_NAME__PRS) && - !ACPI_COMPARE_NAME(name, METHOD_NAME__AEI))) { + !ACPI_COMPARE_NAME(name, METHOD_NAME__AEI) && + !ACPI_COMPARE_NAME(name, METHOD_NAME__DMA))) { return_ACPI_STATUS(AE_BAD_PARAMETER); } - /* Get the _CRS/_PRS/_AEI resource list */ + /* Get the _CRS/_PRS/_AEI/_DMA resource list */ buffer.length = ACPI_ALLOCATE_LOCAL_BUFFER; status = acpi_rs_get_method_data(device_handle, name, &buffer); diff --git a/include/acpi/acnames.h b/include/acpi/acnames.h index b421584..d8dd3bf 100644 --- a/include/acpi/acnames.h +++ b/include/acpi/acnames.h @@ -54,6 +54,7 @@ #define METHOD_NAME__CLS "_CLS" #define METHOD_NAME__CRS "_CRS" #define METHOD_NAME__DDN "_DDN" +#define METHOD_NAME__DMA "_DMA" #define METHOD_NAME__HID "_HID" #define METHOD_NAME__INI "_INI" #define METHOD_NAME__PLD "_PLD"
The _DMA object contains a resource template, this change adds support for the walk resources function so that ACPI devices containing a _DMA object can actually parse it to detect DMA ranges for the respective bus. Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Cc: Robert Moore <robert.moore@intel.com> Cc: Zhang Rui <rui.zhang@intel.com> Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net> --- drivers/acpi/acpica/rsxface.c | 7 ++++--- include/acpi/acnames.h | 1 + 2 files changed, 5 insertions(+), 3 deletions(-)