<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/firmware/qcom_scm.c, branch linux-5.6.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.6.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.6.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2020-01-08T06:14:43Z</updated>
<entry>
<title>firmware: qcom_scm: Dynamically support SMCCC and legacy conventions</title>
<updated>2020-01-08T06:14:43Z</updated>
<author>
<name>Elliot Berman</name>
</author>
<published>2020-01-07T21:04:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9a434cee773ae15309ac225f27551b5492618e4a'/>
<id>urn:sha1:9a434cee773ae15309ac225f27551b5492618e4a</id>
<content type='text'>
Dynamically support SMCCCC and legacy conventions by detecting which
convention to use at runtime. qcom_scm_call_atomic and qcom_scm_call can
then be moved in qcom_scm.c and use underlying convention backend as
appropriate. Thus, rename qcom_scm-64,-32 to reflect that they are
backends for -smc and -legacy, respectively.

Also add support for making SCM calls earlier than when SCM driver
probes to support use cases such as qcom_scm_set_cold_boot_addr. Support
is added by lazily initializing the convention and guarding the query
with a spin lock.  The limitation of these early SCM calls is that they
cannot use DMA, as in the case of &gt;4 arguments for SMC convention and
any non-atomic call for legacy convention.

Tested-by: Brian Masney &lt;masneyb@onstation.org&gt; # arm32
Tested-by: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Signed-off-by: Elliot Berman &lt;eberman@codeaurora.org&gt;
Link: https://lore.kernel.org/r/1578431066-19600-18-git-send-email-eberman@codeaurora.org
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
</content>
</entry>
<entry>
<title>firmware: qcom_scm: Remove thin wrappers</title>
<updated>2020-01-08T06:14:40Z</updated>
<author>
<name>Elliot Berman</name>
</author>
<published>2020-01-07T21:04:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=57d3b816718c1cf832e2929a754da3564c6127cc'/>
<id>urn:sha1:57d3b816718c1cf832e2929a754da3564c6127cc</id>
<content type='text'>
qcom_scm-32 and qcom_scm-64 implementations are nearly identical, so
make qcom_scm_call and qcom_scm_call_atomic unique to each and the SCM
descriptor creation common to each. There are the following catches:
- __qcom_scm_is_call_available is still in each -32,-64 implementation
  as the argument is unique to each convention
- For some functions, only one implementation was provided in -32 or
  -64. The actual implementation was moved into qcom_scm.c
- io_writel and io_readl in -64 were non-atomic calls and in -32 they
  were. Atomic is the better option, so use it.

Tested-by: Brian Masney &lt;masneyb@onstation.org&gt; # arm32
Tested-by: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Signed-off-by: Elliot Berman &lt;eberman@codeaurora.org&gt;
Link: https://lore.kernel.org/r/1578431066-19600-17-git-send-email-eberman@codeaurora.org
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
</content>
</entry>
<entry>
<title>firmware: qcom_scm: Order functions, definitions by service/command</title>
<updated>2020-01-08T06:14:38Z</updated>
<author>
<name>Elliot Berman</name>
</author>
<published>2020-01-07T21:04:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=65f0c90b7d468545590992c61a19f9dc0aac61ef'/>
<id>urn:sha1:65f0c90b7d468545590992c61a19f9dc0aac61ef</id>
<content type='text'>
Definitions throughout qcom_scm are loosely grouped and loosely ordered.
Sort all the functions/definitions by service ID/command ID to improve
sanity when needing to add new functionality to this driver.

Acked-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Tested-by: Brian Masney &lt;masneyb@onstation.org&gt; # arm32
Tested-by: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Signed-off-by: Elliot Berman &lt;eberman@codeaurora.org&gt;
Link: https://lore.kernel.org/r/1578431066-19600-16-git-send-email-eberman@codeaurora.org
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
</content>
</entry>
<entry>
<title>firmware: qcom_scm-32: Add device argument to atomic calls</title>
<updated>2020-01-08T06:14:35Z</updated>
<author>
<name>Elliot Berman</name>
</author>
<published>2020-01-07T21:04:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=59b6cf3046d2026e51cb61b8685a14965d991927'/>
<id>urn:sha1:59b6cf3046d2026e51cb61b8685a14965d991927</id>
<content type='text'>
Add unused "device" parameter to reduce merge friction between SMCCC and
legacy based conventions in an upcoming patch.

