<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/firmware/tegra, branch linux-5.1.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-5.1.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-5.1.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2019-02-07T17:52:39Z</updated>
<entry>
<title>firmware/tegra: Enable Tegra186 BPMP support on Tegra194</title>
<updated>2019-02-07T17:52:39Z</updated>
<author>
<name>Thierry Reding</name>
<email>treding@nvidia.com</email>
</author>
<published>2019-02-07T11:50:06Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=fe45ab552955ee93b492cbf86603eb02b3c77a66'/>
<id>urn:sha1:fe45ab552955ee93b492cbf86603eb02b3c77a66</id>
<content type='text'>
The BPMP implementation on Tegra194 is mostly compatible with the
implementation on Tegra186, so make sure the latter is available when
support for Tegra194 is enabled.

Suggested-by: Timo Alho &lt;talho@nvidia.com&gt;
Reviewed-by: Timo Alho &lt;talho@nvidia.com&gt;
Tested-by: Timo Alho &lt;talho@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: Conditionally support SoC generations</title>
<updated>2019-02-07T17:52:19Z</updated>
<author>
<name>Thierry Reding</name>
<email>treding@nvidia.com</email>
</author>
<published>2019-02-07T11:50:05Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=79d031fcad56e27fc4d614d54cd5962cad282473'/>
<id>urn:sha1:79d031fcad56e27fc4d614d54cd5962cad282473</id>
<content type='text'>
Only include support for Tegra210 and Tegra186 in the BPMP driver if
support for those SoCs was selected. This fixes a build failure seen
on 32-bit ARM allmodconfig builds, but could also happen on 64-bit
ARM builds if either Tegra210 or Tegra186 were not selected.

Reported-by: Guenter Roeck &lt;linux@roeck-us.net&gt;
Reviewed-by: Timo Alho &lt;talho@nvidia.com&gt;
Tested-by: Timo Alho &lt;talho@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: bpmp-tegra186: Remove unused includes</title>
<updated>2019-01-25T14:58:47Z</updated>
<author>
<name>Thierry Reding</name>
<email>treding@nvidia.com</email>
</author>
<published>2019-01-25T14:46:56Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e835d442cff641a0831b090a47457366d7919324'/>
<id>urn:sha1:e835d442cff641a0831b090a47457366d7919324</id>
<content type='text'>
Many of the include files are not needed, so drop them.

Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: add bpmp driver for Tegra210</title>
<updated>2019-01-25T14:58:47Z</updated>
<author>
<name>Timo Alho</name>
<email>talho@nvidia.com</email>
</author>
<published>2019-01-24T17:03:54Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=139251fc220830cc49b71331d281a8ad03a08ab7'/>
<id>urn:sha1:139251fc220830cc49b71331d281a8ad03a08ab7</id>
<content type='text'>
This patch adds driver for Tegra210 BPMP firmware.

The BPMP is a specific processor in Tegra210 chip, which runs firmware
for assisting in entering deep low power states (suspend to ram), and
offloading DRAM memory clock scaling on some platforms.

Based on work by Sivaram Nair &lt;sivaramn@nvidia.com&gt;

Signed-off-by: Timo Alho &lt;talho@nvidia.com&gt;
Acked-by: Jon Hunter &lt;jonathanh@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: Refactor BPMP driver</title>
<updated>2019-01-25T14:58:47Z</updated>
<author>
<name>Timo Alho</name>
<email>talho@nvidia.com</email>
</author>
<published>2019-01-24T17:03:53Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=cdfa358b248efd36c6a9cb4d4d0a3ba7509f8387'/>
<id>urn:sha1:cdfa358b248efd36c6a9cb4d4d0a3ba7509f8387</id>
<content type='text'>
Split BPMP driver into common and chip specific parts to facilitate
adding support for previous and future Tegra chips that are using BPMP
as co-processor.

Signed-off-by: Timo Alho &lt;talho@nvidia.com&gt;
Acked-by: Jon Hunter &lt;jonathanh@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: Reword messaging terminology</title>
<updated>2019-01-25T14:57:52Z</updated>
<author>
<name>Timo Alho</name>
<email>talho@nvidia.com</email>
</author>
<published>2019-01-24T17:03:52Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=165ce6e01d2d00bff2f10eba8dd679cee44163bd'/>
<id>urn:sha1:165ce6e01d2d00bff2f10eba8dd679cee44163bd</id>
<content type='text'>
As a preparatory change to refactor BPMP driver to support other than
Tegra186 and Tegra194 chip generations, reword and slightly refactor
some of the functions to better match with what is actually happening
in the wire-level protocol.

