<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/mtd/chips, branch v5.4.113</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v5.4.113</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v5.4.113'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2020-10-01T11:17:16+00:00</updated>
<entry>
<title>mtd: cfi_cmdset_0002: don't free cfi-&gt;cfiq in error path of cfi_amdstd_setup()</title>
<updated>2020-10-01T11:17:16+00:00</updated>
<author>
<name>Hou Tao</name>
<email>houtao1@huawei.com</email>
</author>
<published>2019-10-08T02:36:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=deb34c91ebd4cb5b59dfb746796e9b45d0fa4c99'/>
<id>urn:sha1:deb34c91ebd4cb5b59dfb746796e9b45d0fa4c99</id>
<content type='text'>
[ Upstream commit 03976af89e3bd9489d542582a325892e6a8cacc0 ]

Else there may be a double-free problem, because cfi-&gt;cfiq will
be freed by mtd_do_chip_probe() if both the two invocations of
check_cmd_set() return failure.

Signed-off-by: Hou Tao &lt;houtao1@huawei.com&gt;
Reviewed-by: Richard Weinberger &lt;richard@nod.at&gt;
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: fix delayed error detection on HyperFlash</title>
<updated>2020-01-23T07:22:57+00:00</updated>
<author>
<name>Sergei Shtylyov</name>
<email>sergei.shtylyov@cogentembedded.com</email>
</author>
<published>2019-10-31T20:39:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1a05d8ba219dc4246fba4fbcabc90fd82e306f86'/>
<id>urn:sha1:1a05d8ba219dc4246fba4fbcabc90fd82e306f86</id>
<content type='text'>
commit c15995695ea971253ea9507f6732c8cd35384e01 upstream.

