#
2de346a4 |
| 06-Sep-2024 |
Zhang Zekun <zhangzekun11@huawei.com> |
remoteproc: da8xx: Use devm_platform_ioremap_resource_byname()
platform_get_resource_byname() and devm_ioremap_resource() can be replaced by devm_platform_ioremap_resource_byname(), which can simpli
remoteproc: da8xx: Use devm_platform_ioremap_resource_byname()
platform_get_resource_byname() and devm_ioremap_resource() can be replaced by devm_platform_ioremap_resource_byname(), which can simplify the code logic a bit, No functional change here.
Signed-off-by: Zhang Zekun <zhangzekun11@huawei.com> Link: https://lore.kernel.org/r/20240906113405.92782-3-zhangzekun11@huawei.com [Fixed patch title] Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
show more ...
|
#
5d886f97 |
| 04-May-2023 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
remoteproc: da8xx: Convert to platform remove callback returning void
The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do e
remoteproc: da8xx: Convert to platform remove callback returning void
The .remove() callback for a platform driver returns an int which makes many driver authors wrongly assume it's possible to do error handling by returning an error code. However the value returned is (mostly) ignored and this typically results in resource leaks. To improve here there is a quest to make the remove callback return void. In the first step of this quest all drivers are converted to .remove_new() which already returns void.
Trivially convert this driver from always returning zero in the remove callback to the void returning variant.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20230504194453.1150368-2-u.kleine-koenig@pengutronix.de Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
show more ...
|
#
86660713 |
| 28-Mar-2023 |
Yu Zhe <yuzhe@nfschina.com> |
remoteproc: Remove unnecessary (void*) conversions
Pointer variables of void * type do not require type cast.
Signed-off-by: Yu Zhe <yuzhe@nfschina.com> Link: https://lore.kernel.org/r/202303280249
remoteproc: Remove unnecessary (void*) conversions
Pointer variables of void * type do not require type cast.
Signed-off-by: Yu Zhe <yuzhe@nfschina.com> Link: https://lore.kernel.org/r/20230328024907.29791-1-yuzhe@nfschina.com [Fixed merge conflict in xlnx_r5_remoteproc.c] Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
show more ...
|
#
d446609d |
| 30-Jul-2019 |
Stephen Boyd <swboyd@chromium.org> |
remoteproc: Remove dev_err() usage after platform_get_irq()
We don't need dev_err() messages when platform_get_irq() fails now that platform_get_irq() prints an error message itself when something g
remoteproc: Remove dev_err() usage after platform_get_irq()
We don't need dev_err() messages when platform_get_irq() fails now that platform_get_irq() prints an error message itself when something goes wrong. Let's remove these prints with a simple semantic patch.
// <smpl> @@ expression ret; struct platform_device *E; @@
ret = ( platform_get_irq(E, ...) | platform_get_irq_byname(E, ...) );
if ( \( ret < 0 \| ret <= 0 \) ) { ( -if (ret != -EPROBE_DEFER) -{ ... -dev_err(...); -... } | ... -dev_err(...); ) ... } // </smpl>
While we're here, remove braces on if statements that only have one statement (manually).
Cc: Ohad Ben-Cohen <ohad@wizery.com> Cc: Bjorn Andersson <bjorn.andersson@linaro.org> Cc: linux-remoteproc@vger.kernel.org Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Stephen Boyd <swboyd@chromium.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
d2912cb1 |
| 04-Jun-2019 |
Thomas Gleixner <tglx@linutronix.de> |
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
Based on 2 normalized pattern(s):
this program is free software you can redistribute it and or modify it under the terms of th
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
Based on 2 normalized pattern(s):
this program is free software you can redistribute it and or modify it under the terms of the gnu general public license version 2 as published by the free software foundation
this program is free software you can redistribute it and or modify it under the terms of the gnu general public license version 2 as published by the free software foundation #
extracted by the scancode license scanner the SPDX license identifier
GPL-2.0-only
has been chosen to replace the boilerplate/reference in 4122 file(s).
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Enrico Weigelt <info@metux.net> Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Reviewed-by: Allison Randal <allison@lohutok.net> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
show more ...
|
#
1e28dbbe |
| 17-Aug-2018 |
Bjorn Andersson <bjorn.andersson@linaro.org> |
remoteproc/davinci: Use %zx for formating size_t
da8xx_rproc_mem size is of type size_t, so use %zx to format the debug print of it to avoid a compile warning.
Acked-by: Suman Anna <s-anna@ti.com>
remoteproc/davinci: Use %zx for formating size_t
da8xx_rproc_mem size is of type size_t, so use %zx to format the debug print of it to avoid a compile warning.
Acked-by: Suman Anna <s-anna@ti.com> Reviewed-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
b2201ee5 |
| 21-Jun-2018 |
Bartosz Golaszewski <bgolaszewski@baylibre.com> |
remoteproc/davinci: use the reset framework
Switch to using the reset framework instead of handcoded reset routines we used so far.
Reviewed-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Philipp Za
remoteproc/davinci: use the reset framework
Switch to using the reset framework instead of handcoded reset routines we used so far.
Reviewed-by: Sekhar Nori <nsekhar@ti.com> Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
491278b6 |
| 23-Jul-2018 |
Suman Anna <s-anna@ti.com> |
remoteproc/davinci: Mark error recovery as disabled
The Davinci remoteproc driver does not support error recovery at present, so mark the corresponding remoteproc flag appropriately so that the debu
remoteproc/davinci: Mark error recovery as disabled
The Davinci remoteproc driver does not support error recovery at present, so mark the corresponding remoteproc flag appropriately so that the debugfs flag shows the value as 'disabled' by default.
Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
24ff1417 |
| 02-May-2018 |
Bartosz Golaszewski <bgolaszewski@baylibre.com> |
remoteproc/davinci: use octal permissions for module_param()
Checkpatch recommends to use octal perms instead of S_IRUGO.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by:
remoteproc/davinci: use octal permissions for module_param()
Checkpatch recommends to use octal perms instead of S_IRUGO.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Reviewed-by: Sekhar Nori <nsekhar@ti.com> Acked-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
5d26f068 |
| 02-May-2018 |
Bartosz Golaszewski <bgolaszewski@baylibre.com> |
remoteproc/davinci: prepare and unprepare the clock where needed
We're currently switching the platform to using the common clock framework. We need to explicitly prepare and unprepare the rproc clo
remoteproc/davinci: prepare and unprepare the clock where needed
We're currently switching the platform to using the common clock framework. We need to explicitly prepare and unprepare the rproc clock.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: Suman Anna <s-anna@ti.com> Reviewed-by: David Lechner <david@lechnology.com> Reviewed-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
2310eae9 |
| 02-May-2018 |
Bartosz Golaszewski <bgolaszewski@baylibre.com> |
remoteproc/davinci: add the missing retval check for clk_enable()
The davinci platform is being switched to using the common clock framework, where clk_enable() can fail. Add the return value check.
remoteproc/davinci: add the missing retval check for clk_enable()
The davinci platform is being switched to using the common clock framework, where clk_enable() can fail. Add the return value check.
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: Suman Anna <s-anna@ti.com> Reviewed-by: David Lechner <david@lechnology.com> Reviewed-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
61696580 |
| 01-Aug-2017 |
Suman Anna <s-anna@ti.com> |
remoteproc/davinci: Add device tree support for OMAP-L138 DSP
The Davinci remoteproc driver currently supports the DSP remoteproc device created in legacy-style on OMAP-L13x SoCs. The driver has bee
remoteproc/davinci: Add device tree support for OMAP-L138 DSP
The Davinci remoteproc driver currently supports the DSP remoteproc device created in legacy-style on OMAP-L13x SoCs. The driver has been enhanced to support the DSP remoteproc device created through Device Tree now. The current DT support handles the C674x DSP processor subsystem on OMAP-L138 SoCs.
Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
59b2355f |
| 01-Aug-2017 |
Suman Anna <s-anna@ti.com> |
remoteproc/davinci: Add support to parse internal memories
The DSP subsystem on OMAP-L13x SoCs has various internal RAM memories that can accessed from the ARM side. These memories can be configured
remoteproc/davinci: Add support to parse internal memories
The DSP subsystem on OMAP-L13x SoCs has various internal RAM memories that can accessed from the ARM side. These memories can be configured to be used as either RAM or Cache.
The Davinci remoteproc driver has been enhanced to parse and store the kernel mappings for these internal RAM memories. These mappings can then be used to support direct loading of text/data into these memories from the remoteproc driver.
Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
6fb9a8f5 |
| 01-Aug-2017 |
Suman Anna <s-anna@ti.com> |
remoteproc/davinci: Switch to platform_get_resource_byname()
The davinci remoteproc driver currently uses the platform_get_resource() API for retrieving the IOMEM resources. Switch this function to
remoteproc/davinci: Switch to platform_get_resource_byname()
The davinci remoteproc driver currently uses the platform_get_resource() API for retrieving the IOMEM resources. Switch this function to use the platform_get_resource_byname() API instead in preparation for adding the DT support so that the binding can be agnostic of the IOMEM resource order.
Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
a63c70d4 |
| 18-May-2017 |
Suman Anna <s-anna@ti.com> |
remoteproc/davinci: fix unbalanced reset between start and stop ops
The davinci remoteproc driver is currently de-asserting the reset in its rproc .start() ops, but is not asserting the reset in its
remoteproc/davinci: fix unbalanced reset between start and stop ops
The davinci remoteproc driver is currently de-asserting the reset in its rproc .start() ops, but is not asserting the reset in its .stop() ops. This leaves the remote processor to not boot properly when using the sysfs 'state' variable between multiple start and stop operations. On the other hand, a reset is being asserted unconditionally in the driver remove function to alleviate some of these issues.
Move this reset assertion logic into the .stop() ops implementation to fix the sysfs state-machine and the unbalanced reset. The logic from remove is still effective since .stop() ops will be invoked during the remove due to the enabled 'auto-boot' support. The probe already has support for asserting the reset in case the DSP is not in reset for some reason.
Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
470ac62f |
| 18-May-2017 |
Suman Anna <s-anna@ti.com> |
remoteproc/davinci: simplify the reset function
The reset_assert() function is used to make sure the DSP remote processor is in a reset state regardless of its previous state. The driver relies on d
remoteproc/davinci: simplify the reset function
The reset_assert() function is used to make sure the DSP remote processor is in a reset state regardless of its previous state. The driver relies on davinci_clk_reset_{assert,deassert}() functions for reset management which take in a clock parameter. The assert_reset() performs a clk_get()/clk_put() cycle to acquire the clock handle to use with this function. This is totally unnecessary and the code can be simplified to use the clock acquired during probe and directly use the reset functions, so simplify this logic.
Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
c008fad2 |
| 01-Jan-2017 |
Bhumika Goyal <bhumirks@gmail.com> |
drivers: remoteproc: constify rproc_ops structures
Declare rproc_ops structures as const as they are only passed as an argument to the function rproc_alloc. This argument is of type const, so rproc_
drivers: remoteproc: constify rproc_ops structures
Declare rproc_ops structures as const as they are only passed as an argument to the function rproc_alloc. This argument is of type const, so rproc_ops structures having this property can be declared const too. Done using Coccinelle:
@r1 disable optional_qualifier @ identifier i; position p; @@ static struct rproc_ops i@p = {...};
@ok1@ identifier r1.i; position p; @@ rproc_alloc(...,&i@p,...)
@bad@ position p!={r1.p,ok1.p}; identifier r1.i; @@ i@p
@depends on !bad disable optional_qualifier@ identifier r1.i; @@ +const struct rproc_ops i;
File size details:
Size of the file remoteproc/da8xx_remoteproc.o remains the same before and after applying the changes.
text data bss dec hex filename 1312 100 4 1416 588 remoteproc/da8xx_remoteproc.o 1312 100 4 1416 588 remoteproc/da8xx_remoteproc.o
970 240 0 1210 4ba remoteproc/omap_remoteproc.o 1002 192 0 1194 4aa remoteproc/omap_remoteproc.o
1901 240 0 2141 85d remoteproc/st_remoteproc.o 1933 192 0 2125 84d remoteproc/st_remoteproc.o
1288 96 0 1384 568 remoteproc/st_slim_rproc.o 1320 64 0 1384 568 remoteproc/st_slim_rproc.o
2121 240 0 2361 939 remoteproc/wkup_m3_rproc.o 2161 192 0 2353 931 remoteproc/wkup_m3_rproc.o
Signed-off-by: Bhumika Goyal <bhumirks@gmail.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
433c0e04 |
| 03-Oct-2016 |
Bjorn Andersson <bjorn.andersson@linaro.org> |
remoteproc: Split driver and consumer dereferencing
In order to be able to lock a rproc driver implementations only when used by a client, we must differ between the dereference operation of a clien
remoteproc: Split driver and consumer dereferencing
In order to be able to lock a rproc driver implementations only when used by a client, we must differ between the dereference operation of a client and the implementation itself.
This patch brings no functional change.
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
56324d7a |
| 12-Aug-2016 |
Anna, Suman <s-anna@ti.com> |
remoteproc: fix couple of minor typos
Fix couple of minor mis-spelled words in all the remoteproc source files.
Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.ander
remoteproc: fix couple of minor typos
Fix couple of minor mis-spelled words in all the remoteproc source files.
Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
show more ...
|
#
e17aee37 |
| 27-Feb-2015 |
Suman Anna <s-anna@ti.com> |
remoteproc/davinci: fix quoted split string checkpatch warning
Fix the following checkpatch warning, WARNING: quoted string split across lines + "\n\t\tName of DSP firmware file in /l
remoteproc/davinci: fix quoted split string checkpatch warning
Fix the following checkpatch warning, WARNING: quoted string split across lines + "\n\t\tName of DSP firmware file in /lib/firmware" + " (if not specified defaults to 'rproc-dsp-fw')");
Signed-off-by: Suman Anna <s-anna@ti.com> [remove leading whitespace as well] Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
show more ...
|
#
315491e5 |
| 09-Jan-2015 |
Suman Anna <s-anna@ti.com> |
remoteproc: add IOMMU hardware capability flag
The remoteproc framework currently relies on iommu_present() on the bus the device is on, to perform MMU management. However, this logic doesn't scale
remoteproc: add IOMMU hardware capability flag
The remoteproc framework currently relies on iommu_present() on the bus the device is on, to perform MMU management. However, this logic doesn't scale for multi-arch, especially for processors that do not have an IOMMU. Replace this logic instead by using a h/w capability flag for the presence of IOMMU in the rproc structure.
This issue is seen on OMAP platforms when trying to add a remoteproc driver for a small Cortex M3 called the WkupM3 used for suspend / resume management on TI AM335/AM437x SoCs. This processor does not have an MMU. Same is the case with another processor subsystem PRU-ICSS on AM335/AM437x. All these are platform devices, and the current iommu_present check will not scale for the same kernel image to support OMAP4/OMAP5 and AM335/AM437x.
The existing platform implementation drivers - OMAP remoteproc, STE Modem remoteproc and DA8xx remoteproc, are updated as well to properly configure the newly added rproc field.
Cc: Robert Tivy <rtivy@ti.com> Cc: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Suman Anna <s-anna@ti.com> [small change in the commit title and in a single comment] Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
show more ...
|
#
51aa31b4 |
| 20-Oct-2014 |
Wolfram Sang <wsa@the-dreams.de> |
remoteproc: drop owner assignment from platform_drivers
A platform_driver does not need to set an owner, it will be populated by the driver core.
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
|
#
0ddc5ec1 |
| 14-Aug-2013 |
Julia Lawall <Julia.Lawall@lip6.fr> |
remoteproc/davinci: simplify use of devm_ioremap_resource
Remove unneeded error handling on the result of a call to platform_get_resource when the value is passed to devm_ioremap_resource.
Move the
remoteproc/davinci: simplify use of devm_ioremap_resource
Remove unneeded error handling on the result of a call to platform_get_resource when the value is passed to devm_ioremap_resource.
Move the call to platform_get_resource adjacent to the call to devm_ioremap_resource to make the connection between them more clear.
A simplified version of the semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/)
// <smpl> @@ expression pdev,res,n,e,e1; expression ret != 0; identifier l; @@
- res = platform_get_resource(pdev, IORESOURCE_MEM, n); ... when != res - if (res == NULL) { ... \(goto l;\|return ret;\) } ... when != res + res = platform_get_resource(pdev, IORESOURCE_MEM, n); e = devm_ioremap_resource(e1, res); // </smpl>
Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> [simplify patch title] Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
show more ...
|
#
5d658bfd |
| 23-Sep-2013 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
remoteproc/davinci: drop needless devm_clk_put
The comment above disable_irq says that it is needed to ensure that the "devm subsystem might end up releasing things before freeing the irq, thus allo
remoteproc/davinci: drop needless devm_clk_put
The comment above disable_irq says that it is needed to ensure that the "devm subsystem might end up releasing things before freeing the irq, thus allowing an interrupt to sneak in while the device is being removed." disable_irq is enough for this purpose and there is no need to manually free the reference to the clock.
Cc: Robert Tivy <rtivy@ti.com> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> [moved the Cc line into the commit message] Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
show more ...
|
#
60d676c0 |
| 15-Jul-2013 |
Rusty Russell <rusty@rustcorp.com.au> |
remoteproc: don't use PTR_RET().
We've already tested that it's an error.
Cc: Robert Tivy <rtivy@ti.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Acked-by: Ohad Ben-Cohen <ohad@wizery.c
remoteproc: don't use PTR_RET().
We've already tested that it's an error.
Cc: Robert Tivy <rtivy@ti.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Acked-by: Ohad Ben-Cohen <ohad@wizery.com>
show more ...
|