Tested-by: Brian Masney &lt;masneyb@onstation.org&gt; # arm32
Tested-by: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Signed-off-by: Elliot Berman &lt;eberman@codeaurora.org&gt;
Link: https://lore.kernel.org/r/1578431066-19600-15-git-send-email-eberman@codeaurora.org
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
</content>
</entry>
<entry>
<title>firmware: qcom_scm: Apply consistent naming scheme to command IDs</title>
<updated>2020-01-08T06:14:01Z</updated>
<author>
<name>Elliot Berman</name>
</author>
<published>2020-01-07T21:04:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5443cc5f12b1178ccdc414843aea7f0d2e14d03c'/>
<id>urn:sha1:5443cc5f12b1178ccdc414843aea7f0d2e14d03c</id>
<content type='text'>
Create a consistent naming scheme for command IDs. The scheme is
QCOM_SCM_##svc_##cmd. Remove unused macros QCOM_SCM_FLAG_HLOS,
QCOM_SCM_FLAG_COLDBOOT_MC, QCOM_SCM_FLAG_WARMBOOT_MC,
QCOM_SCM_CMD_CORE_HOTPLUGGED, and QCOM_SCM_BOOT_ADDR_MC.

Reviewed-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Reviewed-by: Vinod Koul &lt;vkoul@kernel.org&gt;
Reviewed-by: Stephen Boyd &lt;swboyd@chromium.org&gt;
Tested-by: Brian Masney &lt;masneyb@onstation.org&gt; # arm32
Tested-by: Stephan Gerhold &lt;stephan@gerhold.net&gt;
Signed-off-by: Elliot Berman &lt;eberman@codeaurora.org&gt;
Link: https://lore.kernel.org/r/1578431066-19600-3-git-send-email-eberman@codeaurora.org
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
</content>
</entry>
<entry>
<title>Merge tag 'drm-next-2019-12-06' of git://anongit.freedesktop.org/drm/drm</title>
<updated>2019-12-06T18:28:09Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2019-12-06T18:28:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7ada90eb9c7ae4a8eb066f8e9b4d80122f0363db'/>
<id>urn:sha1:7ada90eb9c7ae4a8eb066f8e9b4d80122f0363db</id>
<content type='text'>
Pull more drm updates from Dave Airlie:
 "Rob pointed out I missed his pull request for msm-next, it's been in
  next for a while outside of my tree so shouldn't cause any unexpected
  issues, it has some OCMEM support in drivers/soc that is acked by
  other maintainers as it's outside my tree.

  Otherwise it's a usual fixes pull, i915, amdgpu, the main ones, with
  some tegra, omap, mgag200 and one core fix.

  Summary:

  msm-next:
   - OCMEM support for a3xx and a4xx GPUs.
   - a510 support + display support

  core:
   - mst payload deletion fix

  i915:
   - uapi alignment fix
   - fix for power usage regression due to security fixes
   - change default preemption timeout to 640ms from 100ms
   - EHL voltage level display fixes
   - TGL DGL PHY fix
   - gvt - MI_ATOMIC cmd parser fix, CFL non-priv warning
   - CI spotted deadlock fix
   - EHL port D programming fix

  amdgpu:
   - VRAM lost fixes on BACO for CI/VI
   - navi14 DC fixes
   - misc SR-IOV, gfx10 fixes
   - XGMI fixes for arcturus
   - SRIOV fixes

  amdkfd:
   - KFD on ppc64le enabled
   - page table optimisations

  radeon:
   - fix for r1xx/2xx register checker.

  tegra:
   - displayport regression fixes
   - DMA API regression fixes

  mgag200:
   - fix devices that can't scanout except at 0 addr

  omap:
   - fix dma_addr refcounting"

* tag 'drm-next-2019-12-06' of git://anongit.freedesktop.org/drm/drm: (100 commits)
  drm/dp_mst: Correct the bug in drm_dp_update_payload_part1()
  drm/omap: fix dma_addr refcounting
  drm/tegra: Run hub cleanup on -&gt;remove()
  drm/tegra: sor: Make the +5V HDMI supply optional
  drm/tegra: Silence expected errors on IOMMU attach
  drm/tegra: vic: Export module device table
  drm/tegra: sor: Implement system suspend/resume
  drm/tegra: Use proper IOVA address for cursor image
  drm/tegra: gem: Remove premature import restrictions
  drm/tegra: gem: Properly pin imported buffers
  drm/tegra: hub: Remove bogus connection mutex check
  ia64: agp: Replace empty define with do while
  agp: Add bridge parameter documentation
  agp: remove unused variable num_segments
  agp: move AGPGART_MINOR to include/linux/miscdevice.h
  agp: remove unused variable size in agp_generic_create_gatt_table
  drm/dp_mst: Fix build on systems with STACKTRACE_SUPPORT=n
  drm/radeon: fix r1xx/r2xx register checker for POT textures
  drm/amdgpu: fix GFX10 missing CSIB set(v3)
  drm/amdgpu: should stop GFX ring in hw_fini
  ...