The commit 4844ef80305d ("mtd: cfi_cmdset_0002: Add support for polling
status register") added checking for the status register error bits into
chip_good() to only return 1 if these bits are 0s.  Unfortunately, this
means that polling using chip_good() always reaches a timeout condition
when erase or program failure bits are set. Let's fully delegate the task
of determining the error conditions to cfi_check_err_status() and make
chip_good() only look for the Device Ready/Busy condition.

Fixes: 4844ef80305d ("mtd: cfi_cmdset_0002: Add support for polling status register")
Signed-off-by: Sergei Shtylyov &lt;sergei.shtylyov@cogentembedded.com&gt;
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: only check errors when ready in cfi_check_err_status()</title>
<updated>2020-01-23T07:22:57+00:00</updated>
<author>
<name>Sergei Shtylyov</name>
<email>sergei.shtylyov@cogentembedded.com</email>
</author>
<published>2019-10-31T20:37:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1883f6047d8cf7907e8fd8558e5dcb92f6d5db5d'/>
<id>urn:sha1:1883f6047d8cf7907e8fd8558e5dcb92f6d5db5d</id>
<content type='text'>
commit 72914a8cff7e1d910c58e125e15a0da409e3135f upstream.

Cypress S26K{L|S}P{128|256|512}S datasheet says that the error bits in
the status register are only valid when the "device ready" bit 7 is set.
Add the check for the device ready bit in cfi_check_err_status() as that
function isn't always called with this bit set.

Fixes: 4844ef80305d ("mtd: cfi_cmdset_0002: Add support for polling status register")
Signed-off-by: Sergei Shtylyov &lt;sergei.shtylyov@cogentembedded.com&gt;
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: Fix do_erase_chip() to get chip as erasing mode</title>
<updated>2019-09-15T21:51:07+00:00</updated>
<author>
<name>Tokunori Ikegami</name>
<email>ikegami.t@gmail.com</email>
</author>
<published>2019-08-21T16:46:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8a9485ff09088c67b70e4e38b1679c1b9bedb808'/>
<id>urn:sha1:8a9485ff09088c67b70e4e38b1679c1b9bedb808</id>
<content type='text'>
The chip state is set to erasing by the function after getting chip.
So it should be to get chip as erasing mode at first.
But previously it was to get chip as writing mode then fix as erasing.

Signed-off-by: Tokunori Ikegami &lt;ikegami.t@gmail.com&gt;
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Richard Weinberger &lt;richard@nod.at&gt;
</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: Disable write buffer functions if FORCE_WORD_WRITE is 1</title>
<updated>2019-08-27T12:25:53+00:00</updated>
<author>
<name>Tokunori Ikegami</name>
<email>ikegami.t@gmail.com</email>
</author>
<published>2019-08-05T19:03:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=557c759036fc3976a5358cef23e65a263853b93f'/>
<id>urn:sha1:557c759036fc3976a5358cef23e65a263853b93f</id>
<content type='text'>
Some write buffer functions are not used when FORCE_WORD_WRITE is set to 1.
So the compile warning messages are output if FORCE_WORD_WRITE is 1. To
resolve this disable the write buffer functions if FORCE_WORD_WRITE is 1.

Cc: Fabio Bettoni &lt;fbettoni@gmail.com&gt;
Co: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Cc: Chris Packham &lt;chris.packham@alliedtelesis.co.nz&gt;
Cc: Joakim Tjernlund &lt;Joakim.Tjernlund@infinera.com&gt;
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Tokunori Ikegami &lt;ikegami.t@gmail.com&gt;
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: Split do_write_oneword() to reduce exit paths</title>
<updated>2019-08-27T12:25:53+00:00</updated>
<author>
<name>Tokunori Ikegami</name>
<email>ikegami.t@gmail.com</email>
</author>
<published>2019-08-05T19:03:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0bcf880b062ef88d144ffe90918c56dd11e3d935'/>
<id>urn:sha1:0bcf880b062ef88d144ffe90918c56dd11e3d935</id>
<content type='text'>
The do_write_oneword_done() is called twice at the exit paths.
By splitting the retry functionality it can be reduced to call once.

Cc: Fabio Bettoni &lt;fbettoni@gmail.com&gt;
Co: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Cc: Chris Packham &lt;chris.packham@alliedtelesis.co.nz&gt;
Cc: Joakim Tjernlund &lt;Joakim.Tjernlund@infinera.com&gt;
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Tokunori Ikegami &lt;ikegami.t@gmail.com&gt;
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: Split wait for write buffer completion sequence</title>
<updated>2019-08-27T12:25:53+00:00</updated>
<author>
<name>Tokunori Ikegami</name>
<email>ikegami.t@gmail.com</email>
</author>
<published>2019-08-05T19:03:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6beb3ea746db88904a5ab8f2cc87837489e46612'/>
<id>urn:sha1:6beb3ea746db88904a5ab8f2cc87837489e46612</id>
<content type='text'>
Split wait for write completion from do_write_buffer() into separate
function.

Cc: Fabio Bettoni &lt;fbettoni@gmail.com&gt;
Co: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Cc: Chris Packham &lt;chris.packham@alliedtelesis.co.nz&gt;
Cc: Joakim Tjernlund &lt;Joakim.Tjernlund@infinera.com&gt;
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Tokunori Ikegami &lt;ikegami.t@gmail.com&gt;
[vigneshr@ti.com: Reword commit message]
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: Split write-to-buffer-reset sequence</title>
<updated>2019-08-27T12:25:53+00:00</updated>
<author>
<name>Tokunori Ikegami</name>
<email>ikegami.t@gmail.com</email>
</author>
<published>2019-08-05T19:03:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=816a6d1481a55983ba527a93702160cf210acade'/>
<id>urn:sha1:816a6d1481a55983ba527a93702160cf210acade</id>
<content type='text'>
Just refactor to split the sequence from do_write_buffer().

Cc: Fabio Bettoni &lt;fbettoni@gmail.com&gt;
Co: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Cc: Chris Packham &lt;chris.packham@alliedtelesis.co.nz&gt;
Cc: Joakim Tjernlund &lt;Joakim.Tjernlund@infinera.com&gt;
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Tokunori Ikegami &lt;ikegami.t@gmail.com&gt;
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: Split do_write_oneword() op_done goto statement</title>
<updated>2019-08-27T12:25:53+00:00</updated>
<author>
<name>Tokunori Ikegami</name>
<email>ikegami.t@gmail.com</email>
</author>
<published>2019-08-05T19:03:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=228c05c2d73e072b78d0c661c2d8717d0310ef35'/>
<id>urn:sha1:228c05c2d73e072b78d0c661c2d8717d0310ef35</id>
<content type='text'>
To reduce function size and to remove the goto statement, split the
op_done goto statement part into do_write_oneword_done(). Also
split the start part into do_write_oneword_start() to be symmetrical.

Cc: Fabio Bettoni &lt;fbettoni@gmail.com&gt;
Co: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Cc: Chris Packham &lt;chris.packham@alliedtelesis.co.nz&gt;
Cc: Joakim Tjernlund &lt;Joakim.Tjernlund@infinera.com&gt;
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Tokunori Ikegami &lt;ikegami.t@gmail.com&gt;
[vigneshr@ti.com: Reword commit message]
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
</content>
</entry>
<entry>
<title>mtd: cfi_cmdset_0002: Split do_write_oneword() to reduce function size</title>
<updated>2019-08-27T12:25:53+00:00</updated>
<author>
<name>Tokunori Ikegami</name>
<email>ikegami.t@gmail.com</email>
</author>
<published>2019-08-05T19:03:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a371ba57a205e7dd6b2ccb502a4ea009d6c010f7'/>
<id>urn:sha1:a371ba57a205e7dd6b2ccb502a4ea009d6c010f7</id>
<content type='text'>
Reduce the size of do_write_oneword() by extracting a helper function
for the hardware access.

Cc: Fabio Bettoni &lt;fbettoni@gmail.com&gt;
Co: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
Cc: Joakim Tjernlund &lt;Joakim.Tjernlund@infinera.com&gt;
Cc: linux-mtd@lists.infradead.org
Signed-off-by: Tokunori Ikegami &lt;ikegami.t@gmail.com&gt;
Reviewed-by: Chris Packham &lt;chris.packham@alliedtelesis.co.nz&gt;
Signed-off-by: Vignesh Raghavendra &lt;vigneshr@ti.com&gt;
</content>
</entry>
</feed>
