<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/nvmem/qfprom.c, branch linux-5.8.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.8.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.8.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2020-05-27T09:09:26Z</updated>
<entry>
<title>nvmem: qfprom: remove incorrect write support</title>
<updated>2020-05-27T09:09:26Z</updated>
<author>
<name>Srinivas Kandagatla</name>
</author>
<published>2020-05-22T11:33:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8d9eb0d6d59a5d7028c80a30831143d3e75515a7'/>
<id>urn:sha1:8d9eb0d6d59a5d7028c80a30831143d3e75515a7</id>
<content type='text'>
qfprom has different address spaces for read and write. Reads are
always done from corrected address space, where as writes are done
on raw address space.
Writing to corrected address space is invalid and ignored, so it
does not make sense to have this support in the driver which only
supports corrected address space regions at the moment.

Fixes: 4ab11996b489 ("nvmem: qfprom: Add Qualcomm QFPROM support.")
Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Reviewed-by: Douglas Anderson &lt;dianders@chromium.org&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Link: https://lore.kernel.org/r/20200522113341.7728-1-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284</title>
<updated>2019-06-05T15:36:37Z</updated>
<author>
<name>Thomas Gleixner</name>
</author>
<published>2019-05-29T14:17:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=97fb5e8d9b57f10f294303c9a5d1bd033eded6bf'/>
<id>urn:sha1:97fb5e8d9b57f10f294303c9a5d1bd033eded6bf</id>
<content type='text'>
Based on 1 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 and
  only version 2 as published by the free software foundation this
  program is distributed in the hope that it will be useful but
  without any warranty without even the implied warranty of
  merchantability or fitness for a particular purpose see the gnu
  general public license for more details

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-only

has been chosen to replace the boilerplate/reference in 294 file(s).

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Reviewed-by: Allison Randal &lt;allison@lohutok.net&gt;
Reviewed-by: Alexios Zavras &lt;alexios.zavras@intel.com&gt;
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190529141900.825281744@linutronix.de
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>headers: separate linux/mod_devicetable.h from linux/platform_device.h</title>
<updated>2018-07-07T15:52:26Z</updated>
<author>
<name>Randy Dunlap</name>
</author>
<published>2018-06-20T05:47:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ac3167257b9fe16c9426c2087ead1c9f1b0992b1'/>
<id>urn:sha1:ac3167257b9fe16c9426c2087ead1c9f1b0992b1</id>
<content type='text'>
At over 4000 #includes, &lt;linux/platform_device.h&gt; is the 9th most
#included header file in the Linux kernel.  It does not need
&lt;linux/mod_devicetable.h&gt;, so drop that header and explicitly add
&lt;linux/mod_devicetable.h&gt; to source files that need it.

   4146 #include &lt;linux/platform_device.h&gt;

After this patch, there are 225 files that use &lt;linux/mod_devicetable.h&gt;,
for a reduction of around 3900 times that &lt;linux/mod_devicetable.h&gt;
does not have to be read &amp; parsed.

    225 #include &lt;linux/mod_devicetable.h&gt;

This patch was build-tested on 20 different arch-es.

It also makes these drivers SubmitChecklist#1 compliant.

Signed-off-by: Randy Dunlap &lt;rdunlap@infradead.org&gt;
Reported-by: kbuild test robot &lt;lkp@intel.com&gt; # drivers/media/platform/vimc/
Reported-by: kbuild test robot &lt;lkp@intel.com&gt; # drivers/pinctrl/pinctrl-u300.c
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nvmem: qfprom: Convert to use devm_nvmem_register()</title>
<updated>2018-03-14T18:28:14Z</updated>
<author>
<name>Andrey Smirnov</name>
</author>
<published>2018-03-09T14:47:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e5692efe8120abfb72cb4156be2f2d9a2ffc859b'/>
<id>urn:sha1:e5692efe8120abfb72cb4156be2f2d9a2ffc859b</id>
<content type='text'>
Drop all of the code related to .remove hook and make use of
devm_nvmem_register() instead.

Cc: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Cc: Heiko Stuebner &lt;heiko@sntech.de&gt;
Cc: Masahiro Yamada &lt;yamada.masahiro@socionext.com&gt;
Cc: Carlo Caione &lt;carlo@caione.org&gt;
Cc: Kevin Hilman &lt;khilman@baylibre.com&gt;
Cc: Matthias Brugger &lt;matthias.bgg@gmail.com&gt;
Cc: cphealy@gmail.com
Cc: linux-kernel@vger.kernel.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-rockchip@lists.infradead.org
Cc: linux-amlogic@lists.infradead.org
Cc: linux-arm-kernel@lists.infradead.org
Signed-off-by: Andrey Smirnov &lt;andrew.smirnov@gmail.com&gt;
Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nvmem: set nvmem-&gt;owner to nvmem-&gt;dev-&gt;driver-&gt;owner if unset</title>
<updated>2017-11-08T12:54:17Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2017-10-20T16:57:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=17eb18d674d586e609a3e268975edd728d5c84a3'/>
<id>urn:sha1:17eb18d674d586e609a3e268975edd728d5c84a3</id>
<content type='text'>
All nvmem drivers are supposed to set the owner field of struct
nvmem_config, but this matches nvmem-&gt;dev-&gt;driver-&gt;owner.

As far as I see in drivers/nvmem/ directory, all the drivers are
the case.  So, make nvmem_register() set the nvmem's owner to the
associated driver's owner unless nvmem_config sets otherwise.

Remove .owner settings in the drivers that are now redundant.

