diff options
| author | Adrian Hunter <adrian.hunter@intel.com> | 2026-01-06 18:44:07 +0200 |
|---|---|---|
| committer | Sasha Levin <sashal@kernel.org> | 2026-03-04 07:19:33 -0500 |
| commit | 33f51b058c139f7e34869bcc6f4aafa975907cfd (patch) | |
| tree | fe958e85f306a8aba043e49879b1263bf83e8629 /drivers/i3c | |
| parent | 55e43e6c7bc8b3cad07f75fe947e2e321eb4fb3d (diff) | |
| download | linux-33f51b058c139f7e34869bcc6f4aafa975907cfd.tar.gz linux-33f51b058c139f7e34869bcc6f4aafa975907cfd.tar.bz2 linux-33f51b058c139f7e34869bcc6f4aafa975907cfd.zip | |
i3c: mipi-i3c-hci: Stop reading Extended Capabilities if capability ID is 0
[ Upstream commit 0818e4aa8fdeeed5973e0a8faeddc9da599fc897 ]
Extended Capability ID value 0 is special. It signifies the end of the
list. Stop reading Extended Capabilities if capability ID is 0.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20260106164416.67074-3-adrian.hunter@intel.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/i3c')
| -rw-r--r-- | drivers/i3c/master/mipi-i3c-hci/ext_caps.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/i3c/master/mipi-i3c-hci/ext_caps.c b/drivers/i3c/master/mipi-i3c-hci/ext_caps.c index 7714f00ea9cc..533a495e14c8 100644 --- a/drivers/i3c/master/mipi-i3c-hci/ext_caps.c +++ b/drivers/i3c/master/mipi-i3c-hci/ext_caps.c @@ -272,7 +272,7 @@ int i3c_hci_parse_ext_caps(struct i3c_hci *hci) cap_length = FIELD_GET(CAP_HEADER_LENGTH, cap_header); dev_dbg(&hci->master.dev, "id=0x%02x length=%d", cap_id, cap_length); - if (!cap_length) + if (!cap_id || !cap_length) break; if (curr_cap + cap_length * 4 >= end) { dev_err(&hci->master.dev, |
