[PATCH 2/4] drm/i915/bios: return proper error codes instead of magic -1

Jani Nikula jani.nikula at intel.com
Wed Apr 24 11:10:59 UTC 2024


Use proper negative error codes intead of magic -1. Don't set a bad
example, as -1 is -EPERM.

-1 might be fine for "invalid index" for a function that returns
indices, but e.g. opregion_get_panel_type() already returns negative
error codes so all the other code needs to cope with them anyway.

Signed-off-by: Jani Nikula <jani.nikula at intel.com>
---
 drivers/gpu/drm/i915/display/intel_bios.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c
index 661842a3c2e6..e1d9e6891ebb 100644
--- a/drivers/gpu/drm/i915/display/intel_bios.c
+++ b/drivers/gpu/drm/i915/display/intel_bios.c
@@ -631,13 +631,13 @@ static int vbt_get_panel_type(struct drm_i915_private *i915,
 
 	lvds_options = bdb_find_section(i915, BDB_LVDS_OPTIONS);
 	if (!lvds_options)
-		return -1;
+		return -ENOENT;
 
 	if (lvds_options->panel_type > 0xf &&
 	    lvds_options->panel_type != 0xff) {
 		drm_dbg_kms(&i915->drm, "Invalid VBT panel type 0x%x\n",
 			    lvds_options->panel_type);
-		return -1;
+		return -EINVAL;
 	}
 
 	if (devdata && devdata->child.handle == DEVICE_HANDLE_LFP2)
@@ -656,10 +656,10 @@ static int pnpid_get_panel_type(struct drm_i915_private *i915,
 	const struct bdb_lvds_lfp_data_ptrs *ptrs;
 	struct drm_edid_product_id product_id, product_id_nodate;
 	struct drm_printer p;
-	int i, best = -1;
+	int i, best = -ENOENT;
 
 	if (!drm_edid)
-		return -1;
+		return -EINVAL;
 
 	drm_edid_get_product_id(drm_edid, &product_id);
 
@@ -672,11 +672,11 @@ static int pnpid_get_panel_type(struct drm_i915_private *i915,
 
 	ptrs = bdb_find_section(i915, BDB_LVDS_LFP_DATA_PTRS);
 	if (!ptrs)
-		return -1;
+		return -ENOENT;
 
 	data = bdb_find_section(i915, BDB_LVDS_LFP_DATA);
 	if (!data)
-		return -1;
+		return -ENOENT;
 
 	for (i = 0; i < 16; i++) {
 		const struct drm_edid_product_id *vbt_id =
@@ -702,7 +702,7 @@ static int fallback_get_panel_type(struct drm_i915_private *i915,
 				   const struct intel_bios_encoder_data *devdata,
 				   const struct drm_edid *drm_edid, bool use_fallback)
 {
-	return use_fallback ? 0 : -1;
+	return use_fallback ? 0 : -ENOENT;
 }
 
 enum panel_type {
@@ -2568,12 +2568,12 @@ intel_bios_encoder_is_lspcon(const struct intel_bios_encoder_data *devdata)
 	return devdata && HAS_LSPCON(devdata->i915) && devdata->child.lspcon;
 }
 
-/* This is an index in the HDMI/DVI DDI buffer translation table, or -1 */
+/* This is an index in the HDMI/DVI DDI buffer translation table, or -ERANGE */
 int intel_bios_hdmi_level_shift(const struct intel_bios_encoder_data *devdata)
 {
 	if (!devdata || devdata->i915->display.vbt.version < 158 ||
 	    DISPLAY_VER(devdata->i915) >= 14)
-		return -1;
+		return -ERANGE;
 
 	return devdata->child.hdmi_level_shifter_value;
 }
-- 
2.39.2



More information about the Intel-gfx mailing list