Signed-off-by: Masahiro Yamada &lt;yamada.masahiro@socionext.com&gt;
Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nvmem: qfprom: fix different address space warnings of sparse</title>
<updated>2017-11-08T12:54:17Z</updated>
<author>
<name>Masahiro Yamada</name>
</author>
<published>2017-10-20T16:57:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ec3672b81fc8ff490e478bc5124f68c2be7174ee'/>
<id>urn:sha1:ec3672b81fc8ff490e478bc5124f68c2be7174ee</id>
<content type='text'>
Fix the following sparse warnings:

drivers/nvmem/qfprom.c:23:30: warning: incorrect type in initializer (different address spaces)
drivers/nvmem/qfprom.c:23:30:    expected void [noderef] &lt;asn:2&gt;*base
drivers/nvmem/qfprom.c:23:30:    got void *context
drivers/nvmem/qfprom.c:36:30: warning: incorrect type in initializer (different address spaces)
drivers/nvmem/qfprom.c:36:30:    expected void [noderef] &lt;asn:2&gt;*base
drivers/nvmem/qfprom.c:36:30:    got void *context
drivers/nvmem/qfprom.c:76:22: warning: incorrect type in assignment (different address spaces)
drivers/nvmem/qfprom.c:76:22:    expected void *static [toplevel] [assigned] priv
drivers/nvmem/qfprom.c:76:22:    got void [noderef] &lt;asn:2&gt;*[assigned] base

The type of nvmem_config-&gt;priv is (void *), so sparse complains
about assignment of the base address with (void __iomem *) type.

Even if we cast it out, sparse still warns:
warning: cast removes address space of expression

Of course, we can shut up the sparse by marking __force, but a more
correct way is to put the base address into driver private data.

Signed-off-by: Masahiro Yamada &lt;yamada.masahiro@socionext.com&gt;
Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nvmem: qfprom: Allow single byte accesses for read/write</title>
<updated>2017-01-04T17:22:47Z</updated>
<author>
<name>Vivek Gautam</name>
</author>
<published>2017-01-04T16:18:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=01d0d2c42a14cee8f619d3e9d571ce3469f5ef51'/>
<id>urn:sha1:01d0d2c42a14cee8f619d3e9d571ce3469f5ef51</id>
<content type='text'>
The nvmem core driver supports to read and write single
byte. So, allow qfprom to support this feature.
This change helps in extracting a required value based
on bit-offset and number of bits for the required value
in the nvmem cell.

Signed-off-by: Vivek Gautam &lt;vivek.gautam@codeaurora.org&gt;
Cc: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nvmem: qfprom: remove nvmem regmap dependency</title>
<updated>2016-05-01T21:01:00Z</updated>
<author>
<name>Srinivas Kandagatla</name>
</author>
<published>2016-04-24T19:28:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=382c62f74f4a50c5e2a85980599dbc76d63c6120'/>
<id>urn:sha1:382c62f74f4a50c5e2a85980599dbc76d63c6120</id>
<content type='text'>
This patch moves to nvmem support in the driver to use callback instead of
regmap.

Reported-by: Rajendra Nayak &lt;rjendra@qti.qualcomm.com&gt;
Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nvmem: qfprom: Specify LE device endianness</title>
<updated>2016-02-08T07:09:13Z</updated>
<author>
<name>Stephen Boyd</name>
</author>
<published>2015-12-14T09:42:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3b2b9ead32142b4cf55ea2793e5e4f7b63c04818'/>
<id>urn:sha1:3b2b9ead32142b4cf55ea2793e5e4f7b63c04818</id>
<content type='text'>
The qfprom is a little endian device, but so far we've been
relying on the regmap mmio bus handling this for us without
explicitly stating that fact. After commit 4a98da2164cf
(regmap-mmio: Use native endianness for read/write, 2015-10-29),
the regmap mmio bus will read/write with the __raw_*() IO
accessors, instead of using the readl/writel() APIs that do
proper byte swapping for little endian devices.

So if we're running on a big endian processor and haven't
specified the endianness explicitly in the regmap config or in
DT, we're going to switch from doing little endian byte swapping
to big endian accesses without byte swapping, leading to some
confusing results. Specify the endianness explicitly so that the
regmap core properly byte swaps the accesses for us.

Cc: Rajendra Nayak &lt;rnayak@codeaurora.org&gt;
Cc: Kevin Hilman &lt;khilman@linaro.org&gt;
Cc: Tyler Baker &lt;tyler.baker@linaro.org&gt;
Cc: Simon Arlott &lt;simon@fire.lp0.eu&gt;
Cc: Mark Brown &lt;broonie@kernel.org&gt;
Signed-off-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>nvmem: qfprom: Add Qualcomm QFPROM support.</title>
<updated>2015-08-05T20:44:23Z</updated>
<author>
<name>Srinivas Kandagatla</name>
</author>
<published>2015-07-27T11:15:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4ab11996b489ad65092216315484824ed32018f8'/>
<id>urn:sha1:4ab11996b489ad65092216315484824ed32018f8</id>
<content type='text'>
This patch adds QFPROM support driver which is used by other drivers
like thermal sensor and cpufreq.

On MSM parts there are some efuses (called qfprom) these fuses store
things like calibration data, speed bins.. etc. Drivers like cpufreq,
thermal sensors would read out this data for configuring the driver.

Signed-off-by: Srinivas Kandagatla &lt;srinivas.kandagatla@linaro.org&gt;
Reviewed-by: Stephen Boyd &lt;sboyd@codeaurora.org&gt;
Tested-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Tested-by: Rajendra Nayak &lt;rnayak@codeaurora.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
