From nobody Thu Apr 9 16:33:20 2026 Received: from mail-yx1-f49.google.com (mail-yx1-f49.google.com [74.125.224.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 97EF4233723 for ; Sat, 7 Mar 2026 03:33:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.224.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772854388; cv=none; b=YikYHxGJvS3E1lWZC26TkWavDwhVOiDHOtqLt1goHvpp0+aR9kaOD1BScgBwW4FVaXReFvIAykVIgf/2Ho5sAOFFUIN7w3oexCfkFaixvmNLLYOr0ldPs5ZAR3YPV47mDJM43xAWddR1F9JugXKGYXvC/Ee9EI5CsxCXgDw1WuM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772854388; c=relaxed/simple; bh=r4zM+APvW5thNHQl5DijzR3O4SMpqgbG3g+OQ9yoh5Q=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=Yu++oenO3hUDpa9NrOyOUvi5jn3KMFCriWj4KXbQGT+Ro2OPdUqQ8C9cOD1xFxodgFaVF0zmexI2pqMJrUZsfo5Hmo6uDa0Li4MwoCfYXliwx7HEQQXtKdffnmOuaOYOx042YMyrXl5UBrtBYsMwk+bGxa+LI/Dq45BTcNpQLqc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=H+Zjt99U; arc=none smtp.client-ip=74.125.224.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="H+Zjt99U" Received: by mail-yx1-f49.google.com with SMTP id 956f58d0204a3-64c9a6d7f81so8985672d50.3 for ; Fri, 06 Mar 2026 19:33:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1772854386; x=1773459186; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=/NIaTR733CEI10YxzEjaU+igMogbfaVYBZNgtGsYrGs=; b=H+Zjt99UXT2Sb6qTAoZ1JtKe9859cy1769TmiaokLT7Oj19YGwdtFmSvq4UnPvg7Nq fOLHDaBlLXq9gAecomUh+ijuFLVGTxiv5E9KPfkwttVlqWqRBGQoJmITUSopW5f6WRkQ CTjTcHQ1679VR0SxfqYvGEAfiIDAiwKn64HF4jz79qtpfawPJYx1ElxMz099bFwtXww+ cRhmnhINrLq+YWpk4rTrzQgIYi1Qet8QUY5LWNMdrZETfZiMRRbWDCDsuRpqgA6Fu5qN iRnI9QwuFHSKLYLbeJVGfgZKCH+z5WteHvNBu8zyzC2jYEYo6TLcPxq/SE8BnHEPqRWE gUkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772854386; x=1773459186; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=/NIaTR733CEI10YxzEjaU+igMogbfaVYBZNgtGsYrGs=; b=U5sJgNn5w2M/nRplAw/kMpOfNeX0oyVMuOUvNYxCxj0cZLeG6bRjHyKYTn+qu9qvTJ I+6ks5rfNSo47maoKwFmPYh11LJCSoHE3Lk/05ZGl27zkZPvcjD9pGOyKw2vd4YCyHvz hEcAaS2eoNg3+dOqPZOKu8NMkXOsKAv0B16otsbCC3UH3Ul9bHMYT2wxCw6u/AngeV2x xE0WHjWfXjlsPZYEggrR7GEHVitVMiKj3f61klDNUes3BUZ6Jj78L661CAlJdhbuKsOh VTtfq+3XBhDEI+1sDIrwUbAh75GjWHM8gLvoeKI+KriSV2WkrCx5/8Ioa1j/ZP+UDKWU y/ZQ== X-Forwarded-Encrypted: i=1; AJvYcCUDABvWaUWj1i5s37c0AyMhBaLzN5JvMY+kvgUPGkr8JlJC27qCNN8ekoWWeNERCeVPzW7OsM2jkTfH6a0=@vger.kernel.org X-Gm-Message-State: AOJu0YwWdCIaondUa50l4jluARcRVU7zDcz8wpP5c+CSHsn5Wo5t7o+I 0RABBNrYpna1f/o66F2Kt19SUHETwbDrifFYA8/U1yTAoMhGsKw2hw8e X-Gm-Gg: ATEYQzyby5zCp+CKagFdgm+fW2HW4Aaw91t0WU2cg6hKYFdf8jIALkf7PWGDyy5Huec BQGIBRjMlhCa4452TA/8I9gpYz9rp8dcR/cdIsx8gLRstp0mG27UHij3xfweIH74OOLfV5pV32X N/oKO0w2oG7XcrtIuyJg3Ik2Z83/7HfkW0C4MoqC9y83DgMyydCyd+sR6fnVPFcQq+KwLxoc0Ge hRidZIwxcrQHznuMubc7J5i8C5Ys8jbyhyWvEvW6+SNiowIPKbm2Bpl5NNE8hIhgq6GT2XXZ5m2 TVqT4qJP9qaot+I1w7peuOCKjXv/23O45edRrXzqneX/saYnnDfT9zKxhaXFOUhoZk7HkNGNRpg h7r1TZnpGDE4RWGzi4SoyxyGfCgXF0DrTzGIdT2Rx8VuZ8m6n5tnibExlNZvUg0iJjYKr4TdX2v 1u+bKzqTITcmrPzf8hWIzBVrOoLSUJ6Sy27CHIFmwFrOKNLEBFBFjwOD5pUZMhBP59GX8Jrlfl2 RJ7bTfVYFOUZ0mQsatpYLtl X-Received: by 2002:a05:690c:ed5:b0:798:578c:2ad7 with SMTP id 00721157ae682-798dd756781mr41072307b3.39.1772854386380; Fri, 06 Mar 2026 19:33:06 -0800 (PST) Received: from tux ([2601:7c0:c37c:4c00::5585]) by smtp.gmail.com with ESMTPSA id 00721157ae682-798dee4a70bsm15274827b3.32.2026.03.06.19.33.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Mar 2026 19:33:06 -0800 (PST) From: Ethan Tidmore To: Andrzej Hajda , Neil Armstrong , Robert Foss , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Cc: Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Luca Ceresoli , Marek Vasut , Joseph Guo , Ethan Tidmore , kernel test robot Subject: [PATCH] drm/bridge: waveshare-dsi: Fix signedness bug Date: Fri, 6 Mar 2026 21:32:45 -0600 Message-ID: <20260307033245.71666-1-ethantidmore06@gmail.com> X-Mailer: git-send-email 2.53.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The function drm_of_get_data_lanes_count_ep() returns negative error codes and dsi->lanes is an unsigned integer, so the check (dsi->lanes < 0) is always impossible. Make the return value of drm_of_get_data_lanes_count_ep() be assigned to ret, check for error, and then assign dsi->lanes to ret. Detected by Smatch: drivers/gpu/drm/bridge/waveshare-dsi.c:70 ws_bridge_attach_dsi() warn: unsigned 'dsi->lanes' is never less than zero. Reported-by: kernel test robot Closes: https://lore.kernel.org/oe-kbuild-all/202603060341.hNj0pl9L-lkp@int= el.com/ Fixes: fca11428425e9 ("drm/bridge: waveshare-dsi: Add support for 1..4 DSI = data lanes") Signed-off-by: Ethan Tidmore Reviewed-by: Luca Ceresoli Reviewed-by: Marek Vasut --- drivers/gpu/drm/bridge/waveshare-dsi.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/bridge/waveshare-dsi.c b/drivers/gpu/drm/bridg= e/waveshare-dsi.c index 0497c7ecbc7a..32d40414adb9 100644 --- a/drivers/gpu/drm/bridge/waveshare-dsi.c +++ b/drivers/gpu/drm/bridge/waveshare-dsi.c @@ -66,11 +66,13 @@ static int ws_bridge_attach_dsi(struct ws_bridge *ws) dsi->mode_flags =3D MIPI_DSI_MODE_VIDEO_HSE | MIPI_DSI_MODE_VIDEO | MIPI_DSI_CLOCK_NON_CONTINUOUS; dsi->format =3D MIPI_DSI_FMT_RGB888; - dsi->lanes =3D drm_of_get_data_lanes_count_ep(dev->of_node, 0, 0, 1, 4); - if (dsi->lanes < 0) { + ret =3D drm_of_get_data_lanes_count_ep(dev->of_node, 0, 0, 1, 4); + if (ret < 0) { dev_warn(dev, "Invalid or missing DSI lane count %d, falling back to 2 l= anes\n", - dsi->lanes); + ret); dsi->lanes =3D 2; /* Old DT backward compatibility */ + } else { + dsi->lanes =3D ret; } =20 ret =3D devm_mipi_dsi_attach(dev, dsi); --=20 2.53.0