</content>
</entry>
<entry>
<title>firmware/qcom_scm: Add scm call to handle smmu errata</title>
<updated>2019-11-04T17:48:37Z</updated>
<author>
<name>Vivek Gautam</name>
</author>
<published>2019-09-20T08:04:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5eb0e0e4f90addc6b79ebf1cb4b06b56b09f09de'/>
<id>urn:sha1:5eb0e0e4f90addc6b79ebf1cb4b06b56b09f09de</id>
<content type='text'>
Qcom's smmu-500 needs to toggle wait-for-safe sequence to
handle TLB invalidation sync's.
Few firmwares allow doing that through SCM interface.
Add API to toggle wait for safe from firmware through a
SCM call.

Signed-off-by: Vivek Gautam &lt;vivek.gautam@codeaurora.org&gt;
Reviewed-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Reviewed-by: Stephen Boyd &lt;swboyd@chromium.org&gt;
Acked-by: Andy Gross &lt;agross@kernel.org&gt;
Signed-off-by: Sai Prakash Ranjan &lt;saiprakash.ranjan@codeaurora.org&gt;
Signed-off-by: Will Deacon &lt;will@kernel.org&gt;
</content>
</entry>
<entry>
<title>firmware: qcom: scm: add support to restore secure config to qcm_scm-32</title>
<updated>2019-10-07T15:17:27Z</updated>
<author>
<name>Rob Clark</name>
</author>
<published>2019-08-23T12:16:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0434a4061471a9afc2b2061add496e58ba4bb92d'/>
<id>urn:sha1:0434a4061471a9afc2b2061add496e58ba4bb92d</id>
<content type='text'>
Add support to restore the secure configuration for qcm_scm-32.c. This
is needed by the On Chip MEMory (OCMEM) that is present on some
Snapdragon devices.

Signed-off-by: Rob Clark &lt;robdclark@gmail.com&gt;
[masneyb@onstation.org: ported to latest kernel; set ctx_bank_num to
 spare parameter.]
Signed-off-by: Brian Masney &lt;masneyb@onstation.org&gt;
Reviewed-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Tested-by: Gabriel Francisco &lt;frc.gabrielgmail.com&gt;
Signed-off-by: Rob Clark &lt;robdclark@chromium.org&gt;
</content>
</entry>
<entry>
<title>firmware: qcom: scm: add OCMEM lock/unlock interface</title>
<updated>2019-10-07T15:17:18Z</updated>
<author>
<name>Rob Clark</name>
</author>
<published>2019-08-23T12:16:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b0a1614fb1f58520938968ebe1f4f11bcf34839e'/>
<id>urn:sha1:b0a1614fb1f58520938968ebe1f4f11bcf34839e</id>
<content type='text'>
Add support for the OCMEM lock/unlock interface that is needed by the
On Chip MEMory (OCMEM) that is present on some Snapdragon devices.

Signed-off-by: Rob Clark &lt;robdclark@gmail.com&gt;
[masneyb@onstation.org: ported to latest kernel; minor reformatting.]
Signed-off-by: Brian Masney &lt;masneyb@onstation.org&gt;
Reviewed-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Tested-by: Gabriel Francisco &lt;frc.gabrielgmail.com&gt;
Signed-off-by: Rob Clark &lt;robdclark@chromium.org&gt;
</content>
</entry>
<entry>
<title>firmware: qcom_scm: Cleanup code in qcom_scm_assign_mem()</title>
<updated>2019-07-22T23:25:20Z</updated>
<author>
<name>Stephen Boyd</name>
</author>
<published>2019-05-17T21:09:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=af311ff9a69189a03548efd5a47d4bb44644fd45'/>
<id>urn:sha1:af311ff9a69189a03548efd5a47d4bb44644fd45</id>
<content type='text'>
There are some questionable coding styles in this function. It looks
quite odd to deref a pointer with array indexing that only uses the
first element. Also, destroying an input/output variable halfway through
the function and then overwriting it on success is not clear. It's
better to use a local variable and the kernel macros to step through
each bit set in a bitmask and clearly show where outputs are set.

Cc: Ian Jackson &lt;ian.jackson@citrix.com&gt;
Cc: Julien Grall &lt;julien.grall@arm.com&gt;
Cc: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Cc: Avaneesh Kumar Dwivedi &lt;akdwived@codeaurora.org&gt;
Tested-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
Signed-off-by: Stephen Boyd &lt;swboyd@chromium.org&gt;
[bjorn: Changed for_each_set_bit() size to BITS_PER_LONG]
Signed-off-by: Bjorn Andersson &lt;bjorn.andersson@linaro.org&gt;
</content>
</entry>
</feed>
