Kernel sources for Moto G9 (Play) (Guamp)
Find a file
Jean-Philippe Brucker 542fbaaab6 mtd: cfi_cmdset_0001: Support the absence of protection registers
[ Upstream commit b359ed5184aebf9d987e54abc5dae7ac03ed29ae ]

The flash controller implemented by the Arm Base platform behaves like
the Intel StrataFlash J3 device, but omits several features. In
particular it doesn't implement a protection register, so "Number of
Protection register fields" in the Primary Vendor-Specific Extended
Query, is 0.

The Intel StrataFlash J3 datasheet only lists 1 as a valid value for
NumProtectionFields. It describes the field as:

	"Number of Protection register fields in JEDEC ID space.
	“00h,” indicates that 256 protection bytes are available"

While a value of 0 may arguably not be architecturally valid, the
driver's current behavior is certainly wrong: if NumProtectionFields is
0, read_pri_intelext() adds a negative value to the unsigned extra_size,
and ends up in an infinite loop.

Fix it by ignoring a NumProtectionFields of 0.

Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Tested-by: Sudeep Holla <sudeep.holla@arm.com>
Tested-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Stable-dep-of: 565fe150624e ("mtd: cfi_cmdset_0001: Byte swap OTP info")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-12-08 08:43:26 +01:00
arch s390/cmma: fix detection of DAT pages 2023-12-08 08:43:26 +01:00
block block: fix signed int overflow in Amiga partition support 2023-08-30 16:31:46 +02:00
certs
crypto crypto: pcrypt - Fix hungtask for PADATA_RESET 2023-11-28 16:46:31 +00:00
Documentation Documentation: security-bugs.rst: clarify CVE handling 2023-08-11 11:45:34 +02:00
drivers mtd: cfi_cmdset_0001: Support the absence of protection registers 2023-12-08 08:43:26 +01:00
firmware
fs smb3: fix touch -h of symlink 2023-12-08 08:43:25 +01:00
include HID: fix HID device resource race between HID core and debugging support 2023-12-08 08:43:23 +01:00
init init, x86: Move mem_encrypt_init() into arch_cpu_finalize_init() 2023-08-08 19:49:18 +02:00
ipc
kernel PM: hibernate: Clean up sync_read handling in snapshot_write_next() 2023-11-28 16:46:34 +00:00
lib kobject: Fix slab-out-of-bounds in fill_kobj_path() 2023-11-08 11:22:17 +01:00
LICENSES
mm vfs: fix readahead(2) on block devices 2023-11-20 10:29:16 +01:00
net ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet 2023-12-08 08:43:25 +01:00
samples samples/bpf: Fix buffer overflow in tcp_basertt 2023-08-11 11:45:03 +02:00
scripts randstruct: Fix gcc-plugin performance mode to stay in group 2023-11-28 16:46:34 +00:00
security smack: Record transmuting in smk_transmuted 2023-10-10 21:44:59 +02:00
sound ALSA: hda/realtek: Headset Mic VREF to 100% 2023-12-08 08:43:25 +01:00
tools selftests/efivarfs: create-read: fix a resource leak 2023-11-28 16:46:31 +00:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS MAINTAINERS: r8169: Update path to the driver 2023-11-08 11:22:19 +01:00
Makefile Linux 4.19.300 2023-11-28 16:46:37 +00:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.
See Documentation/00-INDEX for a list of what is contained in each file.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.