<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/remoteproc, branch v4.19.112</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v4.19.112</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v4.19.112'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2020-02-24T07:34:50+00:00</updated>
<entry>
<title>remoteproc: Initialize rproc_class before use</title>
<updated>2020-02-24T07:34:50+00:00</updated>
<author>
<name>Brandon Maier</name>
<email>brandon.maier@rockwellcollins.com</email>
</author>
<published>2019-05-30T22:52:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cf03695ce94291731385101ea2fb1ee21eab83e5'/>
<id>urn:sha1:cf03695ce94291731385101ea2fb1ee21eab83e5</id>
<content type='text'>
[ Upstream commit a8f40111d184098cd2b3dc0c7170c42250a5fa09 ]

The remoteproc_core and remoteproc drivers all initialize with module_init().
However remoteproc drivers need the rproc_class during their probe. If one of
the remoteproc drivers runs init and gets through probe before
remoteproc_init() runs, a NULL pointer access of rproc_class's `glue_dirs`
spinlock occurs.

&gt; Unable to handle kernel NULL pointer dereference at virtual address 000000dc
&gt; pgd = c0004000
&gt; [000000dc] *pgd=00000000
&gt; Internal error: Oops: 5 [#1] PREEMPT ARM
&gt; Modules linked in:
&gt; CPU: 0 PID: 1 Comm: swapper Tainted: G        W       4.14.106-rt56 #1
&gt; Hardware name: Generic OMAP36xx (Flattened Device Tree)
&gt; task: c6050000 task.stack: c604a000
&gt; PC is at rt_spin_lock+0x40/0x6c
&gt; LR is at rt_spin_lock+0x28/0x6c
&gt; pc : [&lt;c0523c90&gt;]    lr : [&lt;c0523c78&gt;]    psr: 60000013
&gt; sp : c604bdc0  ip : 00000000  fp : 00000000
&gt; r10: 00000000  r9 : c61c7c10  r8 : c6269c20
&gt; r7 : c0905888  r6 : c6269c20  r5 : 00000000  r4 : 000000d4
&gt; r3 : 000000dc  r2 : c6050000  r1 : 00000002  r0 : 000000d4
&gt; Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
...
&gt; [&lt;c0523c90&gt;] (rt_spin_lock) from [&lt;c03b65a4&gt;] (get_device_parent+0x54/0x17c)
&gt; [&lt;c03b65a4&gt;] (get_device_parent) from [&lt;c03b6bec&gt;] (device_add+0xe0/0x5b4)
&gt; [&lt;c03b6bec&gt;] (device_add) from [&lt;c042adf4&gt;] (rproc_add+0x18/0xd8)
&gt; [&lt;c042adf4&gt;] (rproc_add) from [&lt;c01110e4&gt;] (my_rproc_probe+0x158/0x204)
&gt; [&lt;c01110e4&gt;] (my_rproc_probe) from [&lt;c03bb6b8&gt;] (platform_drv_probe+0x34/0x70)
&gt; [&lt;c03bb6b8&gt;] (platform_drv_probe) from [&lt;c03b9dd4&gt;] (driver_probe_device+0x2c8/0x420)
&gt; [&lt;c03b9dd4&gt;] (driver_probe_device) from [&lt;c03ba02c&gt;] (__driver_attach+0x100/0x11c)
&gt; [&lt;c03ba02c&gt;] (__driver_attach) from [&lt;c03b7d08&gt;] (bus_for_each_dev+0x7c/0xc0)
&gt; [&lt;c03b7d08&gt;] (bus_for_each_dev) from [&lt;c03b910c&gt;] (bus_add_driver+0x1cc/0x264)
&gt; [&lt;c03b910c&gt;] (bus_add_driver) from [&lt;c03ba714&gt;] (driver_register+0x78/0xf8)
&gt; [&lt;c03ba714&gt;] (driver_register) from [&lt;c010181c&gt;] (do_one_initcall+0x100/0x190)
&gt; [&lt;c010181c&gt;] (do_one_initcall) from [&lt;c0800de8&gt;] (kernel_init_freeable+0x130/0x1d0)
&gt; [&lt;c0800de8&gt;] (kernel_init_freeable) from [&lt;c051eee8&gt;] (kernel_init+0x8/0x114)
&gt; [&lt;c051eee8&gt;] (kernel_init) from [&lt;c01175b0&gt;] (ret_from_fork+0x14/0x24)
&gt; Code: e2843008 e3c2203f f5d3f000 e5922010 (e193cf9f)
&gt; ---[ end trace 0000000000000002 ]---

Signed-off-by: Brandon Maier &lt;brandon.maier@rockwellcollins.com&gt;
Link: https://lore.kernel.org/r/20190530225223.136420-1-brandon.maier@rockwellcollins.com
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>remoteproc: qcom: q6v5-mss: Add missing regulator for MSM8996</title>
<updated>2020-01-27T13:50:10+00:00</updated>
<author>
<name>Sibi Sankar</name>
<email>sibis@codeaurora.org</email>
</author>
<published>2018-12-28T18:53:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=81607bbf4fcc95dd520246d7bf3eae6169ba320d'/>
<id>urn:sha1:81607bbf4fcc95dd520246d7bf3eae6169ba320d</id>
<content type='text'>
[ Upstream commit 47b874748d500020026ee43b386b5598e20f3a68 ]

Add proxy vote for pll supply on MSM8996 SoC.

Fixes: 9f058fa2efb1 ("remoteproc: qcom: Add support for mss remoteproc on msm8996")
Signed-off-by: Sibi Sankar &lt;sibis@codeaurora.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>remoteproc: qcom: q6v5-mss: Add missing clocks for MSM8996</title>
<updated>2020-01-27T13:50:10+00:00</updated>
<author>
<name>Sibi Sankar</name>
<email>sibis@codeaurora.org</email>
</author>
<published>2018-12-28T18:53:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=88c779bd2302762d5a3cf399aeda41c05ba5822a'/>
<id>urn:sha1:88c779bd2302762d5a3cf399aeda41c05ba5822a</id>
<content type='text'>
[ Upstream commit 80ec419c3404106c563aaf56aa6b516a59c4cdfb ]

Proxy vote for QDSS clock and remove vote on handover interrupt
to provide MSS PBL with access to STM hardware registers during
boot. Add "snoc_axi" and "mnoc_axi" to the active clock list.
Rename "gpll0_mss_clk" to "gpll0_mss" for consistency across SoCs.

Fixes: 9f058fa2efb1 ("remoteproc: qcom: Add support for mss remoteproc on msm8996")
Signed-off-by: Sibi Sankar &lt;sibis@codeaurora.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>remoteproc: qcom: q6v5: Fix a race condition on fatal crash</title>
<updated>2019-11-24T07:20:29+00:00</updated>
<author>
<name>Sibi Sankar</name>
<email>sibis@codeaurora.org</email>
</author>
<published>2018-10-01T14:25:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=59e5269c692ee771b6f7b545b751288b9745e36d'/>
<id>urn:sha1:59e5269c692ee771b6f7b545b751288b9745e36d</id>
<content type='text'>
[ Upstream commit d3ae96c0e6b042a883927493351b2af6ee05e92c ]

Currently with GLINK_SSR enabled each fatal crash results in servicing
a crash from wdog as well. This is due to a race that occurs in setting
the running flag in the shutdown path. Fix this by moving the running
flag to the end of fatal interrupt handler.

Crash Logs:
qcom-q6v5-pil 4080000.remoteproc: fatal error without message
remoteproc remoteproc0: crash detected in 4080000.remoteproc: type fatal
	error
remoteproc remoteproc0: handling crash #1 in 4080000.remoteproc
remoteproc remoteproc0: recovering 4080000.remoteproc
qcom-q6v5-pil 4080000.remoteproc: watchdog without message
remoteproc remoteproc0: crash detected in 4080000.remoteproc: type watchdog
remoteproc:glink-edge: intent request timed out
qcom_glink_ssr remoteproc:glink-edge.glink_ssr.-1.-1: failed to send
	cleanup message
qcom_glink_ssr remoteproc:glink-edge.glink_ssr.-1.-1: timeout waiting
	for cleanup done message
qcom-q6v5-pil 4080000.remoteproc: timed out on wait
qcom-q6v5-pil 4080000.remoteproc: port failed halt
remoteproc remoteproc0: stopped remote processor 4080000.remoteproc
qcom-q6v5-pil 4080000.remoteproc: MBA booted, loading mpss
remoteproc remoteproc0: remote processor 4080000.remoteproc is now up
remoteproc remoteproc0: handling crash #2 in 4080000.remoteproc
remoteproc remoteproc0: recovering 4080000.remoteproc
qcom-q6v5-pil 4080000.remoteproc: port failed halt
remoteproc remoteproc0: stopped remote processor 4080000.remoteproc
qcom-q6v5-pil 4080000.remoteproc: MBA booted, loading mpss
remoteproc remoteproc0: remote processor 4080000.remoteproc is now up

Suggested-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sibi Sankar &lt;sibis@codeaurora.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>remoteproc: Check for NULL firmwares in sysfs interface</title>
<updated>2019-11-24T07:20:29+00:00</updated>
<author>
<name>Suman Anna</name>
<email>s-anna@ti.com</email>
</author>
<published>2018-09-15T00:37:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=4b8c7bce49caff113c2aa03989ad8b8642cd9a6c'/>
<id>urn:sha1:4b8c7bce49caff113c2aa03989ad8b8642cd9a6c</id>
<content type='text'>
[ Upstream commit faeadbb64094757150a8c2a3175ca418dbdd472c ]

The remoteproc framework provides a sysfs file 'firmware'
for modifying the firmware image name from userspace. Add
an additional check to ensure NULL firmwares are errored
out right away, rather than getting a delayed error while
requesting a firmware during the start of a remoteproc
later on.

Tested-by: Arnaud Pouliquen &lt;arnaud.pouliquen@st.com&gt;
Signed-off-by: Suman Anna &lt;s-anna@ti.com&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>remoteproc/davinci: Use %zx for formating size_t</title>
<updated>2019-11-20T17:45:25+00:00</updated>
<author>
<name>Bjorn Andersson</name>
<email>bjorn.andersson@linaro.org</email>
</author>
<published>2018-08-17T00:49:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=7575a34ed101b0f7d4dd50d5e71a6c2d625ea055'/>
<id>urn:sha1:7575a34ed101b0f7d4dd50d5e71a6c2d625ea055</id>
<content type='text'>
[ Upstream commit 1e28dbbeced6152b9ea7c417ff8cef3f7dcf0f19 ]

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 &lt;s-anna@ti.com&gt;
Reviewed-by: Bartosz Golaszewski &lt;bgolaszewski@baylibre.com&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>remoteproc: qcom: q6v5-mss: add SCM probe dependency</title>
<updated>2019-09-16T06:21:48+00:00</updated>
<author>
<name>Brian Norris</name>
<email>briannorris@chromium.org</email>
</author>
<published>2018-10-09T02:08:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2c2cf2245ff60a1dedeeaf8c62df4aa1919ea4b7'/>
<id>urn:sha1:2c2cf2245ff60a1dedeeaf8c62df4aa1919ea4b7</id>
<content type='text'>
[ Upstream commit bbcda30271752bb7490f2e2aef5411dbcae69116 ]

The memory ownership transfer request is performed using SCM, ensure
that SCM is available before we probe the driver if memory protection is
needed by the subsystem.

Fixes: 6c5a9dc2481b ("remoteproc: qcom: Make secure world call for mem ownership switch")
Cc: stable@vger.kernel.org
Signed-off-by: Brian Norris &lt;briannorris@chromium.org&gt;
[bjorn: Added condition for need_mem_protection, updated commit message]
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>remoteproc: qcom: q6v5: shore up resource probe handling</title>
<updated>2019-09-16T06:21:45+00:00</updated>
<author>
<name>Brian Norris</name>
<email>briannorris@chromium.org</email>
</author>
<published>2018-10-09T22:25:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=84ba9ae18fbbc1c2ef3c7fc5a726568b2fc4382d'/>
<id>urn:sha1:84ba9ae18fbbc1c2ef3c7fc5a726568b2fc4382d</id>
<content type='text'>
[ Upstream commit 1e2517d126171a41f801738ffd19687836cd178a ]

Commit d5269c4553a6 ("remoteproc: qcom: q6v5: Propagate EPROBE_DEFER")
fixed up our probe code to handle -EPROBE_DEFER, but it ignored one of
our interrupts, and it also didn't really handle all the other error
codes you might get (e.g., with a bad DT definition). Handle those all
explicitly.

Fixes: d5269c4553a6 ("remoteproc: qcom: q6v5: Propagate EPROBE_DEFER")
Reviewed-by: Douglas Anderson &lt;dianders@chromium.org&gt;
Signed-off-by: Brian Norris &lt;briannorris@chromium.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>remoteproc: qcom: q6v5: Propagate EPROBE_DEFER</title>
<updated>2018-11-13T19:08:52+00:00</updated>
<author>
<name>Bjorn Andersson</name>
<email>bjorn.andersson@linaro.org</email>
</author>
<published>2018-09-20T01:51:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a91394b21ddf43922ff974138446ee7920a08127'/>
<id>urn:sha1:a91394b21ddf43922ff974138446ee7920a08127</id>
<content type='text'>
commit d5269c4553a64b6882f2c019ae21b783a0984a83 upstream.

In the case that the interrupts fail to result because of the
interrupt-controller not yet being registered the
platform_get_irq_byname() call will fail with -EPROBE_DEFER, but passing
this into devm_request_threaded_irq() will result in -EINVAL being
returned, the driver is therefor not reprobed later.

Fixes: 3b415c8fb263 ("remoteproc: q6v5: Extract common resource handling")
Cc: stable@vger.kernel.org
Reviewed-by: Sibi Sankar &lt;sibis@codeaurora.org&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>remoteproc/davinci: use the reset framework</title>
<updated>2018-08-17T00:39:55+00:00</updated>
<author>
<name>Bartosz Golaszewski</name>
<email>bgolaszewski@baylibre.com</email>
</author>
<published>2018-06-21T07:37:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=b2201ee554a5811f569f31280b0079e7d6177606'/>
<id>urn:sha1:b2201ee554a5811f569f31280b0079e7d6177606</id>
<content type='text'>
Switch to using the reset framework instead of handcoded reset routines
we used so far.

Reviewed-by: Sekhar Nori &lt;nsekhar@ti.com&gt;
Reviewed-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Bartosz Golaszewski &lt;bgolaszewski@baylibre.com&gt;
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
</content>
</entry>
</feed>