The communication with BPMP is essentially a Remote Procedure Call
consisting of "request" and "response". Either side (BPMP or CPU) can
initiate the communication. The state machine for communication
consists of following steps (from Linux point of view):

Linux initiating the call:
 1) check that channel is free to transmit a request
    (is_request_channel_free)
 2) copy request message payload to shared location
 3) post the request in channel (post_request)
 4) notify BPMP that channel state has been updated (ring_doorbell)
 5) wait for response (is_response_ready)
 6) copy response message payload from shared location
 7) acknowledge the response in channel (ack_response)

BPMP initiating the call:
 1) wait for request (is_request_ready)
 2) copy request message payload from shared location
 3) acknowledge the request in channel (ack_request)
 4) check that channel is free to transmit response
    (is_response_channel_free)
 5) copy response message payload to shared location
 6) post the response message to channel (post_response)
 7) notify BPMP that channel state has been updated (ring_doorbell)

Signed-off-by: Timo Alho &lt;talho@nvidia.com&gt;
Acked-by: Jon Hunter &lt;jonathanh@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: Use in-band messages for firmware version query</title>
<updated>2018-11-08T11:49:26Z</updated>
<author>
<name>Timo Alho</name>
<email>talho@nvidia.com</email>
</author>
<published>2018-10-22T13:19:40Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=af51c25fb59d4365c259ab93f388462e0998a2ed'/>
<id>urn:sha1:af51c25fb59d4365c259ab93f388462e0998a2ed</id>
<content type='text'>
Add support for a new MRQ, that uses in-band messaging instead of IOVA
buffer, to retrieve the firmware version 'tag' during boot. If an
older firmware is used, that does not support the new MRQ, fall back
to the earlier implementation.

Signed-off-by: Timo Alho &lt;talho@nvidia.com&gt;
Acked-by: Sivaram Nair &lt;sivaramn@nvidia.com&gt;
Acked-by: Jon Hunter &lt;jonathanh@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: Print version tag at full</title>
<updated>2018-11-08T11:49:26Z</updated>
<author>
<name>Timo Alho</name>
<email>talho@nvidia.com</email>
</author>
<published>2018-10-22T13:19:38Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=2b86c11b99d3fc4e82af65c5b00b4334a6dfe6c9'/>
<id>urn:sha1:2b86c11b99d3fc4e82af65c5b00b4334a6dfe6c9</id>
<content type='text'>
Last two characters of the version tag that is 32 bytes long were
stripped out.

Signed-off-by: Timo Alho &lt;talho@nvidia.com&gt;
Acked-by: Sivaram Nair &lt;sivaramn@nvidia.com&gt;
Acked-by: Jon Hunter &lt;jonathanh@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: Switch to global mrq_is_supported()</title>
<updated>2018-11-08T11:49:25Z</updated>
<author>
<name>Timo Alho</name>
<email>talho@nvidia.com</email>
</author>
<published>2018-10-22T13:19:37Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=43dc7485807a8ffde12e242e557a1992478de4de'/>
<id>urn:sha1:43dc7485807a8ffde12e242e557a1992478de4de</id>
<content type='text'>
Patch "firmware: tegra: add helper to check for supported MRQs" added
an API to check if MRQ is supported. Remove the implementation from
bpmp debugfs code in favor of that.

Signed-off-by: Timo Alho &lt;talho@nvidia.com&gt;
Acked-by: Sivaram Nair &lt;sivaramn@nvidia.com&gt;
Acked-by: Jon Hunter &lt;jonathanh@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
<entry>
<title>firmware: tegra: Add helper to check for supported MRQs</title>
<updated>2018-11-08T11:49:25Z</updated>
<author>
<name>Timo Alho</name>
<email>talho@nvidia.com</email>
</author>
<published>2018-10-22T13:19:36Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=d78b5bde0ffc33d20f014b3ad4d7aaac8b79d34e'/>
<id>urn:sha1:d78b5bde0ffc33d20f014b3ad4d7aaac8b79d34e</id>
<content type='text'>
Add a helper function to check that firmware is supporting a given MRQ
command.

Signed-off-by: Timo Alho &lt;talho@nvidia.com&gt;
Acked-by: Sivaram Nair &lt;sivaramn@nvidia.com&gt;
Acked-by: Jon Hunter &lt;jonathanh@nvidia.com&gt;
Signed-off-by: Thierry Reding &lt;treding@nvidia.com&gt;
</content>
</entry>
</feed>
