Add some helpers under lib/string_helpers.h so they can be used
throughout the kernel. When I started doing this there were 2 other
previous attempts I know of, not counting the iterations each of them
had:
1) https://lore.kernel.org/all/[email protected]/
2) https://lore.kernel.org/all/[email protected]/#t
Now there is also the v1 of this same patch series:
https://lore.kernel.org/all/[email protected]/
Going through the comments I tried to find some common ground and
justification for what is in here, addressing some of the concerns
raised.
a. This version should be a drop-in replacement for what is currently in
the tree, with no change in behavior or binary size. For binary
size what I checked was that the linked objects in the end have the
same size (gcc 11). From comments in the previous attempts this seems
also the case for earlier compiler versions
b. I didn't change the function name to choice_* as suggested by Andrew
Morton in [email protected]
because other people argumented in favor of shorter names for these
simple helpers - if they are long and people simply not use due to
that, we failed. However as pointed out in v1 of this patchseries,
onoff(), yesno(), enabledisable(), enableddisabled() have some
issues: the last 2 are hard to read and for the first 2 it would not
be hard to have the symbol to clash with variable names.
From comments in v1, most people were in favor (or at least not
opposed) to using str_on_off(), str_yes_no(), str_enable_disable()
and str_enabled_disabled().
c. Use string_helper.h for these helpers - pulling string.h in the
compilations units was one of the concerns and I think re-using this
already existing header is better than creating a new string-choice.h
d. One alternative to all of this suggested by Christian König
([email protected]) would be to add a
printk format. But besides the comment, he also seemed to like
the common function. This brought the argument from others that the
simple yesno()/enabledisable() already used in the code (or new
renamed version) is easier to remember and use than e.g. %py[DOY]
Changes in v2:
- Use str_ prefix and separate other words with underscore: it's a
little bit longer, but should improve readability
- Patches we re-split due to the rename: first patch adds all the new
functions, then additional patches try to do one conversion at a
time. While doing so, there were some fixes for issues already
present along the way
- Style suggestions from v1 were adopted
In v1 it was suggested to apply this in drm-misc. I will leave this to
maintainers to decide: maybe it would be simpler to merge the first
patches on drm-intel-next, wait for the back merge and merge the rest
through drm-misc - my fear is a big conflict with other work going in
drm-intel-next since the bulk of the rename is there.
I tried to figure out acks and reviews from v1 and apply them to how the
patches are now split.
thanks
Lucas De Marchi
Lucas De Marchi (11):
lib/string_helpers: Consolidate string helpers implementation
drm/i915: Fix trailing semicolon
drm/i915: Use str_yes_no()
drm/i915: Use str_enable_disable()
drm/i915: Use str_enabled_disabled()
drm/i915: Use str_on_off()
drm/amd/display: Use str_yes_no()
drm/gem: Sort includes alphabetically
drm: Convert open-coded yes/no strings to yesno()
tomoyo: Use str_yes_no()
cxgb4: Use str_yes_no()
drivers/gpu/drm/amd/amdgpu/atom.c | 4 +-
.../amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 14 +-
drivers/gpu/drm/dp/drm_dp.c | 3 +-
drivers/gpu/drm/drm_client_modeset.c | 3 +-
drivers/gpu/drm/drm_gem.c | 23 +-
drivers/gpu/drm/i915/display/g4x_dp.c | 6 +-
.../gpu/drm/i915/display/intel_backlight.c | 3 +-
drivers/gpu/drm/i915/display/intel_ddi.c | 4 +-
drivers/gpu/drm/i915/display/intel_display.c | 46 ++--
.../drm/i915/display/intel_display_debugfs.c | 74 +++---
.../drm/i915/display/intel_display_power.c | 4 +-
.../drm/i915/display/intel_display_trace.h | 9 +-
drivers/gpu/drm/i915/display/intel_dp.c | 20 +-
drivers/gpu/drm/i915/display/intel_dpll.c | 3 +-
drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 7 +-
drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 7 +-
drivers/gpu/drm/i915/display/intel_fbc.c | 4 +-
drivers/gpu/drm/i915/display/intel_fdi.c | 8 +-
drivers/gpu/drm/i915/display/intel_hdmi.c | 3 +-
drivers/gpu/drm/i915/display/intel_sprite.c | 6 +-
drivers/gpu/drm/i915/display/vlv_dsi_pll.c | 3 +-
.../gpu/drm/i915/gem/selftests/huge_pages.c | 9 +-
.../drm/i915/gem/selftests/i915_gem_context.c | 7 +-
drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 3 +-
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 11 +-
.../drm/i915/gt/intel_execlists_submission.c | 7 +-
drivers/gpu/drm/i915/gt/intel_gt_pm.c | 3 +-
drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c | 52 ++--
drivers/gpu/drm/i915/gt/intel_rc6.c | 5 +-
drivers/gpu/drm/i915/gt/intel_reset.c | 3 +-
drivers/gpu/drm/i915/gt/intel_rps.c | 13 +-
drivers/gpu/drm/i915/gt/intel_sseu.c | 9 +-
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c | 10 +-
drivers/gpu/drm/i915/gt/selftest_timeline.c | 3 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 5 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 5 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c | 6 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 4 +-
drivers/gpu/drm/i915/gt/uc/intel_uc.c | 14 +-
drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c | 20 +-
drivers/gpu/drm/i915/i915_debugfs.c | 17 +-
drivers/gpu/drm/i915/i915_driver.c | 4 +-
drivers/gpu/drm/i915/i915_gpu_error.c | 9 +-
drivers/gpu/drm/i915/i915_params.c | 5 +-
drivers/gpu/drm/i915/i915_utils.h | 21 +-
drivers/gpu/drm/i915/intel_device_info.c | 8 +-
drivers/gpu/drm/i915/intel_dram.c | 10 +-
drivers/gpu/drm/i915/intel_pm.c | 14 +-
drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c | 4 +-
drivers/gpu/drm/i915/selftests/i915_active.c | 3 +-
drivers/gpu/drm/i915/vlv_suspend.c | 3 +-
drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c | 5 +-
drivers/gpu/drm/radeon/atom.c | 3 +-
drivers/gpu/drm/v3d/v3d_debugfs.c | 11 +-
drivers/gpu/drm/virtio/virtgpu_debugfs.c | 4 +-
.../ethernet/chelsio/cxgb4/cxgb4_debugfs.c | 249 ++++++++++--------
include/linux/string_helpers.h | 20 ++
security/tomoyo/audit.c | 2 +-
security/tomoyo/common.c | 19 +-
security/tomoyo/common.h | 1 -
60 files changed, 482 insertions(+), 373 deletions(-)
--
2.34.1
Remove the local enabledisable() implementation and adopt the
str_enable_disable() from linux/string_helpers.h.
Signed-off-by: Lucas De Marchi <[email protected]>
Acked-by: Daniel Vetter <[email protected]>
Acked-by: Jani Nikula <[email protected]>
---
drivers/gpu/drm/i915/display/intel_ddi.c | 4 +++-
drivers/gpu/drm/i915/display/intel_display_power.c | 4 +++-
drivers/gpu/drm/i915/display/intel_dp.c | 8 ++++----
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 3 ++-
drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c | 4 +++-
drivers/gpu/drm/i915/i915_utils.h | 5 -----
6 files changed, 15 insertions(+), 13 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
index 2f20abc5122d..4b35a8597632 100644
--- a/drivers/gpu/drm/i915/display/intel_ddi.c
+++ b/drivers/gpu/drm/i915/display/intel_ddi.c
@@ -25,6 +25,8 @@
*
*/
+#include <linux/string_helpers.h>
+
#include <drm/drm_privacy_screen_consumer.h>
#include <drm/drm_scdc_helper.h>
@@ -2152,7 +2154,7 @@ static void intel_dp_sink_set_msa_timing_par_ignore_state(struct intel_dp *intel
enable ? DP_MSA_TIMING_PAR_IGNORE_EN : 0) <= 0)
drm_dbg_kms(&i915->drm,
"Failed to %s MSA_TIMING_PAR_IGNORE in the sink\n",
- enabledisable(enable));
+ str_enable_disable(enable));
}
static void intel_dp_sink_set_fec_ready(struct intel_dp *intel_dp,
diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c b/drivers/gpu/drm/i915/display/intel_display_power.c
index 369317805d24..1f77cb9edddf 100644
--- a/drivers/gpu/drm/i915/display/intel_display_power.c
+++ b/drivers/gpu/drm/i915/display/intel_display_power.c
@@ -3,6 +3,8 @@
* Copyright © 2019 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include "i915_drv.h"
#include "i915_irq.h"
#include "intel_cdclk.h"
@@ -5302,7 +5304,7 @@ static void gen9_dbuf_slice_set(struct drm_i915_private *dev_priv,
state = intel_de_read(dev_priv, reg) & DBUF_POWER_STATE;
drm_WARN(&dev_priv->drm, enable != state,
"DBuf slice %d power %s timeout!\n",
- slice, enabledisable(enable));
+ slice, str_enable_disable(enable));
}
void gen9_dbuf_slices_update(struct drm_i915_private *dev_priv,
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 62c1535d696d..933fc316ea53 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -1987,7 +1987,7 @@ void intel_dp_sink_set_decompression_state(struct intel_dp *intel_dp,
if (ret < 0)
drm_dbg_kms(&i915->drm,
"Failed to %s sink decompression state\n",
- enabledisable(enable));
+ str_enable_disable(enable));
}
static void
@@ -2463,7 +2463,7 @@ void intel_dp_configure_protocol_converter(struct intel_dp *intel_dp,
if (drm_dp_dpcd_writeb(&intel_dp->aux,
DP_PROTOCOL_CONVERTER_CONTROL_0, tmp) != 1)
drm_dbg_kms(&i915->drm, "Failed to %s protocol converter HDMI mode\n",
- enabledisable(intel_dp->has_hdmi_sink));
+ str_enable_disable(intel_dp->has_hdmi_sink));
tmp = crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR444 &&
intel_dp->dfp.ycbcr_444_to_420 ? DP_CONVERSION_TO_YCBCR420_ENABLE : 0;
@@ -2472,7 +2472,7 @@ void intel_dp_configure_protocol_converter(struct intel_dp *intel_dp,
DP_PROTOCOL_CONVERTER_CONTROL_1, tmp) != 1)
drm_dbg_kms(&i915->drm,
"Failed to %s protocol converter YCbCr 4:2:0 conversion mode\n",
- enabledisable(intel_dp->dfp.ycbcr_444_to_420));
+ str_enable_disable(intel_dp->dfp.ycbcr_444_to_420));
tmp = 0;
if (intel_dp->dfp.rgb_to_ycbcr) {
@@ -2510,7 +2510,7 @@ void intel_dp_configure_protocol_converter(struct intel_dp *intel_dp,
if (drm_dp_pcon_convert_rgb_to_ycbcr(&intel_dp->aux, tmp) < 0)
drm_dbg_kms(&i915->drm,
"Failed to %s protocol converter RGB->YCbCr conversion mode\n",
- enabledisable(tmp));
+ str_enable_disable(tmp));
}
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
index de89d40abd38..31c3c3bceb95 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
@@ -6,6 +6,7 @@
#include <linux/circ_buf.h>
#include <linux/ktime.h>
#include <linux/time64.h>
+#include <linux/string_helpers.h>
#include <linux/timekeeping.h>
#include "i915_drv.h"
@@ -170,7 +171,7 @@ static int ct_control_enable(struct intel_guc_ct *ct, bool enable)
GUC_CTB_CONTROL_ENABLE : GUC_CTB_CONTROL_DISABLE);
if (unlikely(err))
CT_PROBE_ERROR(ct, "Failed to control/%s CTB (%pe)\n",
- enabledisable(enable), ERR_PTR(err));
+ str_enable_disable(enable), ERR_PTR(err));
return err;
}
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
index fc805d466d99..f8fc90ea71e7 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
@@ -3,6 +3,8 @@
* Copyright © 2021 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include "intel_guc_rc.h"
#include "gt/intel_gt.h"
#include "i915_drv.h"
@@ -59,7 +61,7 @@ static int __guc_rc_control(struct intel_guc *guc, bool enable)
ret = guc_action_control_gucrc(guc, enable);
if (ret) {
drm_err(drm, "Failed to %s GuC RC (%pe)\n",
- enabledisable(enable), ERR_PTR(ret));
+ str_enable_disable(enable), ERR_PTR(ret));
return ret;
}
diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h
index c62b64012369..06aac2be49ee 100644
--- a/drivers/gpu/drm/i915/i915_utils.h
+++ b/drivers/gpu/drm/i915/i915_utils.h
@@ -404,11 +404,6 @@ static inline const char *onoff(bool v)
return v ? "on" : "off";
}
-static inline const char *enabledisable(bool v)
-{
- return v ? "enable" : "disable";
-}
-
static inline const char *enableddisabled(bool v)
{
return v ? "enabled" : "disabled";
--
2.34.1
Remove the trailing semicolon, as correctly warned by checkpatch:
-:1189: WARNING:TRAILING_SEMICOLON: macros should not use a trailing semicolon
#1189: FILE: drivers/gpu/drm/i915/intel_device_info.c:119:
+#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->display.name));
Signed-off-by: Lucas De Marchi <[email protected]>
---
drivers/gpu/drm/i915/intel_device_info.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c
index 93b251b25aba..94da5aa37391 100644
--- a/drivers/gpu/drm/i915/intel_device_info.c
+++ b/drivers/gpu/drm/i915/intel_device_info.c
@@ -114,7 +114,7 @@ void intel_device_info_print_static(const struct intel_device_info *info,
DEV_INFO_FOR_EACH_FLAG(PRINT_FLAG);
#undef PRINT_FLAG
-#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->display.name));
+#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->display.name))
DEV_INFO_DISPLAY_FOR_EACH_FLAG(PRINT_FLAG);
#undef PRINT_FLAG
}
--
2.34.1
There are a few implementations of string helpers in the tree like yesno()
that just returns "yes" or "no" depending on a boolean argument. Those
are helpful to output strings to the user or log.
In order to consolidate them, prefix all of them str_ prefix to make it
clear what they are about and avoid symbol clashes.
Taking the commoon `val ? "yes" : "no"` implementation, quite a few
users of open coded yesno() could later be converted to the new
function:
$ git grep '?\s*"yes"\s*' | wc -l
286
$ git grep '?\s*"no"\s*' | wc -l
20
The inlined function should keep the const strings local to each
compilation unit, the same way it's now, thus not changing the current
behavior.
Signed-off-by: Lucas De Marchi <[email protected]>
Reviewed-by: Andy Shevchenko <[email protected]>
Acked-by: Jani Nikula <[email protected]>
Acked-by: Daniel Vetter <[email protected]>
---
include/linux/string_helpers.h | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/include/linux/string_helpers.h b/include/linux/string_helpers.h
index 7a22921c9db7..4d72258d42fd 100644
--- a/include/linux/string_helpers.h
+++ b/include/linux/string_helpers.h
@@ -106,4 +106,24 @@ void kfree_strarray(char **array, size_t n);
char **devm_kasprintf_strarray(struct device *dev, const char *prefix, size_t n);
+static inline const char *str_yes_no(bool v)
+{
+ return v ? "yes" : "no";
+}
+
+static inline const char *str_on_off(bool v)
+{
+ return v ? "on" : "off";
+}
+
+static inline const char *str_enable_disable(bool v)
+{
+ return v ? "enable" : "disable";
+}
+
+static inline const char *str_enabled_disabled(bool v)
+{
+ return v ? "enabled" : "disabled";
+}
+
#endif
--
2.34.1
Remove the local enableddisabled() implementation and adopt the
str_enabled_disabled() from linux/string_helpers.h.
Signed-off-by: Lucas De Marchi <[email protected]>
Acked-by: Daniel Vetter <[email protected]>
Acked-by: Jani Nikula <[email protected]>
---
drivers/gpu/drm/i915/display/intel_backlight.c | 3 ++-
drivers/gpu/drm/i915/display/intel_display.c | 16 ++++++++--------
.../gpu/drm/i915/display/intel_display_debugfs.c | 8 ++++----
drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 7 ++++---
drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 3 ++-
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 2 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 2 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 2 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c | 2 +-
drivers/gpu/drm/i915/gt/uc/intel_uc.c | 4 ++--
drivers/gpu/drm/i915/i915_debugfs.c | 2 +-
drivers/gpu/drm/i915/i915_driver.c | 4 +++-
drivers/gpu/drm/i915/i915_utils.h | 6 +-----
drivers/gpu/drm/i915/intel_pm.c | 4 ++--
14 files changed, 33 insertions(+), 32 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_backlight.c b/drivers/gpu/drm/i915/display/intel_backlight.c
index 98f7ea44042f..c8e1fc53a881 100644
--- a/drivers/gpu/drm/i915/display/intel_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_backlight.c
@@ -5,6 +5,7 @@
#include <linux/kernel.h>
#include <linux/pwm.h>
+#include <linux/string_helpers.h>
#include "intel_backlight.h"
#include "intel_connector.h"
@@ -1633,7 +1634,7 @@ int intel_backlight_setup(struct intel_connector *connector, enum pipe pipe)
drm_dbg_kms(&dev_priv->drm,
"Connector %s backlight initialized, %s, brightness %u/%u\n",
connector->base.name,
- enableddisabled(panel->backlight.enabled),
+ str_enabled_disabled(panel->backlight.enabled),
panel->backlight.level, panel->backlight.max);
return 0;
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index bd453861088e..8920bdb53b7b 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -3110,8 +3110,8 @@ static void intel_panel_sanitize_ssc(struct drm_i915_private *dev_priv)
if (dev_priv->vbt.lvds_use_ssc != bios_lvds_use_ssc) {
drm_dbg_kms(&dev_priv->drm,
"SSC %s by BIOS, overriding VBT which says %s\n",
- enableddisabled(bios_lvds_use_ssc),
- enableddisabled(dev_priv->vbt.lvds_use_ssc));
+ str_enabled_disabled(bios_lvds_use_ssc),
+ str_enabled_disabled(dev_priv->vbt.lvds_use_ssc));
dev_priv->vbt.lvds_use_ssc = bios_lvds_use_ssc;
}
}
@@ -5648,7 +5648,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
pipe_config->bigjoiner ? "master" : "no");
drm_dbg_kms(&dev_priv->drm, "splitter: %s, link count %d, overlap %d\n",
- enableddisabled(pipe_config->splitter.enable),
+ str_enabled_disabled(pipe_config->splitter.enable),
pipe_config->splitter.link_count,
pipe_config->splitter.pixel_overlap);
@@ -5736,7 +5736,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
drm_dbg_kms(&dev_priv->drm,
"pch pfit: " DRM_RECT_FMT ", %s, force thru: %s\n",
DRM_RECT_ARG(&pipe_config->pch_pfit.dst),
- enableddisabled(pipe_config->pch_pfit.enabled),
+ str_enabled_disabled(pipe_config->pch_pfit.enabled),
str_yes_no(pipe_config->pch_pfit.force_thru));
drm_dbg_kms(&dev_priv->drm, "ips: %i, double wide: %i\n",
@@ -10300,7 +10300,7 @@ static void readout_plane_state(struct drm_i915_private *dev_priv)
drm_dbg_kms(&dev_priv->drm,
"[PLANE:%d:%s] hw state readout: %s, pipe %c\n",
plane->base.base.id, plane->base.name,
- enableddisabled(visible), pipe_name(pipe));
+ str_enabled_disabled(visible), pipe_name(pipe));
}
for_each_intel_crtc(&dev_priv->drm, crtc) {
@@ -10346,7 +10346,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
drm_dbg_kms(&dev_priv->drm,
"[CRTC:%d:%s] hw state readout: %s\n",
crtc->base.base.id, crtc->base.name,
- enableddisabled(crtc_state->hw.active));
+ str_enabled_disabled(crtc_state->hw.active));
}
cdclk_state->active_pipes = dbuf_state->active_pipes = active_pipes;
@@ -10384,7 +10384,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
drm_dbg_kms(&dev_priv->drm,
"[ENCODER:%d:%s] hw state readout: %s, pipe %c\n",
encoder->base.base.id, encoder->base.name,
- enableddisabled(encoder->base.crtc),
+ str_enabled_disabled(encoder->base.crtc),
pipe_name(pipe));
}
@@ -10422,7 +10422,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
drm_dbg_kms(&dev_priv->drm,
"[CONNECTOR:%d:%s] hw state readout: %s\n",
connector->base.base.id, connector->base.name,
- enableddisabled(connector->base.encoder));
+ str_enabled_disabled(connector->base.encoder));
}
drm_connector_list_iter_end(&conn_iter);
diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
index a9ba998e0659..6bc820c3f00e 100644
--- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
+++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
@@ -93,7 +93,7 @@ static int i915_sr_status(struct seq_file *m, void *unused)
intel_display_power_put(dev_priv, POWER_DOMAIN_INIT, wakeref);
- seq_printf(m, "self-refresh: %s\n", enableddisabled(sr_enabled));
+ seq_printf(m, "self-refresh: %s\n", str_enabled_disabled(sr_enabled));
return 0;
}
@@ -296,7 +296,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
enabled = val & EDP_PSR_ENABLE;
}
seq_printf(m, "Source PSR ctl: %s [0x%08x]\n",
- enableddisabled(enabled), val);
+ str_enabled_disabled(enabled), val);
psr_source_status(intel_dp, m);
seq_printf(m, "Busy frontbuffer bits: 0x%08x\n",
psr->busy_frontbuffer_bits);
@@ -343,7 +343,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
}
seq_printf(m, "PSR2 selective fetch: %s\n",
- enableddisabled(psr->psr2_sel_fetch_enabled));
+ str_enabled_disabled(psr->psr2_sel_fetch_enabled));
}
unlock:
@@ -1268,7 +1268,7 @@ static int i915_lpsp_status(struct seq_file *m, void *unused)
return 0;
}
- seq_printf(m, "LPSP: %s\n", enableddisabled(lpsp_enabled));
+ seq_printf(m, "LPSP: %s\n", str_enabled_disabled(lpsp_enabled));
return 0;
}
diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
index da0bd056f3d3..5e1e2e7fe382 100644
--- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
+++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
@@ -30,6 +30,7 @@
#include <linux/pinctrl/consumer.h>
#include <linux/pinctrl/machine.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
#include <asm/unaligned.h>
@@ -684,9 +685,9 @@ void intel_dsi_log_params(struct intel_dsi *intel_dsi)
intel_dsi->burst_mode_ratio);
drm_dbg_kms(&i915->drm, "Reset timer %d\n", intel_dsi->rst_timer_val);
drm_dbg_kms(&i915->drm, "Eot %s\n",
- enableddisabled(intel_dsi->eotp_pkt));
+ str_enabled_disabled(intel_dsi->eotp_pkt));
drm_dbg_kms(&i915->drm, "Clockstop %s\n",
- enableddisabled(!intel_dsi->clock_stop));
+ str_enabled_disabled(!intel_dsi->clock_stop));
drm_dbg_kms(&i915->drm, "Mode %s\n",
intel_dsi->operation_mode ? "command" : "video");
if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK)
@@ -713,7 +714,7 @@ void intel_dsi_log_params(struct intel_dsi *intel_dsi)
drm_dbg_kms(&i915->drm, "HS to LP Clock Count 0x%x\n",
intel_dsi->clk_hs_to_lp_count);
drm_dbg_kms(&i915->drm, "BTA %s\n",
- enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
+ str_enabled_disabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
}
bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
diff --git a/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c b/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
index 209cf265bf74..9dc9dccf7b09 100644
--- a/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
+++ b/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
@@ -4,6 +4,7 @@
*/
#include <linux/kthread.h>
+#include <linux/string_helpers.h>
#include <trace/events/dma_fence.h>
#include <uapi/linux/sched/types.h>
@@ -512,7 +513,7 @@ void intel_engine_print_breadcrumbs(struct intel_engine_cs *engine,
if (!b)
return;
- drm_printf(p, "IRQ: %s\n", enableddisabled(b->irq_armed));
+ drm_printf(p, "IRQ: %s\n", str_enabled_disabled(b->irq_armed));
if (!list_empty(&b->signalers))
print_signals(b, p);
}
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
index 07de0fb56f51..6f4a39a3b44f 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
@@ -1642,7 +1642,7 @@ static void intel_engine_print_registers(struct intel_engine_cs *engine,
drm_printf(m, "\tExeclist tasklet queued? %s (%s), preempt? %s, timeslice? %s\n",
str_yes_no(test_bit(TASKLET_STATE_SCHED, &engine->sched_engine->tasklet.state)),
- enableddisabled(!atomic_read(&engine->sched_engine->tasklet.count)),
+ str_enabled_disabled(!atomic_read(&engine->sched_engine->tasklet.count)),
repr_timer(&engine->execlists.preempt),
repr_timer(&engine->execlists.timer));
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
index 31c3c3bceb95..0cfb29440c47 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
@@ -1203,7 +1203,7 @@ void intel_guc_ct_event_handler(struct intel_guc_ct *ct)
void intel_guc_ct_print_info(struct intel_guc_ct *ct,
struct drm_printer *p)
{
- drm_printf(p, "CT %s\n", enableddisabled(ct->enabled));
+ drm_printf(p, "CT %s\n", str_enabled_disabled(ct->enabled));
if (!ct->enabled)
return;
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
index 8a99c2e624c2..a24dc6441872 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
@@ -477,7 +477,7 @@ int intel_guc_log_create(struct intel_guc_log *log)
log->level = __get_default_log_level(log);
DRM_DEBUG_DRIVER("guc_log_level=%d (%s, verbose:%s, verbosity:%d)\n",
- log->level, enableddisabled(log->level),
+ log->level, str_enabled_disabled(log->level),
str_yes_no(GUC_LOG_LEVEL_IS_VERBOSE(log->level)),
GUC_LOG_LEVEL_TO_VERBOSITY(log->level));
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
index f8fc90ea71e7..e00661fb0853 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
@@ -66,7 +66,7 @@ static int __guc_rc_control(struct intel_guc *guc, bool enable)
}
drm_info(>->i915->drm, "GuC RC: %s\n",
- enableddisabled(enable));
+ str_enabled_disabled(enable));
return 0;
}
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
index 8e756d4c2c16..8c9ef690ac9d 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
@@ -524,9 +524,9 @@ static int __uc_init_hw(struct intel_uc *uc)
}
drm_info(&i915->drm, "GuC submission %s\n",
- enableddisabled(intel_uc_uses_guc_submission(uc)));
+ str_enabled_disabled(intel_uc_uses_guc_submission(uc)));
drm_info(&i915->drm, "GuC SLPC %s\n",
- enableddisabled(intel_uc_uses_guc_slpc(uc)));
+ str_enabled_disabled(intel_uc_uses_guc_slpc(uc)));
return 0;
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
index 8e70c404bcc5..b98ea01af075 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -478,7 +478,7 @@ static int i915_runtime_pm_status(struct seq_file *m, void *unused)
seq_puts(m, "Runtime power management not supported\n");
seq_printf(m, "Runtime power status: %s\n",
- enableddisabled(!dev_priv->power_domains.init_wakeref));
+ str_enabled_disabled(!dev_priv->power_domains.init_wakeref));
seq_printf(m, "GPU idle: %s\n", str_yes_no(!to_gt(dev_priv)->awake));
seq_printf(m, "IRQs disabled: %s\n",
diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c
index 3d41f532a5d6..e89afce4c576 100644
--- a/drivers/gpu/drm/i915/i915_driver.c
+++ b/drivers/gpu/drm/i915/i915_driver.c
@@ -36,6 +36,7 @@
#include <linux/pm_runtime.h>
#include <linux/pnp.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
#include <linux/vga_switcheroo.h>
#include <linux/vt.h>
@@ -749,7 +750,8 @@ static void i915_driver_unregister(struct drm_i915_private *dev_priv)
void
i915_print_iommu_status(struct drm_i915_private *i915, struct drm_printer *p)
{
- drm_printf(p, "iommu: %s\n", enableddisabled(intel_vtd_active(i915)));
+ drm_printf(p, "iommu: %s\n",
+ str_enabled_disabled(intel_vtd_active(i915)));
}
static void i915_welcome_messages(struct drm_i915_private *dev_priv)
diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h
index 06aac2be49ee..6d26920d0632 100644
--- a/drivers/gpu/drm/i915/i915_utils.h
+++ b/drivers/gpu/drm/i915/i915_utils.h
@@ -28,6 +28,7 @@
#include <linux/list.h>
#include <linux/overflow.h>
#include <linux/sched.h>
+#include <linux/string_helpers.h>
#include <linux/types.h>
#include <linux/workqueue.h>
#include <linux/sched/clock.h>
@@ -404,11 +405,6 @@ static inline const char *onoff(bool v)
return v ? "on" : "off";
}
-static inline const char *enableddisabled(bool v)
-{
- return v ? "enabled" : "disabled";
-}
-
void add_taint_for_CI(struct drm_i915_private *i915, unsigned int taint);
static inline void __add_taint_for_CI(unsigned int taint)
{
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index c538a66687bd..69f442200784 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -413,8 +413,8 @@ static bool _intel_set_memory_cxsr(struct drm_i915_private *dev_priv, bool enabl
trace_intel_memory_cxsr(dev_priv, was_enabled, enable);
drm_dbg_kms(&dev_priv->drm, "memory self-refresh is %s (was %s)\n",
- enableddisabled(enable),
- enableddisabled(was_enabled));
+ str_enabled_disabled(enable),
+ str_enabled_disabled(was_enabled));
return was_enabled;
}
--
2.34.1
Remove the local yesno() implementation and adopt the str_yes_no() from
linux/string_helpers.h.
Signed-off-by: Lucas De Marchi <[email protected]>
Acked-by: Daniel Vetter <[email protected]>
Acked-by: Jani Nikula <[email protected]>
---
drivers/gpu/drm/i915/display/intel_display.c | 23 +++----
.../drm/i915/display/intel_display_debugfs.c | 66 +++++++++++--------
.../drm/i915/display/intel_display_trace.h | 6 +-
drivers/gpu/drm/i915/display/intel_dp.c | 12 ++--
drivers/gpu/drm/i915/display/intel_fbc.c | 4 +-
drivers/gpu/drm/i915/display/intel_hdmi.c | 3 +-
drivers/gpu/drm/i915/display/intel_sprite.c | 6 +-
.../gpu/drm/i915/gem/selftests/huge_pages.c | 9 +--
.../drm/i915/gem/selftests/i915_gem_context.c | 7 +-
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 9 +--
.../drm/i915/gt/intel_execlists_submission.c | 7 +-
drivers/gpu/drm/i915/gt/intel_gt_pm.c | 3 +-
drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c | 52 ++++++++-------
drivers/gpu/drm/i915/gt/intel_reset.c | 3 +-
drivers/gpu/drm/i915/gt/intel_rps.c | 13 ++--
drivers/gpu/drm/i915/gt/intel_sseu.c | 9 ++-
drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c | 10 +--
drivers/gpu/drm/i915/gt/selftest_timeline.c | 3 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 3 +-
drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 4 +-
drivers/gpu/drm/i915/gt/uc/intel_uc.c | 10 +--
drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c | 20 +++---
drivers/gpu/drm/i915/i915_debugfs.c | 15 +++--
drivers/gpu/drm/i915/i915_gpu_error.c | 9 +--
drivers/gpu/drm/i915/i915_params.c | 5 +-
drivers/gpu/drm/i915/i915_utils.h | 5 --
drivers/gpu/drm/i915/intel_device_info.c | 8 ++-
drivers/gpu/drm/i915/intel_dram.c | 10 +--
drivers/gpu/drm/i915/intel_pm.c | 10 +--
drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c | 4 +-
drivers/gpu/drm/i915/selftests/i915_active.c | 3 +-
31 files changed, 203 insertions(+), 148 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 80bc52425e47..bd453861088e 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -32,6 +32,7 @@
#include <linux/module.h>
#include <linux/dma-resv.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
#include <linux/vga_switcheroo.h>
#include <drm/drm_atomic.h>
@@ -3008,7 +3009,7 @@ static int intel_crtc_compute_config(struct intel_crtc *crtc,
drm_dbg_kms(&dev_priv->drm,
"requested pixel clock (%d kHz) too high (max: %d kHz, double wide: %s)\n",
pipe_mode->crtc_clock, clock_limit,
- yesno(pipe_config->double_wide));
+ str_yes_no(pipe_config->double_wide));
return -EINVAL;
}
@@ -5586,7 +5587,7 @@ static void intel_dump_plane_state(const struct intel_plane_state *plane_state)
drm_dbg_kms(&i915->drm,
"[PLANE:%d:%s] fb: [NOFB], visible: %s\n",
plane->base.base.id, plane->base.name,
- yesno(plane_state->uapi.visible));
+ str_yes_no(plane_state->uapi.visible));
return;
}
@@ -5594,7 +5595,7 @@ static void intel_dump_plane_state(const struct intel_plane_state *plane_state)
"[PLANE:%d:%s] fb: [FB:%d] %ux%u format = %p4cc modifier = 0x%llx, visible: %s\n",
plane->base.base.id, plane->base.name,
fb->base.id, fb->width, fb->height, &fb->format->format,
- fb->modifier, yesno(plane_state->uapi.visible));
+ fb->modifier, str_yes_no(plane_state->uapi.visible));
drm_dbg_kms(&i915->drm, "\trotation: 0x%x, scaler: %d\n",
plane_state->hw.rotation, plane_state->scaler_id);
if (plane_state->uapi.visible)
@@ -5617,7 +5618,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
drm_dbg_kms(&dev_priv->drm, "[CRTC:%d:%s] enable: %s %s\n",
crtc->base.base.id, crtc->base.name,
- yesno(pipe_config->hw.enable), context);
+ str_yes_no(pipe_config->hw.enable), context);
if (!pipe_config->hw.enable)
goto dump_planes;
@@ -5625,7 +5626,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
snprintf_output_types(buf, sizeof(buf), pipe_config->output_types);
drm_dbg_kms(&dev_priv->drm,
"active: %s, output_types: %s (0x%x), output format: %s\n",
- yesno(pipe_config->hw.active),
+ str_yes_no(pipe_config->hw.active),
buf, pipe_config->output_types,
output_formats(pipe_config->output_format));
@@ -5694,7 +5695,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
intel_dump_dp_vsc_sdp(dev_priv, &pipe_config->infoframes.vsc);
drm_dbg_kms(&dev_priv->drm, "vrr: %s, vmin: %d, vmax: %d, pipeline full: %d, guardband: %d flipline: %d, vmin vblank: %d, vmax vblank: %d\n",
- yesno(pipe_config->vrr.enable),
+ str_yes_no(pipe_config->vrr.enable),
pipe_config->vrr.vmin, pipe_config->vrr.vmax,
pipe_config->vrr.pipeline_full, pipe_config->vrr.guardband,
pipe_config->vrr.flipline,
@@ -5736,7 +5737,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
"pch pfit: " DRM_RECT_FMT ", %s, force thru: %s\n",
DRM_RECT_ARG(&pipe_config->pch_pfit.dst),
enableddisabled(pipe_config->pch_pfit.enabled),
- yesno(pipe_config->pch_pfit.force_thru));
+ str_yes_no(pipe_config->pch_pfit.force_thru));
drm_dbg_kms(&dev_priv->drm, "ips: %i, double wide: %i\n",
pipe_config->ips_enabled, pipe_config->double_wide);
@@ -6351,8 +6352,8 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
if (current_config->name != pipe_config->name) { \
pipe_config_mismatch(fastset, crtc, __stringify(name), \
"(expected %s, found %s)", \
- yesno(current_config->name), \
- yesno(pipe_config->name)); \
+ str_yes_no(current_config->name), \
+ str_yes_no(pipe_config->name)); \
ret = false; \
} \
} while (0)
@@ -6368,8 +6369,8 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
} else { \
pipe_config_mismatch(fastset, crtc, __stringify(name), \
"unable to verify whether state matches exactly, forcing modeset (expected %s, found %s)", \
- yesno(current_config->name), \
- yesno(pipe_config->name)); \
+ str_yes_no(current_config->name), \
+ str_yes_no(pipe_config->name)); \
ret = false; \
} \
} while (0)
diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
index f4de004d470f..a9ba998e0659 100644
--- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
+++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
@@ -3,6 +3,8 @@
* Copyright © 2020 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include <drm/drm_debugfs.h>
#include <drm/drm_fourcc.h>
@@ -51,7 +53,7 @@ static int i915_ips_status(struct seq_file *m, void *unused)
wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
seq_printf(m, "Enabled by kernel parameter: %s\n",
- yesno(dev_priv->params.enable_ips));
+ str_yes_no(dev_priv->params.enable_ips));
if (DISPLAY_VER(dev_priv) >= 8) {
seq_puts(m, "Currently: unknown\n");
@@ -260,7 +262,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
bool enabled;
u32 val;
- seq_printf(m, "Sink support: %s", yesno(psr->sink_support));
+ seq_printf(m, "Sink support: %s", str_yes_no(psr->sink_support));
if (psr->sink_support)
seq_printf(m, " [0x%02x]", intel_dp->psr_dpcd[0]);
seq_puts(m, "\n");
@@ -279,7 +281,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
if (!psr->enabled) {
seq_printf(m, "PSR sink not reliable: %s\n",
- yesno(psr->sink_not_reliable));
+ str_yes_no(psr->sink_not_reliable));
goto unlock;
}
@@ -446,13 +448,17 @@ static int i915_dmc_info(struct seq_file *m, void *unused)
wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
- seq_printf(m, "fw loaded: %s\n", yesno(intel_dmc_has_payload(dev_priv)));
+ seq_printf(m, "fw loaded: %s\n",
+ str_yes_no(intel_dmc_has_payload(dev_priv)));
seq_printf(m, "path: %s\n", dmc->fw_path);
seq_printf(m, "Pipe A fw support: %s\n",
- yesno(GRAPHICS_VER(dev_priv) >= 12));
- seq_printf(m, "Pipe A fw loaded: %s\n", yesno(dmc->dmc_info[DMC_FW_PIPEA].payload));
- seq_printf(m, "Pipe B fw support: %s\n", yesno(IS_ALDERLAKE_P(dev_priv)));
- seq_printf(m, "Pipe B fw loaded: %s\n", yesno(dmc->dmc_info[DMC_FW_PIPEB].payload));
+ str_yes_no(GRAPHICS_VER(dev_priv) >= 12));
+ seq_printf(m, "Pipe A fw loaded: %s\n",
+ str_yes_no(dmc->dmc_info[DMC_FW_PIPEA].payload));
+ seq_printf(m, "Pipe B fw support: %s\n",
+ str_yes_no(IS_ALDERLAKE_P(dev_priv)));
+ seq_printf(m, "Pipe B fw loaded: %s\n",
+ str_yes_no(dmc->dmc_info[DMC_FW_PIPEB].payload));
if (!intel_dmc_has_payload(dev_priv))
goto out;
@@ -577,7 +583,8 @@ static void intel_dp_info(struct seq_file *m,
const struct drm_property_blob *edid = intel_connector->base.edid_blob_ptr;
seq_printf(m, "\tDPCD rev: %x\n", intel_dp->dpcd[DP_DPCD_REV]);
- seq_printf(m, "\taudio support: %s\n", yesno(intel_dp->has_audio));
+ seq_printf(m, "\taudio support: %s\n",
+ str_yes_no(intel_dp->has_audio));
if (intel_connector->base.connector_type == DRM_MODE_CONNECTOR_eDP)
intel_panel_info(m, &intel_connector->panel);
@@ -590,7 +597,7 @@ static void intel_dp_mst_info(struct seq_file *m,
{
bool has_audio = intel_connector->port->has_audio;
- seq_printf(m, "\taudio support: %s\n", yesno(has_audio));
+ seq_printf(m, "\taudio support: %s\n", str_yes_no(has_audio));
}
static void intel_hdmi_info(struct seq_file *m,
@@ -599,7 +606,8 @@ static void intel_hdmi_info(struct seq_file *m,
struct intel_encoder *intel_encoder = intel_attached_encoder(intel_connector);
struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(intel_encoder);
- seq_printf(m, "\taudio support: %s\n", yesno(intel_hdmi->has_audio));
+ seq_printf(m, "\taudio support: %s\n",
+ str_yes_no(intel_hdmi->has_audio));
}
static void intel_lvds_info(struct seq_file *m,
@@ -757,7 +765,7 @@ static void intel_plane_hw_info(struct seq_file *m, struct intel_plane *plane)
DRM_RECT_FP_FMT ", dst=" DRM_RECT_FMT ", rotation=%s\n",
fb->base.id, &fb->format->format,
fb->modifier, fb->width, fb->height,
- yesno(plane_state->uapi.visible),
+ str_yes_no(plane_state->uapi.visible),
DRM_RECT_FP_ARG(&plane_state->uapi.src),
DRM_RECT_ARG(&plane_state->uapi.dst),
rot_str);
@@ -796,7 +804,7 @@ static void intel_scaler_info(struct seq_file *m, struct intel_crtc *crtc)
&crtc_state->scaler_state.scalers[i];
seq_printf(m, ", scalers[%d]: use=%s, mode=%x",
- i, yesno(sc->in_use), sc->mode);
+ i, str_yes_no(sc->in_use), sc->mode);
}
seq_puts(m, "\n");
} else {
@@ -919,18 +927,19 @@ static void intel_crtc_info(struct seq_file *m, struct intel_crtc *crtc)
crtc->base.base.id, crtc->base.name);
seq_printf(m, "\tuapi: enable=%s, active=%s, mode=" DRM_MODE_FMT "\n",
- yesno(crtc_state->uapi.enable),
- yesno(crtc_state->uapi.active),
+ str_yes_no(crtc_state->uapi.enable),
+ str_yes_no(crtc_state->uapi.active),
DRM_MODE_ARG(&crtc_state->uapi.mode));
if (crtc_state->hw.enable) {
seq_printf(m, "\thw: active=%s, adjusted_mode=" DRM_MODE_FMT "\n",
- yesno(crtc_state->hw.active),
+ str_yes_no(crtc_state->hw.active),
DRM_MODE_ARG(&crtc_state->hw.adjusted_mode));
seq_printf(m, "\tpipe src size=%dx%d, dither=%s, bpp=%d\n",
crtc_state->pipe_src_w, crtc_state->pipe_src_h,
- yesno(crtc_state->dither), crtc_state->pipe_bpp);
+ str_yes_no(crtc_state->dither),
+ crtc_state->pipe_bpp);
intel_scaler_info(m, crtc);
}
@@ -948,8 +957,8 @@ static void intel_crtc_info(struct seq_file *m, struct intel_crtc *crtc)
intel_plane_info(m, crtc);
seq_printf(m, "\tunderrun reporting: cpu=%s pch=%s\n",
- yesno(!crtc->cpu_fifo_underrun_disabled),
- yesno(!crtc->pch_fifo_underrun_disabled));
+ str_yes_no(!crtc->cpu_fifo_underrun_disabled),
+ str_yes_no(!crtc->pch_fifo_underrun_disabled));
crtc_updates_info(m, crtc, "\t");
}
@@ -1005,7 +1014,8 @@ static int i915_shared_dplls_info(struct seq_file *m, void *unused)
seq_printf(m, "DPLL%i: %s, id: %i\n", i, pll->info->name,
pll->info->id);
seq_printf(m, " pipe_mask: 0x%x, active: 0x%x, on: %s\n",
- pll->state.pipe_mask, pll->active_mask, yesno(pll->on));
+ pll->state.pipe_mask, pll->active_mask,
+ str_yes_no(pll->on));
seq_printf(m, " tracked hardware state:\n");
seq_printf(m, " dpll: 0x%08x\n", pll->state.hw_state.dpll);
seq_printf(m, " dpll_md: 0x%08x\n",
@@ -1046,7 +1056,7 @@ static int i915_ipc_status_show(struct seq_file *m, void *data)
struct drm_i915_private *dev_priv = m->private;
seq_printf(m, "Isochronous Priority Control: %s\n",
- yesno(dev_priv->ipc_enabled));
+ str_yes_no(dev_priv->ipc_enabled));
return 0;
}
@@ -1155,7 +1165,7 @@ static void drrs_status_per_crtc(struct seq_file *m,
drrs->type == SEAMLESS_DRRS_SUPPORT)
supported = true;
- seq_printf(m, "\tDRRS Supported: %s\n", yesno(supported));
+ seq_printf(m, "\tDRRS Supported: %s\n", str_yes_no(supported));
}
drm_connector_list_iter_end(&conn_iter);
@@ -1739,7 +1749,7 @@ static int i915_hpd_storm_ctl_show(struct seq_file *m, void *data)
seq_printf(m, "Threshold: %d\n", hotplug->hpd_storm_threshold);
seq_printf(m, "Detected: %s\n",
- yesno(delayed_work_pending(&hotplug->reenable_work)));
+ str_yes_no(delayed_work_pending(&hotplug->reenable_work)));
return 0;
}
@@ -1813,7 +1823,7 @@ static int i915_hpd_short_storm_ctl_show(struct seq_file *m, void *data)
struct drm_i915_private *dev_priv = m->private;
seq_printf(m, "Enabled: %s\n",
- yesno(dev_priv->hotplug.hpd_short_storm_enabled));
+ str_yes_no(dev_priv->hotplug.hpd_short_storm_enabled));
return 0;
}
@@ -2208,14 +2218,14 @@ static int i915_dsc_fec_support_show(struct seq_file *m, void *data)
intel_dp = intel_attached_dp(to_intel_connector(connector));
crtc_state = to_intel_crtc_state(crtc->state);
seq_printf(m, "DSC_Enabled: %s\n",
- yesno(crtc_state->dsc.compression_enable));
+ str_yes_no(crtc_state->dsc.compression_enable));
seq_printf(m, "DSC_Sink_Support: %s\n",
- yesno(drm_dp_sink_supports_dsc(intel_dp->dsc_dpcd)));
+ str_yes_no(drm_dp_sink_supports_dsc(intel_dp->dsc_dpcd)));
seq_printf(m, "Force_DSC_Enable: %s\n",
- yesno(intel_dp->force_dsc_en));
+ str_yes_no(intel_dp->force_dsc_en));
if (!intel_dp_is_edp(intel_dp))
seq_printf(m, "FEC_Sink_Support: %s\n",
- yesno(drm_dp_sink_supports_fec(intel_dp->fec_capable)));
+ str_yes_no(drm_dp_sink_supports_fec(intel_dp->fec_capable)));
} while (try_again);
drm_modeset_drop_locks(&ctx);
diff --git a/drivers/gpu/drm/i915/display/intel_display_trace.h b/drivers/gpu/drm/i915/display/intel_display_trace.h
index f05f0f9b5103..dcdd242fffd9 100644
--- a/drivers/gpu/drm/i915/display/intel_display_trace.h
+++ b/drivers/gpu/drm/i915/display/intel_display_trace.h
@@ -210,9 +210,9 @@ TRACE_EVENT(g4x_wm,
TP_printk("pipe %c, frame=%u, scanline=%u, wm %d/%d/%d, sr %s/%d/%d/%d, hpll %s/%d/%d/%d, fbc %s",
pipe_name(__entry->pipe), __entry->frame, __entry->scanline,
__entry->primary, __entry->sprite, __entry->cursor,
- yesno(__entry->cxsr), __entry->sr_plane, __entry->sr_cursor, __entry->sr_fbc,
- yesno(__entry->hpll), __entry->hpll_plane, __entry->hpll_cursor, __entry->hpll_fbc,
- yesno(__entry->fbc))
+ str_yes_no(__entry->cxsr), __entry->sr_plane, __entry->sr_cursor, __entry->sr_fbc,
+ str_yes_no(__entry->hpll), __entry->hpll_plane, __entry->hpll_cursor, __entry->hpll_fbc,
+ str_yes_no(__entry->fbc))
);
TRACE_EVENT(vlv_wm,
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
index 4d4579a301f6..62c1535d696d 100644
--- a/drivers/gpu/drm/i915/display/intel_dp.c
+++ b/drivers/gpu/drm/i915/display/intel_dp.c
@@ -29,6 +29,7 @@
#include <linux/i2c.h>
#include <linux/notifier.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
#include <linux/timekeeping.h>
#include <linux/types.h>
@@ -2797,8 +2798,9 @@ intel_dp_configure_mst(struct intel_dp *intel_dp)
drm_dbg_kms(&i915->drm,
"[ENCODER:%d:%s] MST support: port: %s, sink: %s, modparam: %s\n",
encoder->base.base.id, encoder->base.name,
- yesno(intel_dp_mst_source_support(intel_dp)), yesno(sink_can_mst),
- yesno(i915->params.enable_dp_mst));
+ str_yes_no(intel_dp_mst_source_support(intel_dp)),
+ str_yes_no(sink_can_mst),
+ str_yes_no(i915->params.enable_dp_mst));
if (!intel_dp_mst_source_support(intel_dp))
return;
@@ -4366,9 +4368,9 @@ intel_dp_update_420(struct intel_dp *intel_dp)
drm_dbg_kms(&i915->drm,
"[CONNECTOR:%d:%s] RGB->YcbCr conversion? %s, YCbCr 4:2:0 allowed? %s, YCbCr 4:4:4->4:2:0 conversion? %s\n",
connector->base.base.id, connector->base.name,
- yesno(intel_dp->dfp.rgb_to_ycbcr),
- yesno(connector->base.ycbcr_420_allowed),
- yesno(intel_dp->dfp.ycbcr_444_to_420));
+ str_yes_no(intel_dp->dfp.rgb_to_ycbcr),
+ str_yes_no(connector->base.ycbcr_420_allowed),
+ str_yes_no(intel_dp->dfp.ycbcr_444_to_420));
}
static void
diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c
index bcdffe62f3cb..f3d7d8dde7ed 100644
--- a/drivers/gpu/drm/i915/display/intel_fbc.c
+++ b/drivers/gpu/drm/i915/display/intel_fbc.c
@@ -38,6 +38,8 @@
* forcibly disable it to allow proper screen updates.
*/
+#include <linux/string_helpers.h>
+
#include <drm/drm_fourcc.h>
#include "i915_drv.h"
@@ -1742,7 +1744,7 @@ static int intel_fbc_debugfs_status_show(struct seq_file *m, void *unused)
if (fbc->active) {
seq_puts(m, "FBC enabled\n");
seq_printf(m, "Compressing: %s\n",
- yesno(intel_fbc_is_compressing(fbc)));
+ str_yes_no(intel_fbc_is_compressing(fbc)));
} else {
seq_printf(m, "FBC disabled: %s\n", fbc->no_fbc_reason);
}
diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
index 6c72f8587240..02ead400069f 100644
--- a/drivers/gpu/drm/i915/display/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
@@ -30,6 +30,7 @@
#include <linux/hdmi.h>
#include <linux/i2c.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_crtc.h>
@@ -2623,7 +2624,7 @@ bool intel_hdmi_handle_sink_scrambling(struct intel_encoder *encoder,
drm_dbg_kms(&dev_priv->drm,
"[CONNECTOR:%d:%s] scrambling=%s, TMDS bit clock ratio=1/%d\n",
connector->base.id, connector->name,
- yesno(scrambling), high_tmds_clock_ratio ? 40 : 10);
+ str_yes_no(scrambling), high_tmds_clock_ratio ? 40 : 10);
/* Set TMDS bit clock ratio to 1/40 or 1/10, and enable/disable scrambling */
return drm_scdc_set_high_tmds_clock_ratio(adapter,
diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c b/drivers/gpu/drm/i915/display/intel_sprite.c
index 2d71294aaceb..ad999075c233 100644
--- a/drivers/gpu/drm/i915/display/intel_sprite.c
+++ b/drivers/gpu/drm/i915/display/intel_sprite.c
@@ -30,6 +30,8 @@
* support.
*/
+#include <linux/string_helpers.h>
+
#include <drm/drm_atomic.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_color_mgmt.h>
@@ -96,13 +98,13 @@ int intel_plane_check_src_coordinates(struct intel_plane_state *plane_state)
if (src_x % hsub || src_w % hsub) {
drm_dbg_kms(&i915->drm, "src x/w (%u, %u) must be a multiple of %u (rotated: %s)\n",
- src_x, src_w, hsub, yesno(rotated));
+ src_x, src_w, hsub, str_yes_no(rotated));
return -EINVAL;
}
if (src_y % vsub || src_h % vsub) {
drm_dbg_kms(&i915->drm, "src y/h (%u, %u) must be a multiple of %u (rotated: %s)\n",
- src_y, src_h, vsub, yesno(rotated));
+ src_y, src_h, vsub, str_yes_no(rotated));
return -EINVAL;
}
diff --git a/drivers/gpu/drm/i915/gem/selftests/huge_pages.c b/drivers/gpu/drm/i915/gem/selftests/huge_pages.c
index f36191ebf964..c8d816a1cd86 100644
--- a/drivers/gpu/drm/i915/gem/selftests/huge_pages.c
+++ b/drivers/gpu/drm/i915/gem/selftests/huge_pages.c
@@ -5,6 +5,7 @@
*/
#include <linux/prime_numbers.h>
+#include <linux/string_helpers.h>
#include "i915_selftest.h"
@@ -803,7 +804,7 @@ static int igt_mock_ppgtt_huge_fill(void *arg)
if (vma->resource->page_sizes_gtt != expected_gtt) {
pr_err("gtt=%u, expected=%u, size=%zd, single=%s\n",
vma->resource->page_sizes_gtt, expected_gtt,
- obj->base.size, yesno(!!single));
+ obj->base.size, str_yes_no(!!single));
err = -EINVAL;
break;
}
@@ -959,7 +960,7 @@ static int igt_mock_ppgtt_64K(void *arg)
if (vma->resource->page_sizes_gtt != expected_gtt) {
pr_err("gtt=%u, expected=%u, i=%d, single=%s\n",
vma->resource->page_sizes_gtt,
- expected_gtt, i, yesno(!!single));
+ expected_gtt, i, str_yes_no(!!single));
err = -EINVAL;
goto out_vma_unpin;
}
@@ -1646,14 +1647,14 @@ static int igt_shrink_thp(void *arg)
I915_SHRINK_WRITEBACK);
if (should_swap == i915_gem_object_has_pages(obj)) {
pr_err("unexpected pages mismatch, should_swap=%s\n",
- yesno(should_swap));
+ str_yes_no(should_swap));
err = -EINVAL;
goto out_put;
}
if (should_swap == (obj->mm.page_sizes.sg || obj->mm.page_sizes.phys)) {
pr_err("unexpected residual page-size bits, should_swap=%s\n",
- yesno(should_swap));
+ str_yes_no(should_swap));
err = -EINVAL;
goto out_put;
}
diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
index 80d99b9c694f..4f6707e8808d 100644
--- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
@@ -5,6 +5,7 @@
*/
#include <linux/prime_numbers.h>
+#include <linux/string_helpers.h>
#include "gem/i915_gem_pm.h"
#include "gt/intel_engine_pm.h"
@@ -698,7 +699,7 @@ static int igt_ctx_exec(void *arg)
pr_err("Failed to fill dword %lu [%lu/%lu] with gpu (%s) [full-ppgtt? %s], err=%d\n",
ndwords, dw, max_dwords(obj),
engine->name,
- yesno(i915_gem_context_has_full_ppgtt(ctx)),
+ str_yes_no(i915_gem_context_has_full_ppgtt(ctx)),
err);
intel_context_put(ce);
kernel_context_close(ctx);
@@ -832,7 +833,7 @@ static int igt_shared_ctx_exec(void *arg)
pr_err("Failed to fill dword %lu [%lu/%lu] with gpu (%s) [full-ppgtt? %s], err=%d\n",
ndwords, dw, max_dwords(obj),
engine->name,
- yesno(i915_gem_context_has_full_ppgtt(ctx)),
+ str_yes_no(i915_gem_context_has_full_ppgtt(ctx)),
err);
intel_context_put(ce);
kernel_context_close(ctx);
@@ -1411,7 +1412,7 @@ static int igt_ctx_readonly(void *arg)
pr_err("Failed to fill dword %lu [%lu/%lu] with gpu (%s) [full-ppgtt? %s], err=%d\n",
ndwords, dw, max_dwords(obj),
ce->engine->name,
- yesno(i915_gem_context_has_full_ppgtt(ctx)),
+ str_yes_no(i915_gem_context_has_full_ppgtt(ctx)),
err);
i915_gem_context_unlock_engines(ctx);
goto out_file;
diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
index 4317ae5e525b..07de0fb56f51 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
@@ -3,6 +3,8 @@
* Copyright © 2016 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include <drm/drm_print.h>
#include "gem/i915_gem_context.h"
@@ -1639,8 +1641,7 @@ static void intel_engine_print_registers(struct intel_engine_cs *engine,
u8 read, write;
drm_printf(m, "\tExeclist tasklet queued? %s (%s), preempt? %s, timeslice? %s\n",
- yesno(test_bit(TASKLET_STATE_SCHED,
- &engine->sched_engine->tasklet.state)),
+ str_yes_no(test_bit(TASKLET_STATE_SCHED, &engine->sched_engine->tasklet.state)),
enableddisabled(!atomic_read(&engine->sched_engine->tasklet.count)),
repr_timer(&engine->execlists.preempt),
repr_timer(&engine->execlists.timer));
@@ -1902,7 +1903,7 @@ void intel_engine_dump(struct intel_engine_cs *engine,
drm_printf(m, "\tAwake? %d\n", atomic_read(&engine->wakeref.count));
drm_printf(m, "\tBarriers?: %s\n",
- yesno(!llist_empty(&engine->barrier_tasks)));
+ str_yes_no(!llist_empty(&engine->barrier_tasks)));
drm_printf(m, "\tLatency: %luus\n",
ewma__engine_latency_read(&engine->latency));
if (intel_engine_supports_stats(engine))
@@ -1944,7 +1945,7 @@ void intel_engine_dump(struct intel_engine_cs *engine,
drm_printf(m, "HWSP:\n");
hexdump(m, engine->status_page.addr, PAGE_SIZE);
- drm_printf(m, "Idle? %s\n", yesno(intel_engine_is_idle(engine)));
+ drm_printf(m, "Idle? %s\n", str_yes_no(intel_engine_is_idle(engine)));
intel_engine_print_breadcrumbs(engine, m);
}
diff --git a/drivers/gpu/drm/i915/gt/intel_execlists_submission.c b/drivers/gpu/drm/i915/gt/intel_execlists_submission.c
index 960a9aaf4f3a..95898e3752a7 100644
--- a/drivers/gpu/drm/i915/gt/intel_execlists_submission.c
+++ b/drivers/gpu/drm/i915/gt/intel_execlists_submission.c
@@ -107,6 +107,7 @@
*
*/
#include <linux/interrupt.h>
+#include <linux/string_helpers.h>
#include "i915_drv.h"
#include "i915_trace.h"
@@ -1330,11 +1331,11 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
} else if (timeslice_expired(engine, last)) {
ENGINE_TRACE(engine,
"expired:%s last=%llx:%lld, prio=%d, hint=%d, yield?=%s\n",
- yesno(timer_expired(&execlists->timer)),
+ str_yes_no(timer_expired(&execlists->timer)),
last->fence.context, last->fence.seqno,
rq_prio(last),
sched_engine->queue_priority_hint,
- yesno(timeslice_yield(execlists, last)));
+ str_yes_no(timeslice_yield(execlists, last)));
/*
* Consume this timeslice; ensure we start a new one.
@@ -1422,7 +1423,7 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
__i915_request_is_complete(rq) ? "!" :
__i915_request_has_started(rq) ? "*" :
"",
- yesno(engine != ve->siblings[0]));
+ str_yes_no(engine != ve->siblings[0]));
WRITE_ONCE(ve->request, NULL);
WRITE_ONCE(ve->base.sched_engine->queue_priority_hint, INT_MIN);
diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_pm.c
index c0fa41e4c803..e4ecc17889d3 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_pm.c
+++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.c
@@ -3,6 +3,7 @@
* Copyright © 2019 Intel Corporation
*/
+#include <linux/string_helpers.h>
#include <linux/suspend.h>
#include "i915_drv.h"
@@ -157,7 +158,7 @@ static void gt_sanitize(struct intel_gt *gt, bool force)
enum intel_engine_id id;
intel_wakeref_t wakeref;
- GT_TRACE(gt, "force:%s", yesno(force));
+ GT_TRACE(gt, "force:%s", str_yes_no(force));
/* Use a raw wakeref to avoid calling intel_display_power_get early */
wakeref = intel_runtime_pm_get(gt->uncore->rpm);
diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c b/drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c
index 6c5c1d0363bf..7390c1527107 100644
--- a/drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c
+++ b/drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c
@@ -5,6 +5,7 @@
*/
#include <linux/seq_file.h>
+#include <linux/string_helpers.h>
#include "i915_drv.h"
#include "intel_gt.h"
@@ -102,7 +103,7 @@ static int vlv_drpc(struct seq_file *m)
rcctl1 = intel_uncore_read(uncore, GEN6_RC_CONTROL);
seq_printf(m, "RC6 Enabled: %s\n",
- yesno(rcctl1 & (GEN7_RC_CTL_TO_MODE |
+ str_yes_no(rcctl1 & (GEN7_RC_CTL_TO_MODE |
GEN6_RC_CTL_EI_MODE(1))));
seq_printf(m, "Render Power Well: %s\n",
(pw_status & VLV_GTLC_PW_RENDER_STATUS_MASK) ? "Up" : "Down");
@@ -137,19 +138,19 @@ static int gen6_drpc(struct seq_file *m)
snb_pcode_read(i915, GEN6_PCODE_READ_RC6VIDS, &rc6vids, NULL);
seq_printf(m, "RC1e Enabled: %s\n",
- yesno(rcctl1 & GEN6_RC_CTL_RC1e_ENABLE));
+ str_yes_no(rcctl1 & GEN6_RC_CTL_RC1e_ENABLE));
seq_printf(m, "RC6 Enabled: %s\n",
- yesno(rcctl1 & GEN6_RC_CTL_RC6_ENABLE));
+ str_yes_no(rcctl1 & GEN6_RC_CTL_RC6_ENABLE));
if (GRAPHICS_VER(i915) >= 9) {
seq_printf(m, "Render Well Gating Enabled: %s\n",
- yesno(gen9_powergate_enable & GEN9_RENDER_PG_ENABLE));
+ str_yes_no(gen9_powergate_enable & GEN9_RENDER_PG_ENABLE));
seq_printf(m, "Media Well Gating Enabled: %s\n",
- yesno(gen9_powergate_enable & GEN9_MEDIA_PG_ENABLE));
+ str_yes_no(gen9_powergate_enable & GEN9_MEDIA_PG_ENABLE));
}
seq_printf(m, "Deep RC6 Enabled: %s\n",
- yesno(rcctl1 & GEN6_RC_CTL_RC6p_ENABLE));
+ str_yes_no(rcctl1 & GEN6_RC_CTL_RC6p_ENABLE));
seq_printf(m, "Deepest RC6 Enabled: %s\n",
- yesno(rcctl1 & GEN6_RC_CTL_RC6pp_ENABLE));
+ str_yes_no(rcctl1 & GEN6_RC_CTL_RC6pp_ENABLE));
seq_puts(m, "Current RC state: ");
switch (gt_core_status & GEN6_RCn_MASK) {
case GEN6_RC0:
@@ -173,7 +174,7 @@ static int gen6_drpc(struct seq_file *m)
}
seq_printf(m, "Core Power Down: %s\n",
- yesno(gt_core_status & GEN6_CORE_CPD_STATE_MASK));
+ str_yes_no(gt_core_status & GEN6_CORE_CPD_STATE_MASK));
if (GRAPHICS_VER(i915) >= 9) {
seq_printf(m, "Render Power Well: %s\n",
(gen9_powergate_status &
@@ -213,16 +214,17 @@ static int ilk_drpc(struct seq_file *m)
rstdbyctl = intel_uncore_read(uncore, RSTDBYCTL);
crstandvid = intel_uncore_read16(uncore, CRSTANDVID);
- seq_printf(m, "HD boost: %s\n", yesno(rgvmodectl & MEMMODE_BOOST_EN));
+ seq_printf(m, "HD boost: %s\n",
+ str_yes_no(rgvmodectl & MEMMODE_BOOST_EN));
seq_printf(m, "Boost freq: %d\n",
(rgvmodectl & MEMMODE_BOOST_FREQ_MASK) >>
MEMMODE_BOOST_FREQ_SHIFT);
seq_printf(m, "HW control enabled: %s\n",
- yesno(rgvmodectl & MEMMODE_HWIDLE_EN));
+ str_yes_no(rgvmodectl & MEMMODE_HWIDLE_EN));
seq_printf(m, "SW control enabled: %s\n",
- yesno(rgvmodectl & MEMMODE_SWMODE_EN));
+ str_yes_no(rgvmodectl & MEMMODE_SWMODE_EN));
seq_printf(m, "Gated voltage change: %s\n",
- yesno(rgvmodectl & MEMMODE_RCLK_GATE));
+ str_yes_no(rgvmodectl & MEMMODE_RCLK_GATE));
seq_printf(m, "Starting frequency: P%d\n",
(rgvmodectl & MEMMODE_FSTART_MASK) >> MEMMODE_FSTART_SHIFT);
seq_printf(m, "Max P-state: P%d\n",
@@ -231,7 +233,7 @@ static int ilk_drpc(struct seq_file *m)
seq_printf(m, "RS1 VID: %d\n", (crstandvid & 0x3f));
seq_printf(m, "RS2 VID: %d\n", ((crstandvid >> 8) & 0x3f));
seq_printf(m, "Render standby enabled: %s\n",
- yesno(!(rstdbyctl & RCX_SW_EXIT)));
+ str_yes_no(!(rstdbyctl & RCX_SW_EXIT)));
seq_puts(m, "Current RS state: ");
switch (rstdbyctl & RSX_STATUS_MASK) {
case RSX_STATUS_ON:
@@ -304,12 +306,11 @@ void intel_gt_pm_frequency_dump(struct intel_gt *gt, struct drm_printer *p)
rpmodectl = intel_uncore_read(uncore, GEN6_RP_CONTROL);
drm_printf(p, "Video Turbo Mode: %s\n",
- yesno(rpmodectl & GEN6_RP_MEDIA_TURBO));
+ str_yes_no(rpmodectl & GEN6_RP_MEDIA_TURBO));
drm_printf(p, "HW control enabled: %s\n",
- yesno(rpmodectl & GEN6_RP_ENABLE));
+ str_yes_no(rpmodectl & GEN6_RP_ENABLE));
drm_printf(p, "SW control enabled: %s\n",
- yesno((rpmodectl & GEN6_RP_MEDIA_MODE_MASK) ==
- GEN6_RP_MEDIA_SW_MODE));
+ str_yes_no((rpmodectl & GEN6_RP_MEDIA_MODE_MASK) == GEN6_RP_MEDIA_SW_MODE));
vlv_punit_get(i915);
freq_sts = vlv_punit_read(i915, PUNIT_REG_GPU_FREQ_STS);
@@ -414,12 +415,11 @@ void intel_gt_pm_frequency_dump(struct intel_gt *gt, struct drm_printer *p)
pm_mask = intel_uncore_read(uncore, GEN6_PMINTRMSK);
drm_printf(p, "Video Turbo Mode: %s\n",
- yesno(rpmodectl & GEN6_RP_MEDIA_TURBO));
+ str_yes_no(rpmodectl & GEN6_RP_MEDIA_TURBO));
drm_printf(p, "HW control enabled: %s\n",
- yesno(rpmodectl & GEN6_RP_ENABLE));
+ str_yes_no(rpmodectl & GEN6_RP_ENABLE));
drm_printf(p, "SW control enabled: %s\n",
- yesno((rpmodectl & GEN6_RP_MEDIA_MODE_MASK) ==
- GEN6_RP_MEDIA_SW_MODE));
+ str_yes_no((rpmodectl & GEN6_RP_MEDIA_MODE_MASK) == GEN6_RP_MEDIA_SW_MODE));
drm_printf(p, "PM IER=0x%08x IMR=0x%08x, MASK=0x%08x\n",
pm_ier, pm_imr, pm_mask);
@@ -539,7 +539,7 @@ static int llc_show(struct seq_file *m, void *data)
intel_wakeref_t wakeref;
int gpu_freq, ia_freq;
- seq_printf(m, "LLC: %s\n", yesno(HAS_LLC(i915)));
+ seq_printf(m, "LLC: %s\n", str_yes_no(HAS_LLC(i915)));
seq_printf(m, "%s: %uMB\n", edram ? "eDRAM" : "eLLC",
i915->edram_size_mb);
@@ -601,10 +601,12 @@ static int rps_boost_show(struct seq_file *m, void *data)
struct drm_i915_private *i915 = gt->i915;
struct intel_rps *rps = >->rps;
- seq_printf(m, "RPS enabled? %s\n", yesno(intel_rps_is_enabled(rps)));
- seq_printf(m, "RPS active? %s\n", yesno(intel_rps_is_active(rps)));
+ seq_printf(m, "RPS enabled? %s\n",
+ str_yes_no(intel_rps_is_enabled(rps)));
+ seq_printf(m, "RPS active? %s\n",
+ str_yes_no(intel_rps_is_active(rps)));
seq_printf(m, "GPU busy? %s, %llums\n",
- yesno(gt->awake),
+ str_yes_no(gt->awake),
ktime_to_ms(intel_gt_get_awake_time(gt)));
seq_printf(m, "Boosts outstanding? %d\n",
atomic_read(&rps->num_waiters));
diff --git a/drivers/gpu/drm/i915/gt/intel_reset.c b/drivers/gpu/drm/i915/gt/intel_reset.c
index 6f2821cca409..d1cf0f73df3f 100644
--- a/drivers/gpu/drm/i915/gt/intel_reset.c
+++ b/drivers/gpu/drm/i915/gt/intel_reset.c
@@ -5,6 +5,7 @@
#include <linux/sched/mm.h>
#include <linux/stop_machine.h>
+#include <linux/string_helpers.h>
#include "display/intel_display.h"
#include "display/intel_overlay.h"
@@ -133,7 +134,7 @@ void __i915_request_reset(struct i915_request *rq, bool guilty)
{
bool banned = false;
- RQ_TRACE(rq, "guilty? %s\n", yesno(guilty));
+ RQ_TRACE(rq, "guilty? %s\n", str_yes_no(guilty));
GEM_BUG_ON(__i915_request_is_complete(rq));
rcu_read_lock(); /* protect the GEM context */
diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
index 8a13bc005b45..e9f9874d1e5b 100644
--- a/drivers/gpu/drm/i915/gt/intel_rps.c
+++ b/drivers/gpu/drm/i915/gt/intel_rps.c
@@ -3,6 +3,8 @@
* Copyright © 2019 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include <drm/i915_drm.h>
#include "i915_drv.h"
@@ -770,7 +772,8 @@ static void gen6_rps_set_thresholds(struct intel_rps *rps, u8 val)
void intel_rps_mark_interactive(struct intel_rps *rps, bool interactive)
{
- GT_TRACE(rps_to_gt(rps), "mark interactive: %s\n", yesno(interactive));
+ GT_TRACE(rps_to_gt(rps), "mark interactive: %s\n",
+ str_yes_no(interactive));
mutex_lock(&rps->power.mutex);
if (interactive) {
@@ -1277,7 +1280,8 @@ static bool chv_rps_enable(struct intel_rps *rps)
drm_WARN_ONCE(&i915->drm, (val & GPLLENABLE) == 0,
"GPLL not enabled\n");
- drm_dbg(&i915->drm, "GPLL enabled? %s\n", yesno(val & GPLLENABLE));
+ drm_dbg(&i915->drm, "GPLL enabled? %s\n",
+ str_yes_no(val & GPLLENABLE));
drm_dbg(&i915->drm, "GPU status: 0x%08x\n", val);
return rps_reset(rps);
@@ -1378,7 +1382,8 @@ static bool vlv_rps_enable(struct intel_rps *rps)
drm_WARN_ONCE(&i915->drm, (val & GPLLENABLE) == 0,
"GPLL not enabled\n");
- drm_dbg(&i915->drm, "GPLL enabled? %s\n", yesno(val & GPLLENABLE));
+ drm_dbg(&i915->drm, "GPLL enabled? %s\n",
+ str_yes_no(val & GPLLENABLE));
drm_dbg(&i915->drm, "GPU status: 0x%08x\n", val);
return rps_reset(rps);
@@ -1770,7 +1775,7 @@ static void rps_work(struct work_struct *work)
GT_TRACE(gt,
"pm_iir:%x, client_boost:%s, last:%d, cur:%x, min:%x, max:%x\n",
- pm_iir, yesno(client_boost),
+ pm_iir, str_yes_no(client_boost),
adj, new_freq, min, max);
if (client_boost && new_freq < rps->boost_freq) {
diff --git a/drivers/gpu/drm/i915/gt/intel_sseu.c b/drivers/gpu/drm/i915/gt/intel_sseu.c
index bdf09051b8a0..5168e5d27ae9 100644
--- a/drivers/gpu/drm/i915/gt/intel_sseu.c
+++ b/drivers/gpu/drm/i915/gt/intel_sseu.c
@@ -3,6 +3,8 @@
* Copyright © 2019 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include "i915_drv.h"
#include "intel_lrc_reg.h"
#include "intel_sseu.h"
@@ -699,10 +701,11 @@ void intel_sseu_dump(const struct sseu_dev_info *sseu, struct drm_printer *p)
drm_printf(p, "EU total: %u\n", sseu->eu_total);
drm_printf(p, "EU per subslice: %u\n", sseu->eu_per_subslice);
drm_printf(p, "has slice power gating: %s\n",
- yesno(sseu->has_slice_pg));
+ str_yes_no(sseu->has_slice_pg));
drm_printf(p, "has subslice power gating: %s\n",
- yesno(sseu->has_subslice_pg));
- drm_printf(p, "has EU power gating: %s\n", yesno(sseu->has_eu_pg));
+ str_yes_no(sseu->has_subslice_pg));
+ drm_printf(p, "has EU power gating: %s\n",
+ str_yes_no(sseu->has_eu_pg));
}
void intel_sseu_print_topology(const struct sseu_dev_info *sseu,
diff --git a/drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c b/drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
index 8bb3a91dad82..d4bfbde63e60 100644
--- a/drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
+++ b/drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
@@ -4,6 +4,8 @@
* Copyright © 2020 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include "i915_drv.h"
#include "intel_gt_debugfs.h"
#include "intel_sseu_debugfs.h"
@@ -225,16 +227,16 @@ static void i915_print_sseu_info(struct seq_file *m,
if (!is_available_info)
return;
- seq_printf(m, " Has Pooled EU: %s\n", yesno(has_pooled_eu));
+ seq_printf(m, " Has Pooled EU: %s\n", str_yes_no(has_pooled_eu));
if (has_pooled_eu)
seq_printf(m, " Min EU in pool: %u\n", sseu->min_eu_in_pool);
seq_printf(m, " Has Slice Power Gating: %s\n",
- yesno(sseu->has_slice_pg));
+ str_yes_no(sseu->has_slice_pg));
seq_printf(m, " Has Subslice Power Gating: %s\n",
- yesno(sseu->has_subslice_pg));
+ str_yes_no(sseu->has_subslice_pg));
seq_printf(m, " Has EU Power Gating: %s\n",
- yesno(sseu->has_eu_pg));
+ str_yes_no(sseu->has_eu_pg));
}
/*
diff --git a/drivers/gpu/drm/i915/gt/selftest_timeline.c b/drivers/gpu/drm/i915/gt/selftest_timeline.c
index 0410c402f2a3..522d0190509c 100644
--- a/drivers/gpu/drm/i915/gt/selftest_timeline.c
+++ b/drivers/gpu/drm/i915/gt/selftest_timeline.c
@@ -4,6 +4,7 @@
*/
#include <linux/prime_numbers.h>
+#include <linux/string_helpers.h>
#include "intel_context.h"
#include "intel_engine_heartbeat.h"
@@ -209,7 +210,7 @@ static int __igt_sync(struct intel_timeline *tl,
if (__intel_timeline_sync_is_later(tl, ctx, p->seqno) != p->expected) {
pr_err("%s: %s(ctx=%llu, seqno=%u) expected passed %s but failed\n",
- name, p->name, ctx, p->seqno, yesno(p->expected));
+ name, p->name, ctx, p->seqno, str_yes_no(p->expected));
return -EINVAL;
}
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
index b53f61f3101f..8a99c2e624c2 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
@@ -4,6 +4,7 @@
*/
#include <linux/debugfs.h>
+#include <linux/string_helpers.h>
#include "gt/intel_gt.h"
#include "i915_drv.h"
@@ -477,7 +478,7 @@ int intel_guc_log_create(struct intel_guc_log *log)
log->level = __get_default_log_level(log);
DRM_DEBUG_DRIVER("guc_log_level=%d (%s, verbose:%s, verbosity:%d)\n",
log->level, enableddisabled(log->level),
- yesno(GUC_LOG_LEVEL_IS_VERBOSE(log->level)),
+ str_yes_no(GUC_LOG_LEVEL_IS_VERBOSE(log->level)),
GUC_LOG_LEVEL_TO_VERBOSITY(log->level));
return 0;
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
index 13b27b8ff74e..742bfb9a0a57 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
@@ -3,6 +3,8 @@
* Copyright © 2021 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include "i915_drv.h"
#include "intel_guc_slpc.h"
#include "gt/intel_gt.h"
@@ -713,7 +715,7 @@ int intel_guc_slpc_print_info(struct intel_guc_slpc *slpc, struct drm_printer *p
drm_printf(p, "\tSLPC state: %s\n", slpc_get_state_string(slpc));
drm_printf(p, "\tGTPERF task active: %s\n",
- yesno(slpc_tasks->status & SLPC_GTPERF_TASK_ENABLED));
+ str_yes_no(slpc_tasks->status & SLPC_GTPERF_TASK_ENABLED));
drm_printf(p, "\tMax freq: %u MHz\n",
slpc_decode_max_freq(slpc));
drm_printf(p, "\tMin freq: %u MHz\n",
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
index da199aa6989f..8e756d4c2c16 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
@@ -3,6 +3,8 @@
* Copyright © 2016-2019 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include "gt/intel_gt.h"
#include "gt/intel_reset.h"
#include "intel_guc.h"
@@ -78,10 +80,10 @@ static void __confirm_options(struct intel_uc *uc)
drm_dbg(&i915->drm,
"enable_guc=%d (guc:%s submission:%s huc:%s slpc:%s)\n",
i915->params.enable_guc,
- yesno(intel_uc_wants_guc(uc)),
- yesno(intel_uc_wants_guc_submission(uc)),
- yesno(intel_uc_wants_huc(uc)),
- yesno(intel_uc_wants_guc_slpc(uc)));
+ str_yes_no(intel_uc_wants_guc(uc)),
+ str_yes_no(intel_uc_wants_guc_submission(uc)),
+ str_yes_no(intel_uc_wants_huc(uc)),
+ str_yes_no(intel_uc_wants_guc_slpc(uc)));
if (i915->params.enable_guc == 0) {
GEM_BUG_ON(intel_uc_wants_guc(uc));
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c b/drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c
index c2f7924295e7..284d6fbc2d08 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c
@@ -4,6 +4,8 @@
*/
#include <linux/debugfs.h>
+#include <linux/string_helpers.h>
+
#include <drm/drm_print.h>
#include "gt/intel_gt_debugfs.h"
@@ -18,17 +20,17 @@ static int uc_usage_show(struct seq_file *m, void *data)
struct drm_printer p = drm_seq_file_printer(m);
drm_printf(&p, "[guc] supported:%s wanted:%s used:%s\n",
- yesno(intel_uc_supports_guc(uc)),
- yesno(intel_uc_wants_guc(uc)),
- yesno(intel_uc_uses_guc(uc)));
+ str_yes_no(intel_uc_supports_guc(uc)),
+ str_yes_no(intel_uc_wants_guc(uc)),
+ str_yes_no(intel_uc_uses_guc(uc)));
drm_printf(&p, "[huc] supported:%s wanted:%s used:%s\n",
- yesno(intel_uc_supports_huc(uc)),
- yesno(intel_uc_wants_huc(uc)),
- yesno(intel_uc_uses_huc(uc)));
+ str_yes_no(intel_uc_supports_huc(uc)),
+ str_yes_no(intel_uc_wants_huc(uc)),
+ str_yes_no(intel_uc_uses_huc(uc)));
drm_printf(&p, "[submission] supported:%s wanted:%s used:%s\n",
- yesno(intel_uc_supports_guc_submission(uc)),
- yesno(intel_uc_wants_guc_submission(uc)),
- yesno(intel_uc_uses_guc_submission(uc)));
+ str_yes_no(intel_uc_supports_guc_submission(uc)),
+ str_yes_no(intel_uc_wants_guc_submission(uc)),
+ str_yes_no(intel_uc_uses_guc_submission(uc)));
return 0;
}
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
index f3141b58d912..8e70c404bcc5 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -28,6 +28,7 @@
#include <linux/sched/mm.h>
#include <linux/sort.h>
+#include <linux/string_helpers.h>
#include <drm/drm_debugfs.h>
@@ -442,9 +443,11 @@ static int i915_rps_boost_info(struct seq_file *m, void *data)
struct drm_i915_private *dev_priv = node_to_i915(m->private);
struct intel_rps *rps = &to_gt(dev_priv)->rps;
- seq_printf(m, "RPS enabled? %s\n", yesno(intel_rps_is_enabled(rps)));
- seq_printf(m, "RPS active? %s\n", yesno(intel_rps_is_active(rps)));
- seq_printf(m, "GPU busy? %s\n", yesno(to_gt(dev_priv)->awake));
+ seq_printf(m, "RPS enabled? %s\n",
+ str_yes_no(intel_rps_is_enabled(rps)));
+ seq_printf(m, "RPS active? %s\n",
+ str_yes_no(intel_rps_is_active(rps)));
+ seq_printf(m, "GPU busy? %s\n", str_yes_no(to_gt(dev_priv)->awake));
seq_printf(m, "Boosts outstanding? %d\n",
atomic_read(&rps->num_waiters));
seq_printf(m, "Interactive? %d\n", READ_ONCE(rps->power.interactive));
@@ -477,9 +480,9 @@ static int i915_runtime_pm_status(struct seq_file *m, void *unused)
seq_printf(m, "Runtime power status: %s\n",
enableddisabled(!dev_priv->power_domains.init_wakeref));
- seq_printf(m, "GPU idle: %s\n", yesno(!to_gt(dev_priv)->awake));
+ seq_printf(m, "GPU idle: %s\n", str_yes_no(!to_gt(dev_priv)->awake));
seq_printf(m, "IRQs disabled: %s\n",
- yesno(!intel_irqs_enabled(dev_priv)));
+ str_yes_no(!intel_irqs_enabled(dev_priv)));
#ifdef CONFIG_PM
seq_printf(m, "Usage count: %d\n",
atomic_read(&dev_priv->drm.dev->power.usage_count));
@@ -509,7 +512,7 @@ static int i915_engine_info(struct seq_file *m, void *unused)
wakeref = intel_runtime_pm_get(&i915->runtime_pm);
seq_printf(m, "GT awake? %s [%d], %llums\n",
- yesno(to_gt(i915)->awake),
+ str_yes_no(to_gt(i915)->awake),
atomic_read(&to_gt(i915)->wakeref.count),
ktime_to_ms(intel_gt_get_awake_time(to_gt(i915))));
seq_printf(m, "CS timestamp frequency: %u Hz, %d ns\n",
diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
index aee42eae4729..e18a8c18d4fa 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
@@ -31,6 +31,7 @@
#include <linux/nmi.h>
#include <linux/pagevec.h>
#include <linux/scatterlist.h>
+#include <linux/string_helpers.h>
#include <linux/utsname.h>
#include <linux/zlib.h>
@@ -716,7 +717,7 @@ static void err_print_gt(struct drm_i915_error_state_buf *m,
const struct intel_engine_coredump *ee;
int i;
- err_printf(m, "GT awake: %s\n", yesno(gt->awake));
+ err_printf(m, "GT awake: %s\n", str_yes_no(gt->awake));
err_printf(m, "EIR: 0x%08x\n", gt->eir);
err_printf(m, "IER: 0x%08x\n", gt->ier);
for (i = 0; i < gt->ngtier; i++)
@@ -824,14 +825,14 @@ static void __err_print_to_sgl(struct drm_i915_error_state_buf *m,
struct intel_dmc *dmc = &m->i915->dmc;
err_printf(m, "DMC loaded: %s\n",
- yesno(intel_dmc_has_payload(m->i915) != 0));
+ str_yes_no(intel_dmc_has_payload(m->i915) != 0));
err_printf(m, "DMC fw version: %d.%d\n",
DMC_VERSION_MAJOR(dmc->version),
DMC_VERSION_MINOR(dmc->version));
}
- err_printf(m, "RPM wakelock: %s\n", yesno(error->wakelock));
- err_printf(m, "PM suspended: %s\n", yesno(error->suspended));
+ err_printf(m, "RPM wakelock: %s\n", str_yes_no(error->wakelock));
+ err_printf(m, "PM suspended: %s\n", str_yes_no(error->suspended));
if (error->gt)
err_print_gt(m, error->gt);
diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
index 525ae832aa9a..a28b10bc20ad 100644
--- a/drivers/gpu/drm/i915/i915_params.c
+++ b/drivers/gpu/drm/i915/i915_params.c
@@ -22,6 +22,8 @@
* IN THE SOFTWARE.
*/
+#include <linux/string_helpers.h>
+
#include <drm/drm_print.h>
#include "i915_params.h"
@@ -211,7 +213,8 @@ static __always_inline void _print_param(struct drm_printer *p,
const void *x)
{
if (!__builtin_strcmp(type, "bool"))
- drm_printf(p, "i915.%s=%s\n", name, yesno(*(const bool *)x));
+ drm_printf(p, "i915.%s=%s\n", name,
+ str_yes_no(*(const bool *)x));
else if (!__builtin_strcmp(type, "int"))
drm_printf(p, "i915.%s=%d\n", name, *(const int *)x);
else if (!__builtin_strcmp(type, "unsigned int"))
diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h
index bfafd0afd117..c62b64012369 100644
--- a/drivers/gpu/drm/i915/i915_utils.h
+++ b/drivers/gpu/drm/i915/i915_utils.h
@@ -399,11 +399,6 @@ wait_remaining_ms_from_jiffies(unsigned long timestamp_jiffies, int to_wait_ms)
#define MBps(x) KBps(1000 * (x))
#define GBps(x) ((u64)1000 * MBps((x)))
-static inline const char *yesno(bool v)
-{
- return v ? "yes" : "no";
-}
-
static inline const char *onoff(bool v)
{
return v ? "on" : "off";
diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c
index 94da5aa37391..88f29ac11ddd 100644
--- a/drivers/gpu/drm/i915/intel_device_info.c
+++ b/drivers/gpu/drm/i915/intel_device_info.c
@@ -22,6 +22,8 @@
*
*/
+#include <linux/string_helpers.h>
+
#include <drm/drm_print.h>
#include <drm/i915_pciids.h>
@@ -110,11 +112,11 @@ void intel_device_info_print_static(const struct intel_device_info *info,
drm_printf(p, "ppgtt-type: %d\n", info->ppgtt_type);
drm_printf(p, "dma_mask_size: %u\n", info->dma_mask_size);
-#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->name))
+#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, str_yes_no(info->name))
DEV_INFO_FOR_EACH_FLAG(PRINT_FLAG);
#undef PRINT_FLAG
-#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->display.name))
+#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, str_yes_no(info->display.name))
DEV_INFO_DISPLAY_FOR_EACH_FLAG(PRINT_FLAG);
#undef PRINT_FLAG
}
@@ -400,6 +402,6 @@ void intel_driver_caps_print(const struct intel_driver_caps *caps,
struct drm_printer *p)
{
drm_printf(p, "Has logical contexts? %s\n",
- yesno(caps->has_logical_contexts));
+ str_yes_no(caps->has_logical_contexts));
drm_printf(p, "scheduler: %x\n", caps->scheduler);
}
diff --git a/drivers/gpu/drm/i915/intel_dram.c b/drivers/gpu/drm/i915/intel_dram.c
index 3e26ccabf7f9..f8087f061e0b 100644
--- a/drivers/gpu/drm/i915/intel_dram.c
+++ b/drivers/gpu/drm/i915/intel_dram.c
@@ -3,6 +3,8 @@
* Copyright © 2020 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include "i915_drv.h"
#include "intel_dram.h"
#include "intel_pcode.h"
@@ -134,7 +136,7 @@ skl_dram_get_dimm_info(struct drm_i915_private *i915,
drm_dbg_kms(&i915->drm,
"CH%u DIMM %c size: %u Gb, width: X%u, ranks: %u, 16Gb DIMMs: %s\n",
channel, dimm_name, dimm->size, dimm->width, dimm->ranks,
- yesno(skl_is_16gb_dimm(dimm)));
+ str_yes_no(skl_is_16gb_dimm(dimm)));
}
static int
@@ -163,7 +165,7 @@ skl_dram_get_channel_info(struct drm_i915_private *i915,
skl_is_16gb_dimm(&ch->dimm_s);
drm_dbg_kms(&i915->drm, "CH%u ranks: %u, 16Gb DIMMs: %s\n",
- channel, ch->ranks, yesno(ch->is_16gb_dimm));
+ channel, ch->ranks, str_yes_no(ch->is_16gb_dimm));
return 0;
}
@@ -212,7 +214,7 @@ skl_dram_get_channels_info(struct drm_i915_private *i915)
dram_info->symmetric_memory = intel_is_dram_symmetric(&ch0, &ch1);
drm_dbg_kms(&i915->drm, "Memory configuration is symmetric? %s\n",
- yesno(dram_info->symmetric_memory));
+ str_yes_no(dram_info->symmetric_memory));
return 0;
}
@@ -490,7 +492,7 @@ void intel_dram_detect(struct drm_i915_private *i915)
drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
drm_dbg_kms(&i915->drm, "Watermark level 0 adjustment needed: %s\n",
- yesno(dram_info->wm_lv_0_adjust_needed));
+ str_yes_no(dram_info->wm_lv_0_adjust_needed));
}
static u32 gen9_edram_size_mb(struct drm_i915_private *i915, u32 cap)
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index c2bb9945f7be..c538a66687bd 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -26,6 +26,7 @@
*/
#include <linux/module.h>
+#include <linux/string_helpers.h>
#include <linux/pm_runtime.h>
#include <drm/drm_atomic_helper.h>
@@ -6152,8 +6153,8 @@ skl_compute_ddb(struct intel_atomic_state *state)
old_dbuf_state->enabled_slices,
new_dbuf_state->enabled_slices,
INTEL_INFO(dev_priv)->dbuf.slice_mask,
- yesno(old_dbuf_state->joined_mbus),
- yesno(new_dbuf_state->joined_mbus));
+ str_yes_no(old_dbuf_state->joined_mbus),
+ str_yes_no(new_dbuf_state->joined_mbus));
}
for_each_new_intel_crtc_in_state(state, crtc, new_crtc_state, i) {
@@ -6651,7 +6652,7 @@ void skl_wm_get_hw_state(struct drm_i915_private *dev_priv)
crtc->base.base.id, crtc->base.name,
dbuf_state->slices[pipe], dbuf_state->ddb[pipe].start,
dbuf_state->ddb[pipe].end, dbuf_state->active_pipes,
- yesno(dbuf_state->joined_mbus));
+ str_yes_no(dbuf_state->joined_mbus));
}
dbuf_state->enabled_slices = dev_priv->dbuf.enabled_slices;
@@ -6894,7 +6895,8 @@ void g4x_wm_get_hw_state(struct drm_i915_private *dev_priv)
"Initial HPLL watermarks: plane=%d, SR cursor=%d fbc=%d\n",
wm->hpll.plane, wm->hpll.cursor, wm->hpll.fbc);
drm_dbg_kms(&dev_priv->drm, "Initial SR=%s HPLL=%s FBC=%s\n",
- yesno(wm->cxsr), yesno(wm->hpll_en), yesno(wm->fbc_en));
+ str_yes_no(wm->cxsr), str_yes_no(wm->hpll_en),
+ str_yes_no(wm->fbc_en));
}
void g4x_wm_sanitize(struct drm_i915_private *dev_priv)
diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c b/drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c
index 10e1e45471f1..c9da1015eb42 100644
--- a/drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c
+++ b/drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c
@@ -4,6 +4,8 @@
*/
#include <linux/debugfs.h>
+#include <linux/string_helpers.h>
+
#include <drm/drm_print.h>
#include "gt/intel_gt_debugfs.h"
@@ -22,7 +24,7 @@ static int pxp_info_show(struct seq_file *m, void *data)
return 0;
}
- drm_printf(&p, "active: %s\n", yesno(intel_pxp_is_active(pxp)));
+ drm_printf(&p, "active: %s\n", str_yes_no(intel_pxp_is_active(pxp)));
drm_printf(&p, "instance counter: %u\n", pxp->key_instance);
return 0;
diff --git a/drivers/gpu/drm/i915/selftests/i915_active.c b/drivers/gpu/drm/i915/selftests/i915_active.c
index 2dac9be1de58..b61fe850e924 100644
--- a/drivers/gpu/drm/i915/selftests/i915_active.c
+++ b/drivers/gpu/drm/i915/selftests/i915_active.c
@@ -5,6 +5,7 @@
*/
#include <linux/kref.h>
+#include <linux/string_helpers.h>
#include "gem/i915_gem_pm.h"
#include "gt/intel_gt.h"
@@ -280,7 +281,7 @@ void i915_active_print(struct i915_active *ref, struct drm_printer *m)
drm_printf(m, "active %ps:%ps\n", ref->active, ref->retire);
drm_printf(m, "\tcount: %d\n", atomic_read(&ref->count));
drm_printf(m, "\tpreallocated barriers? %s\n",
- yesno(!llist_empty(&ref->preallocated_barriers)));
+ str_yes_no(!llist_empty(&ref->preallocated_barriers)));
if (i915_active_acquire_if_busy(ref)) {
struct active_node *it, *n;
--
2.34.1
Sort includes alphabetically so it's easier to add/remove includes and
know when that is needed.
Signed-off-by: Lucas De Marchi <[email protected]>
---
drivers/gpu/drm/drm_gem.c | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
index 4dcdec6487bb..21631c22b374 100644
--- a/drivers/gpu/drm/drm_gem.c
+++ b/drivers/gpu/drm/drm_gem.c
@@ -25,20 +25,20 @@
*
*/
-#include <linux/types.h>
-#include <linux/slab.h>
-#include <linux/mm.h>
-#include <linux/uaccess.h>
-#include <linux/fs.h>
+#include <linux/dma-buf-map.h>
+#include <linux/dma-buf.h>
#include <linux/file.h>
-#include <linux/module.h>
+#include <linux/fs.h>
+#include <linux/mem_encrypt.h>
+#include <linux/mm.h>
#include <linux/mman.h>
+#include <linux/module.h>
#include <linux/pagemap.h>
-#include <linux/shmem_fs.h>
-#include <linux/dma-buf.h>
-#include <linux/dma-buf-map.h>
-#include <linux/mem_encrypt.h>
#include <linux/pagevec.h>
+#include <linux/shmem_fs.h>
+#include <linux/slab.h>
+#include <linux/types.h>
+#include <linux/uaccess.h>
#include <drm/drm.h>
#include <drm/drm_device.h>
--
2.34.1
Remove the local yesno() implementation and adopt the str_yes_no() from
linux/string_helpers.h.
Signed-off-by: Lucas De Marchi <[email protected]>
Reviewed-by: Sakari Ailus <[email protected]>
---
security/tomoyo/audit.c | 2 +-
security/tomoyo/common.c | 19 +++++--------------
security/tomoyo/common.h | 1 -
3 files changed, 6 insertions(+), 16 deletions(-)
diff --git a/security/tomoyo/audit.c b/security/tomoyo/audit.c
index d79bf07e16be..023bedd9dfa3 100644
--- a/security/tomoyo/audit.c
+++ b/security/tomoyo/audit.c
@@ -166,7 +166,7 @@ static char *tomoyo_print_header(struct tomoyo_request_info *r)
"#%04u/%02u/%02u %02u:%02u:%02u# profile=%u mode=%s granted=%s (global-pid=%u) task={ pid=%u ppid=%u uid=%u gid=%u euid=%u egid=%u suid=%u sgid=%u fsuid=%u fsgid=%u }",
stamp.year, stamp.month, stamp.day, stamp.hour,
stamp.min, stamp.sec, r->profile, tomoyo_mode[r->mode],
- tomoyo_yesno(r->granted), gpid, tomoyo_sys_getpid(),
+ str_yes_no(r->granted), gpid, tomoyo_sys_getpid(),
tomoyo_sys_getppid(),
from_kuid(&init_user_ns, current_uid()),
from_kgid(&init_user_ns, current_gid()),
diff --git a/security/tomoyo/common.c b/security/tomoyo/common.c
index 5c64927bf2b3..ff17abc96e5c 100644
--- a/security/tomoyo/common.c
+++ b/security/tomoyo/common.c
@@ -8,6 +8,7 @@
#include <linux/uaccess.h>
#include <linux/slab.h>
#include <linux/security.h>
+#include <linux/string_helpers.h>
#include "common.h"
/* String table for operation mode. */
@@ -174,16 +175,6 @@ static bool tomoyo_manage_by_non_root;
/* Utility functions. */
-/**
- * tomoyo_yesno - Return "yes" or "no".
- *
- * @value: Bool value.
- */
-const char *tomoyo_yesno(const unsigned int value)
-{
- return value ? "yes" : "no";
-}
-
/**
* tomoyo_addprintf - strncat()-like-snprintf().
*
@@ -730,8 +721,8 @@ static void tomoyo_print_config(struct tomoyo_io_buffer *head, const u8 config)
{
tomoyo_io_printf(head, "={ mode=%s grant_log=%s reject_log=%s }\n",
tomoyo_mode[config & 3],
- tomoyo_yesno(config & TOMOYO_CONFIG_WANT_GRANT_LOG),
- tomoyo_yesno(config & TOMOYO_CONFIG_WANT_REJECT_LOG));
+ str_yes_no(config & TOMOYO_CONFIG_WANT_GRANT_LOG),
+ str_yes_no(config & TOMOYO_CONFIG_WANT_REJECT_LOG));
}
/**
@@ -1354,8 +1345,8 @@ static bool tomoyo_print_condition(struct tomoyo_io_buffer *head,
case 3:
if (cond->grant_log != TOMOYO_GRANTLOG_AUTO)
tomoyo_io_printf(head, " grant_log=%s",
- tomoyo_yesno(cond->grant_log ==
- TOMOYO_GRANTLOG_YES));
+ str_yes_no(cond->grant_log ==
+ TOMOYO_GRANTLOG_YES));
tomoyo_set_lf(head);
return true;
}
diff --git a/security/tomoyo/common.h b/security/tomoyo/common.h
index 85246b9df7ca..ca285f362705 100644
--- a/security/tomoyo/common.h
+++ b/security/tomoyo/common.h
@@ -959,7 +959,6 @@ char *tomoyo_read_token(struct tomoyo_acl_param *param);
char *tomoyo_realpath_from_path(const struct path *path);
char *tomoyo_realpath_nofollow(const char *pathname);
const char *tomoyo_get_exe(void);
-const char *tomoyo_yesno(const unsigned int value);
const struct tomoyo_path_info *tomoyo_compare_name_union
(const struct tomoyo_path_info *name, const struct tomoyo_name_union *ptr);
const struct tomoyo_path_info *tomoyo_get_domainname
--
2.34.1
Remove the local yesno() implementation and adopt the str_yes_no() from
linux/string_helpers.h.
Signed-off-by: Lucas De Marchi <[email protected]>
---
.../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 14 +++++---------
1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
index 26719efa5396..5ff1076b9130 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
@@ -23,6 +23,7 @@
*
*/
+#include <linux/string_helpers.h>
#include <linux/uaccess.h>
#include "dc.h"
@@ -49,11 +50,6 @@ struct dmub_debugfs_trace_entry {
uint32_t param1;
};
-static inline const char *yesno(bool v)
-{
- return v ? "yes" : "no";
-}
-
/* parse_write_buffer_into_params - Helper function to parse debugfs write buffer into an array
*
* Function takes in attributes passed to debugfs write entry
@@ -853,12 +849,12 @@ static int psr_capability_show(struct seq_file *m, void *data)
if (!(link->connector_signal & SIGNAL_TYPE_EDP))
return -ENODEV;
- seq_printf(m, "Sink support: %s", yesno(link->dpcd_caps.psr_caps.psr_version != 0));
+ seq_printf(m, "Sink support: %s", str_yes_no(link->dpcd_caps.psr_caps.psr_version != 0));
if (link->dpcd_caps.psr_caps.psr_version)
seq_printf(m, " [0x%02x]", link->dpcd_caps.psr_caps.psr_version);
seq_puts(m, "\n");
- seq_printf(m, "Driver support: %s", yesno(link->psr_settings.psr_feature_enabled));
+ seq_printf(m, "Driver support: %s", str_yes_no(link->psr_settings.psr_feature_enabled));
if (link->psr_settings.psr_version)
seq_printf(m, " [0x%02x]", link->psr_settings.psr_version);
seq_puts(m, "\n");
@@ -1207,8 +1203,8 @@ static int dp_dsc_fec_support_show(struct seq_file *m, void *data)
drm_modeset_drop_locks(&ctx);
drm_modeset_acquire_fini(&ctx);
- seq_printf(m, "FEC_Sink_Support: %s\n", yesno(is_fec_supported));
- seq_printf(m, "DSC_Sink_Support: %s\n", yesno(is_dsc_supported));
+ seq_printf(m, "FEC_Sink_Support: %s\n", str_yes_no(is_fec_supported));
+ seq_printf(m, "DSC_Sink_Support: %s\n", str_yes_no(is_dsc_supported));
return ret;
}
--
2.34.1
Remove the local yesno() implementation and adopt the str_yes_no() from
linux/string_helpers.h.
Signed-off-by: Lucas De Marchi <[email protected]>
---
.../ethernet/chelsio/cxgb4/cxgb4_debugfs.c | 249 ++++++++++--------
1 file changed, 137 insertions(+), 112 deletions(-)
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c
index 7d49fd4edc9e..f0d9842962ab 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_debugfs.c
@@ -2015,17 +2015,6 @@ static const struct file_operations rss_debugfs_fops = {
/* RSS Configuration.
*/
-/* Small utility function to return the strings "yes" or "no" if the supplied
- * argument is non-zero.
- */
-static const char *yesno(int x)
-{
- static const char *yes = "yes";
- static const char *no = "no";
-
- return x ? yes : no;
-}
-
static int rss_config_show(struct seq_file *seq, void *v)
{
struct adapter *adapter = seq->private;
@@ -2039,51 +2028,64 @@ static int rss_config_show(struct seq_file *seq, void *v)
rssconf = t4_read_reg(adapter, TP_RSS_CONFIG_A);
seq_printf(seq, "TP_RSS_CONFIG: %#x\n", rssconf);
- seq_printf(seq, " Tnl4TupEnIpv6: %3s\n", yesno(rssconf &
- TNL4TUPENIPV6_F));
- seq_printf(seq, " Tnl2TupEnIpv6: %3s\n", yesno(rssconf &
- TNL2TUPENIPV6_F));
- seq_printf(seq, " Tnl4TupEnIpv4: %3s\n", yesno(rssconf &
- TNL4TUPENIPV4_F));
- seq_printf(seq, " Tnl2TupEnIpv4: %3s\n", yesno(rssconf &
- TNL2TUPENIPV4_F));
- seq_printf(seq, " TnlTcpSel: %3s\n", yesno(rssconf & TNLTCPSEL_F));
- seq_printf(seq, " TnlIp6Sel: %3s\n", yesno(rssconf & TNLIP6SEL_F));
- seq_printf(seq, " TnlVrtSel: %3s\n", yesno(rssconf & TNLVRTSEL_F));
- seq_printf(seq, " TnlMapEn: %3s\n", yesno(rssconf & TNLMAPEN_F));
- seq_printf(seq, " OfdHashSave: %3s\n", yesno(rssconf &
- OFDHASHSAVE_F));
- seq_printf(seq, " OfdVrtSel: %3s\n", yesno(rssconf & OFDVRTSEL_F));
- seq_printf(seq, " OfdMapEn: %3s\n", yesno(rssconf & OFDMAPEN_F));
- seq_printf(seq, " OfdLkpEn: %3s\n", yesno(rssconf & OFDLKPEN_F));
- seq_printf(seq, " Syn4TupEnIpv6: %3s\n", yesno(rssconf &
- SYN4TUPENIPV6_F));
- seq_printf(seq, " Syn2TupEnIpv6: %3s\n", yesno(rssconf &
- SYN2TUPENIPV6_F));
- seq_printf(seq, " Syn4TupEnIpv4: %3s\n", yesno(rssconf &
- SYN4TUPENIPV4_F));
- seq_printf(seq, " Syn2TupEnIpv4: %3s\n", yesno(rssconf &
- SYN2TUPENIPV4_F));
- seq_printf(seq, " Syn4TupEnIpv6: %3s\n", yesno(rssconf &
- SYN4TUPENIPV6_F));
- seq_printf(seq, " SynIp6Sel: %3s\n", yesno(rssconf & SYNIP6SEL_F));
- seq_printf(seq, " SynVrt6Sel: %3s\n", yesno(rssconf & SYNVRTSEL_F));
- seq_printf(seq, " SynMapEn: %3s\n", yesno(rssconf & SYNMAPEN_F));
- seq_printf(seq, " SynLkpEn: %3s\n", yesno(rssconf & SYNLKPEN_F));
- seq_printf(seq, " ChnEn: %3s\n", yesno(rssconf &
- CHANNELENABLE_F));
- seq_printf(seq, " PrtEn: %3s\n", yesno(rssconf &
- PORTENABLE_F));
- seq_printf(seq, " TnlAllLkp: %3s\n", yesno(rssconf &
- TNLALLLOOKUP_F));
- seq_printf(seq, " VrtEn: %3s\n", yesno(rssconf &
- VIRTENABLE_F));
- seq_printf(seq, " CngEn: %3s\n", yesno(rssconf &
- CONGESTIONENABLE_F));
- seq_printf(seq, " HashToeplitz: %3s\n", yesno(rssconf &
- HASHTOEPLITZ_F));
- seq_printf(seq, " Udp4En: %3s\n", yesno(rssconf & UDPENABLE_F));
- seq_printf(seq, " Disable: %3s\n", yesno(rssconf & DISABLE_F));
+ seq_printf(seq, " Tnl4TupEnIpv6: %3s\n",
+ str_yes_no(rssconf & TNL4TUPENIPV6_F));
+ seq_printf(seq, " Tnl2TupEnIpv6: %3s\n",
+ str_yes_no(rssconf & TNL2TUPENIPV6_F));
+ seq_printf(seq, " Tnl4TupEnIpv4: %3s\n",
+ str_yes_no(rssconf & TNL4TUPENIPV4_F));
+ seq_printf(seq, " Tnl2TupEnIpv4: %3s\n",
+ str_yes_no(rssconf & TNL2TUPENIPV4_F));
+ seq_printf(seq, " TnlTcpSel: %3s\n",
+ str_yes_no(rssconf & TNLTCPSEL_F));
+ seq_printf(seq, " TnlIp6Sel: %3s\n",
+ str_yes_no(rssconf & TNLIP6SEL_F));
+ seq_printf(seq, " TnlVrtSel: %3s\n",
+ str_yes_no(rssconf & TNLVRTSEL_F));
+ seq_printf(seq, " TnlMapEn: %3s\n",
+ str_yes_no(rssconf & TNLMAPEN_F));
+ seq_printf(seq, " OfdHashSave: %3s\n",
+ str_yes_no(rssconf & OFDHASHSAVE_F));
+ seq_printf(seq, " OfdVrtSel: %3s\n",
+ str_yes_no(rssconf & OFDVRTSEL_F));
+ seq_printf(seq, " OfdMapEn: %3s\n",
+ str_yes_no(rssconf & OFDMAPEN_F));
+ seq_printf(seq, " OfdLkpEn: %3s\n",
+ str_yes_no(rssconf & OFDLKPEN_F));
+ seq_printf(seq, " Syn4TupEnIpv6: %3s\n",
+ str_yes_no(rssconf & SYN4TUPENIPV6_F));
+ seq_printf(seq, " Syn2TupEnIpv6: %3s\n",
+ str_yes_no(rssconf & SYN2TUPENIPV6_F));
+ seq_printf(seq, " Syn4TupEnIpv4: %3s\n",
+ str_yes_no(rssconf & SYN4TUPENIPV4_F));
+ seq_printf(seq, " Syn2TupEnIpv4: %3s\n",
+ str_yes_no(rssconf & SYN2TUPENIPV4_F));
+ seq_printf(seq, " Syn4TupEnIpv6: %3s\n",
+ str_yes_no(rssconf & SYN4TUPENIPV6_F));
+ seq_printf(seq, " SynIp6Sel: %3s\n",
+ str_yes_no(rssconf & SYNIP6SEL_F));
+ seq_printf(seq, " SynVrt6Sel: %3s\n",
+ str_yes_no(rssconf & SYNVRTSEL_F));
+ seq_printf(seq, " SynMapEn: %3s\n",
+ str_yes_no(rssconf & SYNMAPEN_F));
+ seq_printf(seq, " SynLkpEn: %3s\n",
+ str_yes_no(rssconf & SYNLKPEN_F));
+ seq_printf(seq, " ChnEn: %3s\n",
+ str_yes_no(rssconf & CHANNELENABLE_F));
+ seq_printf(seq, " PrtEn: %3s\n",
+ str_yes_no(rssconf & PORTENABLE_F));
+ seq_printf(seq, " TnlAllLkp: %3s\n",
+ str_yes_no(rssconf & TNLALLLOOKUP_F));
+ seq_printf(seq, " VrtEn: %3s\n",
+ str_yes_no(rssconf & VIRTENABLE_F));
+ seq_printf(seq, " CngEn: %3s\n",
+ str_yes_no(rssconf & CONGESTIONENABLE_F));
+ seq_printf(seq, " HashToeplitz: %3s\n",
+ str_yes_no(rssconf & HASHTOEPLITZ_F));
+ seq_printf(seq, " Udp4En: %3s\n",
+ str_yes_no(rssconf & UDPENABLE_F));
+ seq_printf(seq, " Disable: %3s\n",
+ str_yes_no(rssconf & DISABLE_F));
seq_puts(seq, "\n");
@@ -2093,19 +2095,20 @@ static int rss_config_show(struct seq_file *seq, void *v)
seq_printf(seq, " MaskFilter: %3d\n", MASKFILTER_G(rssconf));
if (CHELSIO_CHIP_VERSION(adapter->params.chip) > CHELSIO_T5) {
seq_printf(seq, " HashAll: %3s\n",
- yesno(rssconf & HASHALL_F));
+ str_yes_no(rssconf & HASHALL_F));
seq_printf(seq, " HashEth: %3s\n",
- yesno(rssconf & HASHETH_F));
+ str_yes_no(rssconf & HASHETH_F));
}
- seq_printf(seq, " UseWireCh: %3s\n", yesno(rssconf & USEWIRECH_F));
+ seq_printf(seq, " UseWireCh: %3s\n",
+ str_yes_no(rssconf & USEWIRECH_F));
seq_puts(seq, "\n");
rssconf = t4_read_reg(adapter, TP_RSS_CONFIG_OFD_A);
seq_printf(seq, "TP_RSS_CONFIG_OFD: %#x\n", rssconf);
seq_printf(seq, " MaskSize: %3d\n", MASKSIZE_G(rssconf));
- seq_printf(seq, " RRCplMapEn: %3s\n", yesno(rssconf &
- RRCPLMAPEN_F));
+ seq_printf(seq, " RRCplMapEn: %3s\n",
+ str_yes_no(rssconf & RRCPLMAPEN_F));
seq_printf(seq, " RRCplQueWidth: %3d\n", RRCPLQUEWIDTH_G(rssconf));
seq_puts(seq, "\n");
@@ -2113,7 +2116,8 @@ static int rss_config_show(struct seq_file *seq, void *v)
rssconf = t4_read_reg(adapter, TP_RSS_CONFIG_SYN_A);
seq_printf(seq, "TP_RSS_CONFIG_SYN: %#x\n", rssconf);
seq_printf(seq, " MaskSize: %3d\n", MASKSIZE_G(rssconf));
- seq_printf(seq, " UseWireCh: %3s\n", yesno(rssconf & USEWIRECH_F));
+ seq_printf(seq, " UseWireCh: %3s\n",
+ str_yes_no(rssconf & USEWIRECH_F));
seq_puts(seq, "\n");
@@ -2123,15 +2127,20 @@ static int rss_config_show(struct seq_file *seq, void *v)
seq_printf(seq, " KeyWrAddrX: %3d\n",
KEYWRADDRX_G(rssconf));
seq_printf(seq, " KeyExtend: %3s\n",
- yesno(rssconf & KEYEXTEND_F));
- }
- seq_printf(seq, " VfRdRg: %3s\n", yesno(rssconf & VFRDRG_F));
- seq_printf(seq, " VfRdEn: %3s\n", yesno(rssconf & VFRDEN_F));
- seq_printf(seq, " VfPerrEn: %3s\n", yesno(rssconf & VFPERREN_F));
- seq_printf(seq, " KeyPerrEn: %3s\n", yesno(rssconf & KEYPERREN_F));
- seq_printf(seq, " DisVfVlan: %3s\n", yesno(rssconf &
- DISABLEVLAN_F));
- seq_printf(seq, " EnUpSwt: %3s\n", yesno(rssconf & ENABLEUP0_F));
+ str_yes_no(rssconf & KEYEXTEND_F));
+ }
+ seq_printf(seq, " VfRdRg: %3s\n",
+ str_yes_no(rssconf & VFRDRG_F));
+ seq_printf(seq, " VfRdEn: %3s\n",
+ str_yes_no(rssconf & VFRDEN_F));
+ seq_printf(seq, " VfPerrEn: %3s\n",
+ str_yes_no(rssconf & VFPERREN_F));
+ seq_printf(seq, " KeyPerrEn: %3s\n",
+ str_yes_no(rssconf & KEYPERREN_F));
+ seq_printf(seq, " DisVfVlan: %3s\n",
+ str_yes_no(rssconf & DISABLEVLAN_F));
+ seq_printf(seq, " EnUpSwt: %3s\n",
+ str_yes_no(rssconf & ENABLEUP0_F));
seq_printf(seq, " HashDelay: %3d\n", HASHDELAY_G(rssconf));
if (CHELSIO_CHIP_VERSION(adapter->params.chip) <= CHELSIO_T5)
seq_printf(seq, " VfWrAddr: %3d\n", VFWRADDR_G(rssconf));
@@ -2139,36 +2148,52 @@ static int rss_config_show(struct seq_file *seq, void *v)
seq_printf(seq, " VfWrAddr: %3d\n",
T6_VFWRADDR_G(rssconf));
seq_printf(seq, " KeyMode: %s\n", keymode[KEYMODE_G(rssconf)]);
- seq_printf(seq, " VfWrEn: %3s\n", yesno(rssconf & VFWREN_F));
- seq_printf(seq, " KeyWrEn: %3s\n", yesno(rssconf & KEYWREN_F));
+ seq_printf(seq, " VfWrEn: %3s\n",
+ str_yes_no(rssconf & VFWREN_F));
+ seq_printf(seq, " KeyWrEn: %3s\n",
+ str_yes_no(rssconf & KEYWREN_F));
seq_printf(seq, " KeyWrAddr: %3d\n", KEYWRADDR_G(rssconf));
seq_puts(seq, "\n");
rssconf = t4_read_reg(adapter, TP_RSS_CONFIG_CNG_A);
seq_printf(seq, "TP_RSS_CONFIG_CNG: %#x\n", rssconf);
- seq_printf(seq, " ChnCount3: %3s\n", yesno(rssconf & CHNCOUNT3_F));
- seq_printf(seq, " ChnCount2: %3s\n", yesno(rssconf & CHNCOUNT2_F));
- seq_printf(seq, " ChnCount1: %3s\n", yesno(rssconf & CHNCOUNT1_F));
- seq_printf(seq, " ChnCount0: %3s\n", yesno(rssconf & CHNCOUNT0_F));
- seq_printf(seq, " ChnUndFlow3: %3s\n", yesno(rssconf &
- CHNUNDFLOW3_F));
- seq_printf(seq, " ChnUndFlow2: %3s\n", yesno(rssconf &
- CHNUNDFLOW2_F));
- seq_printf(seq, " ChnUndFlow1: %3s\n", yesno(rssconf &
- CHNUNDFLOW1_F));
- seq_printf(seq, " ChnUndFlow0: %3s\n", yesno(rssconf &
- CHNUNDFLOW0_F));
- seq_printf(seq, " RstChn3: %3s\n", yesno(rssconf & RSTCHN3_F));
- seq_printf(seq, " RstChn2: %3s\n", yesno(rssconf & RSTCHN2_F));
- seq_printf(seq, " RstChn1: %3s\n", yesno(rssconf & RSTCHN1_F));
- seq_printf(seq, " RstChn0: %3s\n", yesno(rssconf & RSTCHN0_F));
- seq_printf(seq, " UpdVld: %3s\n", yesno(rssconf & UPDVLD_F));
- seq_printf(seq, " Xoff: %3s\n", yesno(rssconf & XOFF_F));
- seq_printf(seq, " UpdChn3: %3s\n", yesno(rssconf & UPDCHN3_F));
- seq_printf(seq, " UpdChn2: %3s\n", yesno(rssconf & UPDCHN2_F));
- seq_printf(seq, " UpdChn1: %3s\n", yesno(rssconf & UPDCHN1_F));
- seq_printf(seq, " UpdChn0: %3s\n", yesno(rssconf & UPDCHN0_F));
+ seq_printf(seq, " ChnCount3: %3s\n",
+ str_yes_no(rssconf & CHNCOUNT3_F));
+ seq_printf(seq, " ChnCount2: %3s\n",
+ str_yes_no(rssconf & CHNCOUNT2_F));
+ seq_printf(seq, " ChnCount1: %3s\n",
+ str_yes_no(rssconf & CHNCOUNT1_F));
+ seq_printf(seq, " ChnCount0: %3s\n",
+ str_yes_no(rssconf & CHNCOUNT0_F));
+ seq_printf(seq, " ChnUndFlow3: %3s\n",
+ str_yes_no(rssconf & CHNUNDFLOW3_F));
+ seq_printf(seq, " ChnUndFlow2: %3s\n",
+ str_yes_no(rssconf & CHNUNDFLOW2_F));
+ seq_printf(seq, " ChnUndFlow1: %3s\n",
+ str_yes_no(rssconf & CHNUNDFLOW1_F));
+ seq_printf(seq, " ChnUndFlow0: %3s\n",
+ str_yes_no(rssconf & CHNUNDFLOW0_F));
+ seq_printf(seq, " RstChn3: %3s\n",
+ str_yes_no(rssconf & RSTCHN3_F));
+ seq_printf(seq, " RstChn2: %3s\n",
+ str_yes_no(rssconf & RSTCHN2_F));
+ seq_printf(seq, " RstChn1: %3s\n",
+ str_yes_no(rssconf & RSTCHN1_F));
+ seq_printf(seq, " RstChn0: %3s\n",
+ str_yes_no(rssconf & RSTCHN0_F));
+ seq_printf(seq, " UpdVld: %3s\n",
+ str_yes_no(rssconf & UPDVLD_F));
+ seq_printf(seq, " Xoff: %3s\n",
+ str_yes_no(rssconf & XOFF_F));
+ seq_printf(seq, " UpdChn3: %3s\n",
+ str_yes_no(rssconf & UPDCHN3_F));
+ seq_printf(seq, " UpdChn2: %3s\n",
+ str_yes_no(rssconf & UPDCHN2_F));
+ seq_printf(seq, " UpdChn1: %3s\n",
+ str_yes_no(rssconf & UPDCHN1_F));
+ seq_printf(seq, " UpdChn0: %3s\n",
+ str_yes_no(rssconf & UPDCHN0_F));
seq_printf(seq, " Queue: %3d\n", QUEUE_G(rssconf));
return 0;
@@ -2263,17 +2288,17 @@ static int rss_pf_config_show(struct seq_file *seq, void *v, int idx)
pfconf = v;
seq_printf(seq, "%3d %3s %3s %3s %3d %3d %3d %3s %3s %3s %3s %3s %3d %3d\n",
idx,
- yesno(pfconf->rss_pf_config & MAPENABLE_F),
- yesno(pfconf->rss_pf_config & CHNENABLE_F),
- yesno(pfconf->rss_pf_config & PRTENABLE_F),
+ str_yes_no(pfconf->rss_pf_config & MAPENABLE_F),
+ str_yes_no(pfconf->rss_pf_config & CHNENABLE_F),
+ str_yes_no(pfconf->rss_pf_config & PRTENABLE_F),
G_PFnLKPIDX(pfconf->rss_pf_map, idx),
G_PFnMSKSIZE(pfconf->rss_pf_mask, idx),
IVFWIDTH_G(pfconf->rss_pf_config),
- yesno(pfconf->rss_pf_config & IP6FOURTUPEN_F),
- yesno(pfconf->rss_pf_config & IP6TWOTUPEN_F),
- yesno(pfconf->rss_pf_config & IP4FOURTUPEN_F),
- yesno(pfconf->rss_pf_config & IP4TWOTUPEN_F),
- yesno(pfconf->rss_pf_config & UDPFOURTUPEN_F),
+ str_yes_no(pfconf->rss_pf_config & IP6FOURTUPEN_F),
+ str_yes_no(pfconf->rss_pf_config & IP6TWOTUPEN_F),
+ str_yes_no(pfconf->rss_pf_config & IP4FOURTUPEN_F),
+ str_yes_no(pfconf->rss_pf_config & IP4TWOTUPEN_F),
+ str_yes_no(pfconf->rss_pf_config & UDPFOURTUPEN_F),
CH1DEFAULTQUEUE_G(pfconf->rss_pf_config),
CH0DEFAULTQUEUE_G(pfconf->rss_pf_config));
@@ -2334,16 +2359,16 @@ static int rss_vf_config_show(struct seq_file *seq, void *v, int idx)
seq_printf(seq, "%3d %3s %3s %3d %3s %3s %3s %3s %3s %3s %3s %4d %3d %#10x\n",
idx,
- yesno(vfconf->rss_vf_vfh & VFCHNEN_F),
- yesno(vfconf->rss_vf_vfh & VFPRTEN_F),
+ str_yes_no(vfconf->rss_vf_vfh & VFCHNEN_F),
+ str_yes_no(vfconf->rss_vf_vfh & VFPRTEN_F),
VFLKPIDX_G(vfconf->rss_vf_vfh),
- yesno(vfconf->rss_vf_vfh & VFVLNEX_F),
- yesno(vfconf->rss_vf_vfh & VFUPEN_F),
- yesno(vfconf->rss_vf_vfh & VFIP4FOURTUPEN_F),
- yesno(vfconf->rss_vf_vfh & VFIP6TWOTUPEN_F),
- yesno(vfconf->rss_vf_vfh & VFIP4FOURTUPEN_F),
- yesno(vfconf->rss_vf_vfh & VFIP4TWOTUPEN_F),
- yesno(vfconf->rss_vf_vfh & ENABLEUDPHASH_F),
+ str_yes_no(vfconf->rss_vf_vfh & VFVLNEX_F),
+ str_yes_no(vfconf->rss_vf_vfh & VFUPEN_F),
+ str_yes_no(vfconf->rss_vf_vfh & VFIP4FOURTUPEN_F),
+ str_yes_no(vfconf->rss_vf_vfh & VFIP6TWOTUPEN_F),
+ str_yes_no(vfconf->rss_vf_vfh & VFIP4FOURTUPEN_F),
+ str_yes_no(vfconf->rss_vf_vfh & VFIP4TWOTUPEN_F),
+ str_yes_no(vfconf->rss_vf_vfh & ENABLEUDPHASH_F),
DEFAULTQUEUE_G(vfconf->rss_vf_vfh),
KEYINDEX_G(vfconf->rss_vf_vfh),
vfconf->rss_vf_vfl);
--
2.34.1
Remove the local onoff() implementation and adopt the
str_on_off() from linux/string_helpers.h.
Signed-off-by: Lucas De Marchi <[email protected]>
Acked-by: Daniel Vetter <[email protected]>
Acked-by: Jani Nikula <[email protected]>
---
drivers/gpu/drm/i915/display/g4x_dp.c | 6 ++++--
drivers/gpu/drm/i915/display/intel_display.c | 7 ++++---
drivers/gpu/drm/i915/display/intel_display_trace.h | 3 ++-
drivers/gpu/drm/i915/display/intel_dpll.c | 3 ++-
drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 7 +++++--
drivers/gpu/drm/i915/display/intel_fdi.c | 8 +++++---
drivers/gpu/drm/i915/display/vlv_dsi_pll.c | 3 ++-
drivers/gpu/drm/i915/gt/intel_rc6.c | 5 +++--
drivers/gpu/drm/i915/i915_utils.h | 5 -----
drivers/gpu/drm/i915/vlv_suspend.c | 3 ++-
10 files changed, 29 insertions(+), 21 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/g4x_dp.c b/drivers/gpu/drm/i915/display/g4x_dp.c
index f37677df6ebf..3e729bff1232 100644
--- a/drivers/gpu/drm/i915/display/g4x_dp.c
+++ b/drivers/gpu/drm/i915/display/g4x_dp.c
@@ -5,6 +5,8 @@
* DisplayPort support for G4x,ILK,SNB,IVB,VLV,CHV (HSW+ handled by the DDI code).
*/
+#include <linux/string_helpers.h>
+
#include "g4x_dp.h"
#include "intel_audio.h"
#include "intel_backlight.h"
@@ -191,7 +193,7 @@ static void assert_dp_port(struct intel_dp *intel_dp, bool state)
I915_STATE_WARN(cur_state != state,
"[ENCODER:%d:%s] state assertion failure (expected %s, current %s)\n",
dig_port->base.base.base.id, dig_port->base.base.name,
- onoff(state), onoff(cur_state));
+ str_on_off(state), str_on_off(cur_state));
}
#define assert_dp_port_disabled(d) assert_dp_port((d), false)
@@ -201,7 +203,7 @@ static void assert_edp_pll(struct drm_i915_private *dev_priv, bool state)
I915_STATE_WARN(cur_state != state,
"eDP PLL state assertion failure (expected %s, current %s)\n",
- onoff(state), onoff(cur_state));
+ str_on_off(state), str_on_off(cur_state));
}
#define assert_edp_pll_enabled(d) assert_edp_pll((d), true)
#define assert_edp_pll_disabled(d) assert_edp_pll((d), false)
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 8920bdb53b7b..49f994f36fce 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -377,7 +377,7 @@ static void wait_for_pipe_scanline_moving(struct intel_crtc *crtc, bool state)
if (wait_for(pipe_scanline_is_moving(dev_priv, pipe) == state, 100))
drm_err(&dev_priv->drm,
"pipe %c scanline %s wait timed out\n",
- pipe_name(pipe), onoff(state));
+ pipe_name(pipe), str_on_off(state));
}
static void intel_wait_for_pipe_scanline_stopped(struct intel_crtc *crtc)
@@ -435,7 +435,7 @@ void assert_transcoder(struct drm_i915_private *dev_priv,
I915_STATE_WARN(cur_state != state,
"transcoder %s assertion failure (expected %s, current %s)\n",
transcoder_name(cpu_transcoder),
- onoff(state), onoff(cur_state));
+ str_on_off(state), str_on_off(cur_state));
}
static void assert_plane(struct intel_plane *plane, bool state)
@@ -447,7 +447,8 @@ static void assert_plane(struct intel_plane *plane, bool state)
I915_STATE_WARN(cur_state != state,
"%s assertion failure (expected %s, current %s)\n",
- plane->base.name, onoff(state), onoff(cur_state));
+ plane->base.name, str_on_off(state),
+ str_on_off(cur_state));
}
#define assert_plane_enabled(p) assert_plane(p, true)
diff --git a/drivers/gpu/drm/i915/display/intel_display_trace.h b/drivers/gpu/drm/i915/display/intel_display_trace.h
index dcdd242fffd9..2dd5a4b7f5d8 100644
--- a/drivers/gpu/drm/i915/display/intel_display_trace.h
+++ b/drivers/gpu/drm/i915/display/intel_display_trace.h
@@ -9,6 +9,7 @@
#if !defined(__INTEL_DISPLAY_TRACE_H__) || defined(TRACE_HEADER_MULTI_READ)
#define __INTEL_DISPLAY_TRACE_H__
+#include <linux/string_helpers.h>
#include <linux/types.h>
#include <linux/tracepoint.h>
@@ -161,7 +162,7 @@ TRACE_EVENT(intel_memory_cxsr,
),
TP_printk("%s->%s, pipe A: frame=%u, scanline=%u, pipe B: frame=%u, scanline=%u, pipe C: frame=%u, scanline=%u",
- onoff(__entry->old), onoff(__entry->new),
+ str_on_off(__entry->old), str_on_off(__entry->new),
__entry->frame[PIPE_A], __entry->scanline[PIPE_A],
__entry->frame[PIPE_B], __entry->scanline[PIPE_B],
__entry->frame[PIPE_C], __entry->scanline[PIPE_C])
diff --git a/drivers/gpu/drm/i915/display/intel_dpll.c b/drivers/gpu/drm/i915/display/intel_dpll.c
index 1ce0c171f4fb..1c401fd09eef 100644
--- a/drivers/gpu/drm/i915/display/intel_dpll.c
+++ b/drivers/gpu/drm/i915/display/intel_dpll.c
@@ -4,6 +4,7 @@
*/
#include <linux/kernel.h>
+#include <linux/string_helpers.h>
#include "intel_crtc.h"
#include "intel_de.h"
@@ -1933,7 +1934,7 @@ static void assert_pll(struct drm_i915_private *dev_priv,
cur_state = intel_de_read(dev_priv, DPLL(pipe)) & DPLL_VCO_ENABLE;
I915_STATE_WARN(cur_state != state,
"PLL state assertion failure (expected %s, current %s)\n",
- onoff(state), onoff(cur_state));
+ str_on_off(state), str_on_off(cur_state));
}
void assert_pll_enabled(struct drm_i915_private *i915, enum pipe pipe)
diff --git a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
index 6723c3de5a80..a787995c0f79 100644
--- a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
+++ b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
@@ -21,6 +21,8 @@
* DEALINGS IN THE SOFTWARE.
*/
+#include <linux/string_helpers.h>
+
#include "intel_de.h"
#include "intel_display_types.h"
#include "intel_dpio_phy.h"
@@ -178,13 +180,14 @@ void assert_shared_dpll(struct drm_i915_private *dev_priv,
struct intel_dpll_hw_state hw_state;
if (drm_WARN(&dev_priv->drm, !pll,
- "asserting DPLL %s with no DPLL\n", onoff(state)))
+ "asserting DPLL %s with no DPLL\n", str_on_off(state)))
return;
cur_state = intel_dpll_get_hw_state(dev_priv, pll, &hw_state);
I915_STATE_WARN(cur_state != state,
"%s assertion failure (expected %s, current %s)\n",
- pll->info->name, onoff(state), onoff(cur_state));
+ pll->info->name, str_on_off(state),
+ str_on_off(cur_state));
}
static enum tc_port icl_pll_id_to_tc_port(enum intel_dpll_id id)
diff --git a/drivers/gpu/drm/i915/display/intel_fdi.c b/drivers/gpu/drm/i915/display/intel_fdi.c
index 3d6e22923601..0fd2941313aa 100644
--- a/drivers/gpu/drm/i915/display/intel_fdi.c
+++ b/drivers/gpu/drm/i915/display/intel_fdi.c
@@ -3,6 +3,8 @@
* Copyright © 2020 Intel Corporation
*/
+#include <linux/string_helpers.h>
+
#include "intel_atomic.h"
#include "intel_crtc.h"
#include "intel_ddi.h"
@@ -29,7 +31,7 @@ static void assert_fdi_tx(struct drm_i915_private *dev_priv,
}
I915_STATE_WARN(cur_state != state,
"FDI TX state assertion failure (expected %s, current %s)\n",
- onoff(state), onoff(cur_state));
+ str_on_off(state), str_on_off(cur_state));
}
void assert_fdi_tx_enabled(struct drm_i915_private *i915, enum pipe pipe)
@@ -50,7 +52,7 @@ static void assert_fdi_rx(struct drm_i915_private *dev_priv,
cur_state = intel_de_read(dev_priv, FDI_RX_CTL(pipe)) & FDI_RX_ENABLE;
I915_STATE_WARN(cur_state != state,
"FDI RX state assertion failure (expected %s, current %s)\n",
- onoff(state), onoff(cur_state));
+ str_on_off(state), str_on_off(cur_state));
}
void assert_fdi_rx_enabled(struct drm_i915_private *i915, enum pipe pipe)
@@ -88,7 +90,7 @@ static void assert_fdi_rx_pll(struct drm_i915_private *i915,
cur_state = intel_de_read(i915, FDI_RX_CTL(pipe)) & FDI_RX_PLL_ENABLE;
I915_STATE_WARN(cur_state != state,
"FDI RX PLL assertion failure (expected %s, current %s)\n",
- onoff(state), onoff(cur_state));
+ str_on_off(state), str_on_off(cur_state));
}
void assert_fdi_rx_pll_enabled(struct drm_i915_private *i915, enum pipe pipe)
diff --git a/drivers/gpu/drm/i915/display/vlv_dsi_pll.c b/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
index 1b81797dd02e..7f9c0a7c3446 100644
--- a/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
+++ b/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
@@ -26,6 +26,7 @@
*/
#include <linux/kernel.h>
+#include <linux/string_helpers.h>
#include "i915_drv.h"
#include "intel_de.h"
@@ -580,7 +581,7 @@ static void assert_dsi_pll(struct drm_i915_private *i915, bool state)
I915_STATE_WARN(cur_state != state,
"DSI PLL state assertion failure (expected %s, current %s)\n",
- onoff(state), onoff(cur_state));
+ str_on_off(state), str_on_off(cur_state));
}
void assert_dsi_pll_enabled(struct drm_i915_private *i915)
diff --git a/drivers/gpu/drm/i915/gt/intel_rc6.c b/drivers/gpu/drm/i915/gt/intel_rc6.c
index bb0d6e363f5d..cde83e382ebe 100644
--- a/drivers/gpu/drm/i915/gt/intel_rc6.c
+++ b/drivers/gpu/drm/i915/gt/intel_rc6.c
@@ -4,6 +4,7 @@
*/
#include <linux/pm_runtime.h>
+#include <linux/string_helpers.h>
#include "i915_drv.h"
#include "i915_vgpu.h"
@@ -428,8 +429,8 @@ static bool bxt_check_bios_rc6_setup(struct intel_rc6 *rc6)
rc_sw_target >>= RC_SW_TARGET_STATE_SHIFT;
drm_dbg(&i915->drm, "BIOS enabled RC states: "
"HW_CTRL %s HW_RC6 %s SW_TARGET_STATE %x\n",
- onoff(rc_ctl & GEN6_RC_CTL_HW_ENABLE),
- onoff(rc_ctl & GEN6_RC_CTL_RC6_ENABLE),
+ str_on_off(rc_ctl & GEN6_RC_CTL_HW_ENABLE),
+ str_on_off(rc_ctl & GEN6_RC_CTL_RC6_ENABLE),
rc_sw_target);
if (!(intel_uncore_read(uncore, RC6_LOCATION) & RC6_CTX_IN_DRAM)) {
diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h
index 6d26920d0632..3ff9611ff81c 100644
--- a/drivers/gpu/drm/i915/i915_utils.h
+++ b/drivers/gpu/drm/i915/i915_utils.h
@@ -400,11 +400,6 @@ wait_remaining_ms_from_jiffies(unsigned long timestamp_jiffies, int to_wait_ms)
#define MBps(x) KBps(1000 * (x))
#define GBps(x) ((u64)1000 * MBps((x)))
-static inline const char *onoff(bool v)
-{
- return v ? "on" : "off";
-}
-
void add_taint_for_CI(struct drm_i915_private *i915, unsigned int taint);
static inline void __add_taint_for_CI(unsigned int taint)
{
diff --git a/drivers/gpu/drm/i915/vlv_suspend.c b/drivers/gpu/drm/i915/vlv_suspend.c
index 23adb64d640a..a49a7da57d5a 100644
--- a/drivers/gpu/drm/i915/vlv_suspend.c
+++ b/drivers/gpu/drm/i915/vlv_suspend.c
@@ -3,6 +3,7 @@
* Copyright © 2020 Intel Corporation
*/
+#include <linux/string_helpers.h>
#include <linux/kernel.h>
#include <drm/drm_print.h>
@@ -373,7 +374,7 @@ static void vlv_wait_for_gt_wells(struct drm_i915_private *dev_priv,
if (vlv_wait_for_pw_status(dev_priv, mask, val))
drm_dbg(&dev_priv->drm,
"timeout waiting for GT wells to go %s\n",
- onoff(wait_for_on));
+ str_on_off(wait_for_on));
}
static void vlv_check_no_gt_access(struct drm_i915_private *i915)
--
2.34.1
linux/string_helpers.h provides a helper to return "yes"/"no" strings.
Replace the open coded versions with str_yes_no(). The places were
identified with the following semantic patch:
@@
expression b;
@@
- b ? "yes" : "no"
+ str_yes_no(b)
Then the includes were added, so we include-what-we-use, and parenthesis
adjusted in drivers/gpu/drm/v3d/v3d_debugfs.c. After the conversion we
still see the same binary sizes:
text data bss dec hex filename
51149 3295 212 54656 d580 virtio/virtio-gpu.ko.old
51149 3295 212 54656 d580 virtio/virtio-gpu.ko
1441491 60340 800 1502631 16eda7 radeon/radeon.ko.old
1441491 60340 800 1502631 16eda7 radeon/radeon.ko
6125369 328538 34000 6487907 62ff63 amd/amdgpu/amdgpu.ko.old
6125369 328538 34000 6487907 62ff63 amd/amdgpu/amdgpu.ko
411986 10490 6176 428652 68a6c drm.ko.old
411986 10490 6176 428652 68a6c drm.ko
98129 1636 264 100029 186bd dp/drm_dp_helper.ko.old
98129 1636 264 100029 186bd dp/drm_dp_helper.ko
1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko.old
1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko
Signed-off-by: Lucas De Marchi <[email protected]>
---
drivers/gpu/drm/amd/amdgpu/atom.c | 4 +++-
drivers/gpu/drm/dp/drm_dp.c | 3 ++-
drivers/gpu/drm/drm_client_modeset.c | 3 ++-
drivers/gpu/drm/drm_gem.c | 3 ++-
drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c | 5 ++++-
drivers/gpu/drm/radeon/atom.c | 3 ++-
drivers/gpu/drm/v3d/v3d_debugfs.c | 11 ++++++-----
drivers/gpu/drm/virtio/virtgpu_debugfs.c | 4 +++-
8 files changed, 24 insertions(+), 12 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/atom.c b/drivers/gpu/drm/amd/amdgpu/atom.c
index 6fa2229b7229..1c5d9388ad0b 100644
--- a/drivers/gpu/drm/amd/amdgpu/atom.c
+++ b/drivers/gpu/drm/amd/amdgpu/atom.c
@@ -25,6 +25,8 @@
#include <linux/module.h>
#include <linux/sched.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
+
#include <asm/unaligned.h>
#include <drm/drm_util.h>
@@ -740,7 +742,7 @@ static void atom_op_jump(atom_exec_context *ctx, int *ptr, int arg)
break;
}
if (arg != ATOM_COND_ALWAYS)
- SDEBUG(" taken: %s\n", execute ? "yes" : "no");
+ SDEBUG(" taken: %s\n", str_yes_no(execute));
SDEBUG(" target: 0x%04X\n", target);
if (execute) {
if (ctx->last_jump == (ctx->start + target)) {
diff --git a/drivers/gpu/drm/dp/drm_dp.c b/drivers/gpu/drm/dp/drm_dp.c
index 6d43325acca5..c43577c8ac4d 100644
--- a/drivers/gpu/drm/dp/drm_dp.c
+++ b/drivers/gpu/drm/dp/drm_dp.c
@@ -28,6 +28,7 @@
#include <linux/module.h>
#include <linux/sched.h>
#include <linux/seq_file.h>
+#include <linux/string_helpers.h>
#include <drm/dp/drm_dp_helper.h>
#include <drm/drm_print.h>
@@ -1239,7 +1240,7 @@ void drm_dp_downstream_debug(struct seq_file *m,
bool branch_device = drm_dp_is_branch(dpcd);
seq_printf(m, "\tDP branch device present: %s\n",
- branch_device ? "yes" : "no");
+ str_yes_no(branch_device));
if (!branch_device)
return;
diff --git a/drivers/gpu/drm/drm_client_modeset.c b/drivers/gpu/drm/drm_client_modeset.c
index ced09c7c06f9..e6346a67cd98 100644
--- a/drivers/gpu/drm/drm_client_modeset.c
+++ b/drivers/gpu/drm/drm_client_modeset.c
@@ -11,6 +11,7 @@
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
#include <drm/drm_atomic.h>
#include <drm/drm_client.h>
@@ -241,7 +242,7 @@ static void drm_client_connectors_enabled(struct drm_connector **connectors,
connector = connectors[i];
enabled[i] = drm_connector_enabled(connector, true);
DRM_DEBUG_KMS("connector %d enabled? %s\n", connector->base.id,
- connector->display_info.non_desktop ? "non desktop" : enabled[i] ? "yes" : "no");
+ connector->display_info.non_desktop ? "non desktop" : str_yes_no(enabled[i]));
any_enabled |= enabled[i];
}
diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
index 21631c22b374..3c888db59ea4 100644
--- a/drivers/gpu/drm/drm_gem.c
+++ b/drivers/gpu/drm/drm_gem.c
@@ -37,6 +37,7 @@
#include <linux/pagevec.h>
#include <linux/shmem_fs.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
#include <linux/types.h>
#include <linux/uaccess.h>
@@ -1145,7 +1146,7 @@ void drm_gem_print_info(struct drm_printer *p, unsigned int indent,
drm_vma_node_start(&obj->vma_node));
drm_printf_indent(p, indent, "size=%zu\n", obj->size);
drm_printf_indent(p, indent, "imported=%s\n",
- obj->import_attach ? "yes" : "no");
+ str_yes_no(obj->import_attach));
if (obj->funcs->print_info)
obj->funcs->print_info(p, indent, obj);
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c b/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c
index a11637b0f6cc..d063d0dc13c5 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c
@@ -21,6 +21,9 @@
*
* Authors: Ben Skeggs
*/
+
+#include <linux/string_helpers.h>
+
#include "aux.h"
#include "pad.h"
@@ -94,7 +97,7 @@ void
nvkm_i2c_aux_monitor(struct nvkm_i2c_aux *aux, bool monitor)
{
struct nvkm_i2c_pad *pad = aux->pad;
- AUX_TRACE(aux, "monitor: %s", monitor ? "yes" : "no");
+ AUX_TRACE(aux, "monitor: %s", str_yes_no(monitor));
if (monitor)
nvkm_i2c_pad_mode(pad, NVKM_I2C_PAD_AUX);
else
diff --git a/drivers/gpu/drm/radeon/atom.c b/drivers/gpu/drm/radeon/atom.c
index f15b20da5315..c1bbfbe28bda 100644
--- a/drivers/gpu/drm/radeon/atom.c
+++ b/drivers/gpu/drm/radeon/atom.c
@@ -25,6 +25,7 @@
#include <linux/module.h>
#include <linux/sched.h>
#include <linux/slab.h>
+#include <linux/string_helpers.h>
#include <asm/unaligned.h>
@@ -722,7 +723,7 @@ static void atom_op_jump(atom_exec_context *ctx, int *ptr, int arg)
break;
}
if (arg != ATOM_COND_ALWAYS)
- SDEBUG(" taken: %s\n", execute ? "yes" : "no");
+ SDEBUG(" taken: %s\n", str_yes_no(execute));
SDEBUG(" target: 0x%04X\n", target);
if (execute) {
if (ctx->last_jump == (ctx->start + target)) {
diff --git a/drivers/gpu/drm/v3d/v3d_debugfs.c b/drivers/gpu/drm/v3d/v3d_debugfs.c
index e76b24bb8828..29fd13109e43 100644
--- a/drivers/gpu/drm/v3d/v3d_debugfs.c
+++ b/drivers/gpu/drm/v3d/v3d_debugfs.c
@@ -6,6 +6,7 @@
#include <linux/debugfs.h>
#include <linux/pm_runtime.h>
#include <linux/seq_file.h>
+#include <linux/string_helpers.h>
#include <drm/drm_debugfs.h>
@@ -148,15 +149,15 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
V3D_GET_FIELD(ident3, V3D_HUB_IDENT3_IPREV),
V3D_GET_FIELD(ident3, V3D_HUB_IDENT3_IPIDX));
seq_printf(m, "MMU: %s\n",
- (ident2 & V3D_HUB_IDENT2_WITH_MMU) ? "yes" : "no");
+ str_yes_no(ident2 & V3D_HUB_IDENT2_WITH_MMU));
seq_printf(m, "TFU: %s\n",
- (ident1 & V3D_HUB_IDENT1_WITH_TFU) ? "yes" : "no");
+ str_yes_no(ident1 & V3D_HUB_IDENT1_WITH_TFU));
seq_printf(m, "TSY: %s\n",
- (ident1 & V3D_HUB_IDENT1_WITH_TSY) ? "yes" : "no");
+ str_yes_no(ident1 & V3D_HUB_IDENT1_WITH_TSY));
seq_printf(m, "MSO: %s\n",
- (ident1 & V3D_HUB_IDENT1_WITH_MSO) ? "yes" : "no");
+ str_yes_no(ident1 & V3D_HUB_IDENT1_WITH_MSO));
seq_printf(m, "L3C: %s (%dkb)\n",
- (ident1 & V3D_HUB_IDENT1_WITH_L3C) ? "yes" : "no",
+ str_yes_no(ident1 & V3D_HUB_IDENT1_WITH_L3C),
V3D_GET_FIELD(ident2, V3D_HUB_IDENT2_L3C_NKB));
for (core = 0; core < cores; core++) {
diff --git a/drivers/gpu/drm/virtio/virtgpu_debugfs.c b/drivers/gpu/drm/virtio/virtgpu_debugfs.c
index b6954e2f75e6..853dd9aa397e 100644
--- a/drivers/gpu/drm/virtio/virtgpu_debugfs.c
+++ b/drivers/gpu/drm/virtio/virtgpu_debugfs.c
@@ -23,6 +23,8 @@
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
+#include <linux/string_helpers.h>
+
#include <drm/drm_debugfs.h>
#include <drm/drm_file.h>
@@ -31,7 +33,7 @@
static void virtio_gpu_add_bool(struct seq_file *m, const char *name,
bool value)
{
- seq_printf(m, "%-16s : %s\n", name, value ? "yes" : "no");
+ seq_printf(m, "%-16s : %s\n", name, str_yes_no(value));
}
static void virtio_gpu_add_int(struct seq_file *m, const char *name, int value)
--
2.34.1
On Wed, Jan 26, 2022 at 11:39 AM Lucas De Marchi
<[email protected]> wrote:
>
> linux/string_helpers.h provides a helper to return "yes"/"no" strings.
> Replace the open coded versions with str_yes_no(). The places were
> identified with the following semantic patch:
>
> @@
> expression b;
> @@
>
> - b ? "yes" : "no"
> + str_yes_no(b)
>
> Then the includes were added, so we include-what-we-use, and parenthesis
> adjusted in drivers/gpu/drm/v3d/v3d_debugfs.c. After the conversion we
> still see the same binary sizes:
>
> text data bss dec hex filename
> 51149 3295 212 54656 d580 virtio/virtio-gpu.ko.old
> 51149 3295 212 54656 d580 virtio/virtio-gpu.ko
> 1441491 60340 800 1502631 16eda7 radeon/radeon.ko.old
> 1441491 60340 800 1502631 16eda7 radeon/radeon.ko
> 6125369 328538 34000 6487907 62ff63 amd/amdgpu/amdgpu.ko.old
> 6125369 328538 34000 6487907 62ff63 amd/amdgpu/amdgpu.ko
> 411986 10490 6176 428652 68a6c drm.ko.old
> 411986 10490 6176 428652 68a6c drm.ko
> 98129 1636 264 100029 186bd dp/drm_dp_helper.ko.old
> 98129 1636 264 100029 186bd dp/drm_dp_helper.ko
> 1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko.old
> 1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko
This probably won't change for modules, but if you compile in the
linker may try to optimize it. Would be nice to see the old-new for
`make allyesconfig` or equivalent.
...
> seq_printf(m, "\tDP branch device present: %s\n",
> - branch_device ? "yes" : "no");
> + str_yes_no(branch_device));
Can it be now on one line? Same Q for all similar cases in the entire series.
--
With Best Regards,
Andy Shevchenko
On Wed, Jan 26, 2022 at 11:39 AM Lucas De Marchi
<[email protected]> wrote:
>
> Add some helpers under lib/string_helpers.h so they can be used
> throughout the kernel. When I started doing this there were 2 other
> previous attempts I know of, not counting the iterations each of them
> had:
>
> 1) https://lore.kernel.org/all/[email protected]/
> 2) https://lore.kernel.org/all/[email protected]/#t
>
> Now there is also the v1 of this same patch series:
> https://lore.kernel.org/all/[email protected]/
>
> Going through the comments I tried to find some common ground and
> justification for what is in here, addressing some of the concerns
> raised.
>
> a. This version should be a drop-in replacement for what is currently in
> the tree, with no change in behavior or binary size. For binary
> size what I checked was that the linked objects in the end have the
> same size (gcc 11). From comments in the previous attempts this seems
> also the case for earlier compiler versions
>
> b. I didn't change the function name to choice_* as suggested by Andrew
> Morton in [email protected]
> because other people argumented in favor of shorter names for these
> simple helpers - if they are long and people simply not use due to
> that, we failed. However as pointed out in v1 of this patchseries,
> onoff(), yesno(), enabledisable(), enableddisabled() have some
> issues: the last 2 are hard to read and for the first 2 it would not
> be hard to have the symbol to clash with variable names.
> From comments in v1, most people were in favor (or at least not
> opposed) to using str_on_off(), str_yes_no(), str_enable_disable()
> and str_enabled_disabled().
>
> c. Use string_helper.h for these helpers - pulling string.h in the
> compilations units was one of the concerns and I think re-using this
> already existing header is better than creating a new string-choice.h
>
> d. One alternative to all of this suggested by Christian König
> ([email protected]) would be to add a
> printk format. But besides the comment, he also seemed to like
> the common function. This brought the argument from others that the
> simple yesno()/enabledisable() already used in the code (or new
> renamed version) is easier to remember and use than e.g. %py[DOY]
I do not see any impediments to this series to be pulled.
Thanks for the work you've done!
> Changes in v2:
>
> - Use str_ prefix and separate other words with underscore: it's a
> little bit longer, but should improve readability
>
> - Patches we re-split due to the rename: first patch adds all the new
> functions, then additional patches try to do one conversion at a
> time. While doing so, there were some fixes for issues already
> present along the way
>
> - Style suggestions from v1 were adopted
>
> In v1 it was suggested to apply this in drm-misc. I will leave this to
> maintainers to decide: maybe it would be simpler to merge the first
> patches on drm-intel-next, wait for the back merge and merge the rest
> through drm-misc - my fear is a big conflict with other work going in
> drm-intel-next since the bulk of the rename is there.
>
> I tried to figure out acks and reviews from v1 and apply them to how the
> patches are now split.
>
> thanks
> Lucas De Marchi
>
> Lucas De Marchi (11):
> lib/string_helpers: Consolidate string helpers implementation
> drm/i915: Fix trailing semicolon
> drm/i915: Use str_yes_no()
> drm/i915: Use str_enable_disable()
> drm/i915: Use str_enabled_disabled()
> drm/i915: Use str_on_off()
> drm/amd/display: Use str_yes_no()
> drm/gem: Sort includes alphabetically
> drm: Convert open-coded yes/no strings to yesno()
> tomoyo: Use str_yes_no()
> cxgb4: Use str_yes_no()
>
> drivers/gpu/drm/amd/amdgpu/atom.c | 4 +-
> .../amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 14 +-
> drivers/gpu/drm/dp/drm_dp.c | 3 +-
> drivers/gpu/drm/drm_client_modeset.c | 3 +-
> drivers/gpu/drm/drm_gem.c | 23 +-
> drivers/gpu/drm/i915/display/g4x_dp.c | 6 +-
> .../gpu/drm/i915/display/intel_backlight.c | 3 +-
> drivers/gpu/drm/i915/display/intel_ddi.c | 4 +-
> drivers/gpu/drm/i915/display/intel_display.c | 46 ++--
> .../drm/i915/display/intel_display_debugfs.c | 74 +++---
> .../drm/i915/display/intel_display_power.c | 4 +-
> .../drm/i915/display/intel_display_trace.h | 9 +-
> drivers/gpu/drm/i915/display/intel_dp.c | 20 +-
> drivers/gpu/drm/i915/display/intel_dpll.c | 3 +-
> drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 7 +-
> drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 7 +-
> drivers/gpu/drm/i915/display/intel_fbc.c | 4 +-
> drivers/gpu/drm/i915/display/intel_fdi.c | 8 +-
> drivers/gpu/drm/i915/display/intel_hdmi.c | 3 +-
> drivers/gpu/drm/i915/display/intel_sprite.c | 6 +-
> drivers/gpu/drm/i915/display/vlv_dsi_pll.c | 3 +-
> .../gpu/drm/i915/gem/selftests/huge_pages.c | 9 +-
> .../drm/i915/gem/selftests/i915_gem_context.c | 7 +-
> drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 3 +-
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 11 +-
> .../drm/i915/gt/intel_execlists_submission.c | 7 +-
> drivers/gpu/drm/i915/gt/intel_gt_pm.c | 3 +-
> drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c | 52 ++--
> drivers/gpu/drm/i915/gt/intel_rc6.c | 5 +-
> drivers/gpu/drm/i915/gt/intel_reset.c | 3 +-
> drivers/gpu/drm/i915/gt/intel_rps.c | 13 +-
> drivers/gpu/drm/i915/gt/intel_sseu.c | 9 +-
> drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c | 10 +-
> drivers/gpu/drm/i915/gt/selftest_timeline.c | 3 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 5 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 5 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c | 6 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 4 +-
> drivers/gpu/drm/i915/gt/uc/intel_uc.c | 14 +-
> drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c | 20 +-
> drivers/gpu/drm/i915/i915_debugfs.c | 17 +-
> drivers/gpu/drm/i915/i915_driver.c | 4 +-
> drivers/gpu/drm/i915/i915_gpu_error.c | 9 +-
> drivers/gpu/drm/i915/i915_params.c | 5 +-
> drivers/gpu/drm/i915/i915_utils.h | 21 +-
> drivers/gpu/drm/i915/intel_device_info.c | 8 +-
> drivers/gpu/drm/i915/intel_dram.c | 10 +-
> drivers/gpu/drm/i915/intel_pm.c | 14 +-
> drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c | 4 +-
> drivers/gpu/drm/i915/selftests/i915_active.c | 3 +-
> drivers/gpu/drm/i915/vlv_suspend.c | 3 +-
> drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c | 5 +-
> drivers/gpu/drm/radeon/atom.c | 3 +-
> drivers/gpu/drm/v3d/v3d_debugfs.c | 11 +-
> drivers/gpu/drm/virtio/virtgpu_debugfs.c | 4 +-
> .../ethernet/chelsio/cxgb4/cxgb4_debugfs.c | 249 ++++++++++--------
> include/linux/string_helpers.h | 20 ++
> security/tomoyo/audit.c | 2 +-
> security/tomoyo/common.c | 19 +-
> security/tomoyo/common.h | 1 -
> 60 files changed, 482 insertions(+), 373 deletions(-)
>
> --
> 2.34.1
>
--
With Best Regards,
Andy Shevchenko
On Wed, Jan 26, 2022 at 12:12:50PM +0200, Andy Shevchenko wrote:
>On Wed, Jan 26, 2022 at 11:39 AM Lucas De Marchi
><[email protected]> wrote:
>>
>> linux/string_helpers.h provides a helper to return "yes"/"no" strings.
>> Replace the open coded versions with str_yes_no(). The places were
oops, I replaced yesno() here but forgot to do so in the title
>> identified with the following semantic patch:
>>
>> @@
>> expression b;
>> @@
>>
>> - b ? "yes" : "no"
>> + str_yes_no(b)
>>
>> Then the includes were added, so we include-what-we-use, and parenthesis
>> adjusted in drivers/gpu/drm/v3d/v3d_debugfs.c. After the conversion we
>> still see the same binary sizes:
>>
>> text data bss dec hex filename
>> 51149 3295 212 54656 d580 virtio/virtio-gpu.ko.old
>> 51149 3295 212 54656 d580 virtio/virtio-gpu.ko
>> 1441491 60340 800 1502631 16eda7 radeon/radeon.ko.old
>> 1441491 60340 800 1502631 16eda7 radeon/radeon.ko
>> 6125369 328538 34000 6487907 62ff63 amd/amdgpu/amdgpu.ko.old
>> 6125369 328538 34000 6487907 62ff63 amd/amdgpu/amdgpu.ko
>> 411986 10490 6176 428652 68a6c drm.ko.old
>> 411986 10490 6176 428652 68a6c drm.ko
>> 98129 1636 264 100029 186bd dp/drm_dp_helper.ko.old
>> 98129 1636 264 100029 186bd dp/drm_dp_helper.ko
>> 1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko.old
>> 1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko
>
>This probably won't change for modules, but if you compile in the
>linker may try to optimize it. Would be nice to see the old-new for
>`make allyesconfig` or equivalent.
just like it would already do, no? I can try and see what happens, but
my feeling is that we won't have any change.
>
>...
>
>> seq_printf(m, "\tDP branch device present: %s\n",
>> - branch_device ? "yes" : "no");
>> + str_yes_no(branch_device));
>
>Can it be now on one line? Same Q for all similar cases in the entire series.
I saw that question in the previous version. I think those are very
subjective is they all go a little bit over 80 chars. Some maintainers
may prefer one way or the other.
Here we are reducing just 3 chars so I assumed that is the preferred
style here. Also keeping it as is helps with the mass conversion since
it's easily repeatable if another iteration is needed.
thanks
Lucas De Marchi
On Wed, Jan 26, 2022 at 02:43:45AM -0800, Lucas De Marchi wrote:
> On Wed, Jan 26, 2022 at 12:12:50PM +0200, Andy Shevchenko wrote:
> > On Wed, Jan 26, 2022 at 11:39 AM Lucas De Marchi
> > <[email protected]> wrote:
...
> > > 411986 10490 6176 428652 68a6c drm.ko.old
> > > 411986 10490 6176 428652 68a6c drm.ko
> > > 98129 1636 264 100029 186bd dp/drm_dp_helper.ko.old
> > > 98129 1636 264 100029 186bd dp/drm_dp_helper.ko
> > > 1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko.old
> > > 1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko
> >
> > This probably won't change for modules, but if you compile in the
> > linker may try to optimize it. Would be nice to see the old-new for
> > `make allyesconfig` or equivalent.
>
> just like it would already do, no? I can try and see what happens, but
> my feeling is that we won't have any change.
Maybe not or maybe a small win. Depends how compiler puts / linker sees
that in two cases. (Yeah, likely it should be no differences if all
instances are already caught by linker)
--
With Best Regards,
Andy Shevchenko
On 2022-01-26 04:39, Lucas De Marchi wrote:
> Remove the local yesno() implementation and adopt the str_yes_no() from
> linux/string_helpers.h.
>
> Signed-off-by: Lucas De Marchi <[email protected]>
Reviewed-by: Harry Wentland <[email protected]>
Harry
> ---
> .../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 14 +++++---------
> 1 file changed, 5 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
> index 26719efa5396..5ff1076b9130 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
> @@ -23,6 +23,7 @@
> *
> */
>
> +#include <linux/string_helpers.h>
> #include <linux/uaccess.h>
>
> #include "dc.h"
> @@ -49,11 +50,6 @@ struct dmub_debugfs_trace_entry {
> uint32_t param1;
> };
>
> -static inline const char *yesno(bool v)
> -{
> - return v ? "yes" : "no";
> -}
> -
> /* parse_write_buffer_into_params - Helper function to parse debugfs write buffer into an array
> *
> * Function takes in attributes passed to debugfs write entry
> @@ -853,12 +849,12 @@ static int psr_capability_show(struct seq_file *m, void *data)
> if (!(link->connector_signal & SIGNAL_TYPE_EDP))
> return -ENODEV;
>
> - seq_printf(m, "Sink support: %s", yesno(link->dpcd_caps.psr_caps.psr_version != 0));
> + seq_printf(m, "Sink support: %s", str_yes_no(link->dpcd_caps.psr_caps.psr_version != 0));
> if (link->dpcd_caps.psr_caps.psr_version)
> seq_printf(m, " [0x%02x]", link->dpcd_caps.psr_caps.psr_version);
> seq_puts(m, "\n");
>
> - seq_printf(m, "Driver support: %s", yesno(link->psr_settings.psr_feature_enabled));
> + seq_printf(m, "Driver support: %s", str_yes_no(link->psr_settings.psr_feature_enabled));
> if (link->psr_settings.psr_version)
> seq_printf(m, " [0x%02x]", link->psr_settings.psr_version);
> seq_puts(m, "\n");
> @@ -1207,8 +1203,8 @@ static int dp_dsc_fec_support_show(struct seq_file *m, void *data)
> drm_modeset_drop_locks(&ctx);
> drm_modeset_acquire_fini(&ctx);
>
> - seq_printf(m, "FEC_Sink_Support: %s\n", yesno(is_fec_supported));
> - seq_printf(m, "DSC_Sink_Support: %s\n", yesno(is_dsc_supported));
> + seq_printf(m, "FEC_Sink_Support: %s\n", str_yes_no(is_fec_supported));
> + seq_printf(m, "DSC_Sink_Support: %s\n", str_yes_no(is_dsc_supported));
>
> return ret;
> }
On Wed, 26 Jan 2022, Lucas De Marchi <[email protected]> wrote:
> Sort includes alphabetically so it's easier to add/remove includes and
> know when that is needed.
>
> Signed-off-by: Lucas De Marchi <[email protected]>
Reviewed-by: Jani Nikula <[email protected]>
> ---
> drivers/gpu/drm/drm_gem.c | 20 ++++++++++----------
> 1 file changed, 10 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
> index 4dcdec6487bb..21631c22b374 100644
> --- a/drivers/gpu/drm/drm_gem.c
> +++ b/drivers/gpu/drm/drm_gem.c
> @@ -25,20 +25,20 @@
> *
> */
>
> -#include <linux/types.h>
> -#include <linux/slab.h>
> -#include <linux/mm.h>
> -#include <linux/uaccess.h>
> -#include <linux/fs.h>
> +#include <linux/dma-buf-map.h>
> +#include <linux/dma-buf.h>
> #include <linux/file.h>
> -#include <linux/module.h>
> +#include <linux/fs.h>
> +#include <linux/mem_encrypt.h>
> +#include <linux/mm.h>
> #include <linux/mman.h>
> +#include <linux/module.h>
> #include <linux/pagemap.h>
> -#include <linux/shmem_fs.h>
> -#include <linux/dma-buf.h>
> -#include <linux/dma-buf-map.h>
> -#include <linux/mem_encrypt.h>
> #include <linux/pagevec.h>
> +#include <linux/shmem_fs.h>
> +#include <linux/slab.h>
> +#include <linux/types.h>
> +#include <linux/uaccess.h>
>
> #include <drm/drm.h>
> #include <drm/drm_device.h>
--
Jani Nikula, Intel Open Source Graphics Center
On Wed, 26 Jan 2022, Lucas De Marchi <[email protected]> wrote:
> Remove the trailing semicolon, as correctly warned by checkpatch:
>
> -:1189: WARNING:TRAILING_SEMICOLON: macros should not use a trailing semicolon
> #1189: FILE: drivers/gpu/drm/i915/intel_device_info.c:119:
> +#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->display.name));
>
> Signed-off-by: Lucas De Marchi <[email protected]>
Reviewed-by: Jani Nikula <[email protected]>
> ---
> drivers/gpu/drm/i915/intel_device_info.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c
> index 93b251b25aba..94da5aa37391 100644
> --- a/drivers/gpu/drm/i915/intel_device_info.c
> +++ b/drivers/gpu/drm/i915/intel_device_info.c
> @@ -114,7 +114,7 @@ void intel_device_info_print_static(const struct intel_device_info *info,
> DEV_INFO_FOR_EACH_FLAG(PRINT_FLAG);
> #undef PRINT_FLAG
>
> -#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->display.name));
> +#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->display.name))
> DEV_INFO_DISPLAY_FOR_EACH_FLAG(PRINT_FLAG);
> #undef PRINT_FLAG
> }
--
Jani Nikula, Intel Open Source Graphics Center
On Wed, 26 Jan 2022, Lucas De Marchi <[email protected]> wrote:
> linux/string_helpers.h provides a helper to return "yes"/"no" strings.
> Replace the open coded versions with str_yes_no(). The places were
> identified with the following semantic patch:
>
> @@
> expression b;
> @@
>
> - b ? "yes" : "no"
> + str_yes_no(b)
>
> Then the includes were added, so we include-what-we-use, and parenthesis
> adjusted in drivers/gpu/drm/v3d/v3d_debugfs.c. After the conversion we
> still see the same binary sizes:
>
> text data bss dec hex filename
> 51149 3295 212 54656 d580 virtio/virtio-gpu.ko.old
> 51149 3295 212 54656 d580 virtio/virtio-gpu.ko
> 1441491 60340 800 1502631 16eda7 radeon/radeon.ko.old
> 1441491 60340 800 1502631 16eda7 radeon/radeon.ko
> 6125369 328538 34000 6487907 62ff63 amd/amdgpu/amdgpu.ko.old
> 6125369 328538 34000 6487907 62ff63 amd/amdgpu/amdgpu.ko
> 411986 10490 6176 428652 68a6c drm.ko.old
> 411986 10490 6176 428652 68a6c drm.ko
> 98129 1636 264 100029 186bd dp/drm_dp_helper.ko.old
> 98129 1636 264 100029 186bd dp/drm_dp_helper.ko
> 1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko.old
> 1973432 109640 2352 2085424 1fd230 nouveau/nouveau.ko
>
> Signed-off-by: Lucas De Marchi <[email protected]>
Reviewed-by: Jani Nikula <[email protected]>
> ---
> drivers/gpu/drm/amd/amdgpu/atom.c | 4 +++-
> drivers/gpu/drm/dp/drm_dp.c | 3 ++-
> drivers/gpu/drm/drm_client_modeset.c | 3 ++-
> drivers/gpu/drm/drm_gem.c | 3 ++-
> drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c | 5 ++++-
> drivers/gpu/drm/radeon/atom.c | 3 ++-
> drivers/gpu/drm/v3d/v3d_debugfs.c | 11 ++++++-----
> drivers/gpu/drm/virtio/virtgpu_debugfs.c | 4 +++-
> 8 files changed, 24 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/atom.c b/drivers/gpu/drm/amd/amdgpu/atom.c
> index 6fa2229b7229..1c5d9388ad0b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/atom.c
> +++ b/drivers/gpu/drm/amd/amdgpu/atom.c
> @@ -25,6 +25,8 @@
> #include <linux/module.h>
> #include <linux/sched.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
> +
> #include <asm/unaligned.h>
>
> #include <drm/drm_util.h>
> @@ -740,7 +742,7 @@ static void atom_op_jump(atom_exec_context *ctx, int *ptr, int arg)
> break;
> }
> if (arg != ATOM_COND_ALWAYS)
> - SDEBUG(" taken: %s\n", execute ? "yes" : "no");
> + SDEBUG(" taken: %s\n", str_yes_no(execute));
> SDEBUG(" target: 0x%04X\n", target);
> if (execute) {
> if (ctx->last_jump == (ctx->start + target)) {
> diff --git a/drivers/gpu/drm/dp/drm_dp.c b/drivers/gpu/drm/dp/drm_dp.c
> index 6d43325acca5..c43577c8ac4d 100644
> --- a/drivers/gpu/drm/dp/drm_dp.c
> +++ b/drivers/gpu/drm/dp/drm_dp.c
> @@ -28,6 +28,7 @@
> #include <linux/module.h>
> #include <linux/sched.h>
> #include <linux/seq_file.h>
> +#include <linux/string_helpers.h>
>
> #include <drm/dp/drm_dp_helper.h>
> #include <drm/drm_print.h>
> @@ -1239,7 +1240,7 @@ void drm_dp_downstream_debug(struct seq_file *m,
> bool branch_device = drm_dp_is_branch(dpcd);
>
> seq_printf(m, "\tDP branch device present: %s\n",
> - branch_device ? "yes" : "no");
> + str_yes_no(branch_device));
>
> if (!branch_device)
> return;
> diff --git a/drivers/gpu/drm/drm_client_modeset.c b/drivers/gpu/drm/drm_client_modeset.c
> index ced09c7c06f9..e6346a67cd98 100644
> --- a/drivers/gpu/drm/drm_client_modeset.c
> +++ b/drivers/gpu/drm/drm_client_modeset.c
> @@ -11,6 +11,7 @@
> #include <linux/module.h>
> #include <linux/mutex.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
>
> #include <drm/drm_atomic.h>
> #include <drm/drm_client.h>
> @@ -241,7 +242,7 @@ static void drm_client_connectors_enabled(struct drm_connector **connectors,
> connector = connectors[i];
> enabled[i] = drm_connector_enabled(connector, true);
> DRM_DEBUG_KMS("connector %d enabled? %s\n", connector->base.id,
> - connector->display_info.non_desktop ? "non desktop" : enabled[i] ? "yes" : "no");
> + connector->display_info.non_desktop ? "non desktop" : str_yes_no(enabled[i]));
>
> any_enabled |= enabled[i];
> }
> diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
> index 21631c22b374..3c888db59ea4 100644
> --- a/drivers/gpu/drm/drm_gem.c
> +++ b/drivers/gpu/drm/drm_gem.c
> @@ -37,6 +37,7 @@
> #include <linux/pagevec.h>
> #include <linux/shmem_fs.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
> #include <linux/types.h>
> #include <linux/uaccess.h>
>
> @@ -1145,7 +1146,7 @@ void drm_gem_print_info(struct drm_printer *p, unsigned int indent,
> drm_vma_node_start(&obj->vma_node));
> drm_printf_indent(p, indent, "size=%zu\n", obj->size);
> drm_printf_indent(p, indent, "imported=%s\n",
> - obj->import_attach ? "yes" : "no");
> + str_yes_no(obj->import_attach));
>
> if (obj->funcs->print_info)
> obj->funcs->print_info(p, indent, obj);
> diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c b/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c
> index a11637b0f6cc..d063d0dc13c5 100644
> --- a/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c
> @@ -21,6 +21,9 @@
> *
> * Authors: Ben Skeggs
> */
> +
> +#include <linux/string_helpers.h>
> +
> #include "aux.h"
> #include "pad.h"
>
> @@ -94,7 +97,7 @@ void
> nvkm_i2c_aux_monitor(struct nvkm_i2c_aux *aux, bool monitor)
> {
> struct nvkm_i2c_pad *pad = aux->pad;
> - AUX_TRACE(aux, "monitor: %s", monitor ? "yes" : "no");
> + AUX_TRACE(aux, "monitor: %s", str_yes_no(monitor));
> if (monitor)
> nvkm_i2c_pad_mode(pad, NVKM_I2C_PAD_AUX);
> else
> diff --git a/drivers/gpu/drm/radeon/atom.c b/drivers/gpu/drm/radeon/atom.c
> index f15b20da5315..c1bbfbe28bda 100644
> --- a/drivers/gpu/drm/radeon/atom.c
> +++ b/drivers/gpu/drm/radeon/atom.c
> @@ -25,6 +25,7 @@
> #include <linux/module.h>
> #include <linux/sched.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
>
> #include <asm/unaligned.h>
>
> @@ -722,7 +723,7 @@ static void atom_op_jump(atom_exec_context *ctx, int *ptr, int arg)
> break;
> }
> if (arg != ATOM_COND_ALWAYS)
> - SDEBUG(" taken: %s\n", execute ? "yes" : "no");
> + SDEBUG(" taken: %s\n", str_yes_no(execute));
> SDEBUG(" target: 0x%04X\n", target);
> if (execute) {
> if (ctx->last_jump == (ctx->start + target)) {
> diff --git a/drivers/gpu/drm/v3d/v3d_debugfs.c b/drivers/gpu/drm/v3d/v3d_debugfs.c
> index e76b24bb8828..29fd13109e43 100644
> --- a/drivers/gpu/drm/v3d/v3d_debugfs.c
> +++ b/drivers/gpu/drm/v3d/v3d_debugfs.c
> @@ -6,6 +6,7 @@
> #include <linux/debugfs.h>
> #include <linux/pm_runtime.h>
> #include <linux/seq_file.h>
> +#include <linux/string_helpers.h>
>
> #include <drm/drm_debugfs.h>
>
> @@ -148,15 +149,15 @@ static int v3d_v3d_debugfs_ident(struct seq_file *m, void *unused)
> V3D_GET_FIELD(ident3, V3D_HUB_IDENT3_IPREV),
> V3D_GET_FIELD(ident3, V3D_HUB_IDENT3_IPIDX));
> seq_printf(m, "MMU: %s\n",
> - (ident2 & V3D_HUB_IDENT2_WITH_MMU) ? "yes" : "no");
> + str_yes_no(ident2 & V3D_HUB_IDENT2_WITH_MMU));
> seq_printf(m, "TFU: %s\n",
> - (ident1 & V3D_HUB_IDENT1_WITH_TFU) ? "yes" : "no");
> + str_yes_no(ident1 & V3D_HUB_IDENT1_WITH_TFU));
> seq_printf(m, "TSY: %s\n",
> - (ident1 & V3D_HUB_IDENT1_WITH_TSY) ? "yes" : "no");
> + str_yes_no(ident1 & V3D_HUB_IDENT1_WITH_TSY));
> seq_printf(m, "MSO: %s\n",
> - (ident1 & V3D_HUB_IDENT1_WITH_MSO) ? "yes" : "no");
> + str_yes_no(ident1 & V3D_HUB_IDENT1_WITH_MSO));
> seq_printf(m, "L3C: %s (%dkb)\n",
> - (ident1 & V3D_HUB_IDENT1_WITH_L3C) ? "yes" : "no",
> + str_yes_no(ident1 & V3D_HUB_IDENT1_WITH_L3C),
> V3D_GET_FIELD(ident2, V3D_HUB_IDENT2_L3C_NKB));
>
> for (core = 0; core < cores; core++) {
> diff --git a/drivers/gpu/drm/virtio/virtgpu_debugfs.c b/drivers/gpu/drm/virtio/virtgpu_debugfs.c
> index b6954e2f75e6..853dd9aa397e 100644
> --- a/drivers/gpu/drm/virtio/virtgpu_debugfs.c
> +++ b/drivers/gpu/drm/virtio/virtgpu_debugfs.c
> @@ -23,6 +23,8 @@
> * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_debugfs.h>
> #include <drm/drm_file.h>
>
> @@ -31,7 +33,7 @@
> static void virtio_gpu_add_bool(struct seq_file *m, const char *name,
> bool value)
> {
> - seq_printf(m, "%-16s : %s\n", name, value ? "yes" : "no");
> + seq_printf(m, "%-16s : %s\n", name, str_yes_no(value));
> }
>
> static void virtio_gpu_add_int(struct seq_file *m, const char *name, int value)
--
Jani Nikula, Intel Open Source Graphics Center
On Wed, Jan 26, 2022 at 01:39:43AM -0800, Lucas De Marchi wrote:
> Remove the local yesno() implementation and adopt the str_yes_no() from
> linux/string_helpers.h.
>
> Signed-off-by: Lucas De Marchi <[email protected]>
> Acked-by: Daniel Vetter <[email protected]>
> Acked-by: Jani Nikula <[email protected]>
Reviewed-by: Matt Roper <[email protected]>
> ---
> drivers/gpu/drm/i915/display/intel_display.c | 23 +++----
> .../drm/i915/display/intel_display_debugfs.c | 66 +++++++++++--------
> .../drm/i915/display/intel_display_trace.h | 6 +-
> drivers/gpu/drm/i915/display/intel_dp.c | 12 ++--
> drivers/gpu/drm/i915/display/intel_fbc.c | 4 +-
> drivers/gpu/drm/i915/display/intel_hdmi.c | 3 +-
> drivers/gpu/drm/i915/display/intel_sprite.c | 6 +-
> .../gpu/drm/i915/gem/selftests/huge_pages.c | 9 +--
> .../drm/i915/gem/selftests/i915_gem_context.c | 7 +-
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 9 +--
> .../drm/i915/gt/intel_execlists_submission.c | 7 +-
> drivers/gpu/drm/i915/gt/intel_gt_pm.c | 3 +-
> drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c | 52 ++++++++-------
> drivers/gpu/drm/i915/gt/intel_reset.c | 3 +-
> drivers/gpu/drm/i915/gt/intel_rps.c | 13 ++--
> drivers/gpu/drm/i915/gt/intel_sseu.c | 9 ++-
> drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c | 10 +--
> drivers/gpu/drm/i915/gt/selftest_timeline.c | 3 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 3 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c | 4 +-
> drivers/gpu/drm/i915/gt/uc/intel_uc.c | 10 +--
> drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c | 20 +++---
> drivers/gpu/drm/i915/i915_debugfs.c | 15 +++--
> drivers/gpu/drm/i915/i915_gpu_error.c | 9 +--
> drivers/gpu/drm/i915/i915_params.c | 5 +-
> drivers/gpu/drm/i915/i915_utils.h | 5 --
> drivers/gpu/drm/i915/intel_device_info.c | 8 ++-
> drivers/gpu/drm/i915/intel_dram.c | 10 +--
> drivers/gpu/drm/i915/intel_pm.c | 10 +--
> drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c | 4 +-
> drivers/gpu/drm/i915/selftests/i915_active.c | 3 +-
> 31 files changed, 203 insertions(+), 148 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 80bc52425e47..bd453861088e 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -32,6 +32,7 @@
> #include <linux/module.h>
> #include <linux/dma-resv.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
> #include <linux/vga_switcheroo.h>
>
> #include <drm/drm_atomic.h>
> @@ -3008,7 +3009,7 @@ static int intel_crtc_compute_config(struct intel_crtc *crtc,
> drm_dbg_kms(&dev_priv->drm,
> "requested pixel clock (%d kHz) too high (max: %d kHz, double wide: %s)\n",
> pipe_mode->crtc_clock, clock_limit,
> - yesno(pipe_config->double_wide));
> + str_yes_no(pipe_config->double_wide));
> return -EINVAL;
> }
>
> @@ -5586,7 +5587,7 @@ static void intel_dump_plane_state(const struct intel_plane_state *plane_state)
> drm_dbg_kms(&i915->drm,
> "[PLANE:%d:%s] fb: [NOFB], visible: %s\n",
> plane->base.base.id, plane->base.name,
> - yesno(plane_state->uapi.visible));
> + str_yes_no(plane_state->uapi.visible));
> return;
> }
>
> @@ -5594,7 +5595,7 @@ static void intel_dump_plane_state(const struct intel_plane_state *plane_state)
> "[PLANE:%d:%s] fb: [FB:%d] %ux%u format = %p4cc modifier = 0x%llx, visible: %s\n",
> plane->base.base.id, plane->base.name,
> fb->base.id, fb->width, fb->height, &fb->format->format,
> - fb->modifier, yesno(plane_state->uapi.visible));
> + fb->modifier, str_yes_no(plane_state->uapi.visible));
> drm_dbg_kms(&i915->drm, "\trotation: 0x%x, scaler: %d\n",
> plane_state->hw.rotation, plane_state->scaler_id);
> if (plane_state->uapi.visible)
> @@ -5617,7 +5618,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
>
> drm_dbg_kms(&dev_priv->drm, "[CRTC:%d:%s] enable: %s %s\n",
> crtc->base.base.id, crtc->base.name,
> - yesno(pipe_config->hw.enable), context);
> + str_yes_no(pipe_config->hw.enable), context);
>
> if (!pipe_config->hw.enable)
> goto dump_planes;
> @@ -5625,7 +5626,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
> snprintf_output_types(buf, sizeof(buf), pipe_config->output_types);
> drm_dbg_kms(&dev_priv->drm,
> "active: %s, output_types: %s (0x%x), output format: %s\n",
> - yesno(pipe_config->hw.active),
> + str_yes_no(pipe_config->hw.active),
> buf, pipe_config->output_types,
> output_formats(pipe_config->output_format));
>
> @@ -5694,7 +5695,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
> intel_dump_dp_vsc_sdp(dev_priv, &pipe_config->infoframes.vsc);
>
> drm_dbg_kms(&dev_priv->drm, "vrr: %s, vmin: %d, vmax: %d, pipeline full: %d, guardband: %d flipline: %d, vmin vblank: %d, vmax vblank: %d\n",
> - yesno(pipe_config->vrr.enable),
> + str_yes_no(pipe_config->vrr.enable),
> pipe_config->vrr.vmin, pipe_config->vrr.vmax,
> pipe_config->vrr.pipeline_full, pipe_config->vrr.guardband,
> pipe_config->vrr.flipline,
> @@ -5736,7 +5737,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
> "pch pfit: " DRM_RECT_FMT ", %s, force thru: %s\n",
> DRM_RECT_ARG(&pipe_config->pch_pfit.dst),
> enableddisabled(pipe_config->pch_pfit.enabled),
> - yesno(pipe_config->pch_pfit.force_thru));
> + str_yes_no(pipe_config->pch_pfit.force_thru));
>
> drm_dbg_kms(&dev_priv->drm, "ips: %i, double wide: %i\n",
> pipe_config->ips_enabled, pipe_config->double_wide);
> @@ -6351,8 +6352,8 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
> if (current_config->name != pipe_config->name) { \
> pipe_config_mismatch(fastset, crtc, __stringify(name), \
> "(expected %s, found %s)", \
> - yesno(current_config->name), \
> - yesno(pipe_config->name)); \
> + str_yes_no(current_config->name), \
> + str_yes_no(pipe_config->name)); \
> ret = false; \
> } \
> } while (0)
> @@ -6368,8 +6369,8 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
> } else { \
> pipe_config_mismatch(fastset, crtc, __stringify(name), \
> "unable to verify whether state matches exactly, forcing modeset (expected %s, found %s)", \
> - yesno(current_config->name), \
> - yesno(pipe_config->name)); \
> + str_yes_no(current_config->name), \
> + str_yes_no(pipe_config->name)); \
> ret = false; \
> } \
> } while (0)
> diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> index f4de004d470f..a9ba998e0659 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2020 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_debugfs.h>
> #include <drm/drm_fourcc.h>
>
> @@ -51,7 +53,7 @@ static int i915_ips_status(struct seq_file *m, void *unused)
> wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
>
> seq_printf(m, "Enabled by kernel parameter: %s\n",
> - yesno(dev_priv->params.enable_ips));
> + str_yes_no(dev_priv->params.enable_ips));
>
> if (DISPLAY_VER(dev_priv) >= 8) {
> seq_puts(m, "Currently: unknown\n");
> @@ -260,7 +262,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
> bool enabled;
> u32 val;
>
> - seq_printf(m, "Sink support: %s", yesno(psr->sink_support));
> + seq_printf(m, "Sink support: %s", str_yes_no(psr->sink_support));
> if (psr->sink_support)
> seq_printf(m, " [0x%02x]", intel_dp->psr_dpcd[0]);
> seq_puts(m, "\n");
> @@ -279,7 +281,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
>
> if (!psr->enabled) {
> seq_printf(m, "PSR sink not reliable: %s\n",
> - yesno(psr->sink_not_reliable));
> + str_yes_no(psr->sink_not_reliable));
>
> goto unlock;
> }
> @@ -446,13 +448,17 @@ static int i915_dmc_info(struct seq_file *m, void *unused)
>
> wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
>
> - seq_printf(m, "fw loaded: %s\n", yesno(intel_dmc_has_payload(dev_priv)));
> + seq_printf(m, "fw loaded: %s\n",
> + str_yes_no(intel_dmc_has_payload(dev_priv)));
> seq_printf(m, "path: %s\n", dmc->fw_path);
> seq_printf(m, "Pipe A fw support: %s\n",
> - yesno(GRAPHICS_VER(dev_priv) >= 12));
> - seq_printf(m, "Pipe A fw loaded: %s\n", yesno(dmc->dmc_info[DMC_FW_PIPEA].payload));
> - seq_printf(m, "Pipe B fw support: %s\n", yesno(IS_ALDERLAKE_P(dev_priv)));
> - seq_printf(m, "Pipe B fw loaded: %s\n", yesno(dmc->dmc_info[DMC_FW_PIPEB].payload));
> + str_yes_no(GRAPHICS_VER(dev_priv) >= 12));
> + seq_printf(m, "Pipe A fw loaded: %s\n",
> + str_yes_no(dmc->dmc_info[DMC_FW_PIPEA].payload));
> + seq_printf(m, "Pipe B fw support: %s\n",
> + str_yes_no(IS_ALDERLAKE_P(dev_priv)));
> + seq_printf(m, "Pipe B fw loaded: %s\n",
> + str_yes_no(dmc->dmc_info[DMC_FW_PIPEB].payload));
>
> if (!intel_dmc_has_payload(dev_priv))
> goto out;
> @@ -577,7 +583,8 @@ static void intel_dp_info(struct seq_file *m,
> const struct drm_property_blob *edid = intel_connector->base.edid_blob_ptr;
>
> seq_printf(m, "\tDPCD rev: %x\n", intel_dp->dpcd[DP_DPCD_REV]);
> - seq_printf(m, "\taudio support: %s\n", yesno(intel_dp->has_audio));
> + seq_printf(m, "\taudio support: %s\n",
> + str_yes_no(intel_dp->has_audio));
> if (intel_connector->base.connector_type == DRM_MODE_CONNECTOR_eDP)
> intel_panel_info(m, &intel_connector->panel);
>
> @@ -590,7 +597,7 @@ static void intel_dp_mst_info(struct seq_file *m,
> {
> bool has_audio = intel_connector->port->has_audio;
>
> - seq_printf(m, "\taudio support: %s\n", yesno(has_audio));
> + seq_printf(m, "\taudio support: %s\n", str_yes_no(has_audio));
> }
>
> static void intel_hdmi_info(struct seq_file *m,
> @@ -599,7 +606,8 @@ static void intel_hdmi_info(struct seq_file *m,
> struct intel_encoder *intel_encoder = intel_attached_encoder(intel_connector);
> struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(intel_encoder);
>
> - seq_printf(m, "\taudio support: %s\n", yesno(intel_hdmi->has_audio));
> + seq_printf(m, "\taudio support: %s\n",
> + str_yes_no(intel_hdmi->has_audio));
> }
>
> static void intel_lvds_info(struct seq_file *m,
> @@ -757,7 +765,7 @@ static void intel_plane_hw_info(struct seq_file *m, struct intel_plane *plane)
> DRM_RECT_FP_FMT ", dst=" DRM_RECT_FMT ", rotation=%s\n",
> fb->base.id, &fb->format->format,
> fb->modifier, fb->width, fb->height,
> - yesno(plane_state->uapi.visible),
> + str_yes_no(plane_state->uapi.visible),
> DRM_RECT_FP_ARG(&plane_state->uapi.src),
> DRM_RECT_ARG(&plane_state->uapi.dst),
> rot_str);
> @@ -796,7 +804,7 @@ static void intel_scaler_info(struct seq_file *m, struct intel_crtc *crtc)
> &crtc_state->scaler_state.scalers[i];
>
> seq_printf(m, ", scalers[%d]: use=%s, mode=%x",
> - i, yesno(sc->in_use), sc->mode);
> + i, str_yes_no(sc->in_use), sc->mode);
> }
> seq_puts(m, "\n");
> } else {
> @@ -919,18 +927,19 @@ static void intel_crtc_info(struct seq_file *m, struct intel_crtc *crtc)
> crtc->base.base.id, crtc->base.name);
>
> seq_printf(m, "\tuapi: enable=%s, active=%s, mode=" DRM_MODE_FMT "\n",
> - yesno(crtc_state->uapi.enable),
> - yesno(crtc_state->uapi.active),
> + str_yes_no(crtc_state->uapi.enable),
> + str_yes_no(crtc_state->uapi.active),
> DRM_MODE_ARG(&crtc_state->uapi.mode));
>
> if (crtc_state->hw.enable) {
> seq_printf(m, "\thw: active=%s, adjusted_mode=" DRM_MODE_FMT "\n",
> - yesno(crtc_state->hw.active),
> + str_yes_no(crtc_state->hw.active),
> DRM_MODE_ARG(&crtc_state->hw.adjusted_mode));
>
> seq_printf(m, "\tpipe src size=%dx%d, dither=%s, bpp=%d\n",
> crtc_state->pipe_src_w, crtc_state->pipe_src_h,
> - yesno(crtc_state->dither), crtc_state->pipe_bpp);
> + str_yes_no(crtc_state->dither),
> + crtc_state->pipe_bpp);
>
> intel_scaler_info(m, crtc);
> }
> @@ -948,8 +957,8 @@ static void intel_crtc_info(struct seq_file *m, struct intel_crtc *crtc)
> intel_plane_info(m, crtc);
>
> seq_printf(m, "\tunderrun reporting: cpu=%s pch=%s\n",
> - yesno(!crtc->cpu_fifo_underrun_disabled),
> - yesno(!crtc->pch_fifo_underrun_disabled));
> + str_yes_no(!crtc->cpu_fifo_underrun_disabled),
> + str_yes_no(!crtc->pch_fifo_underrun_disabled));
>
> crtc_updates_info(m, crtc, "\t");
> }
> @@ -1005,7 +1014,8 @@ static int i915_shared_dplls_info(struct seq_file *m, void *unused)
> seq_printf(m, "DPLL%i: %s, id: %i\n", i, pll->info->name,
> pll->info->id);
> seq_printf(m, " pipe_mask: 0x%x, active: 0x%x, on: %s\n",
> - pll->state.pipe_mask, pll->active_mask, yesno(pll->on));
> + pll->state.pipe_mask, pll->active_mask,
> + str_yes_no(pll->on));
> seq_printf(m, " tracked hardware state:\n");
> seq_printf(m, " dpll: 0x%08x\n", pll->state.hw_state.dpll);
> seq_printf(m, " dpll_md: 0x%08x\n",
> @@ -1046,7 +1056,7 @@ static int i915_ipc_status_show(struct seq_file *m, void *data)
> struct drm_i915_private *dev_priv = m->private;
>
> seq_printf(m, "Isochronous Priority Control: %s\n",
> - yesno(dev_priv->ipc_enabled));
> + str_yes_no(dev_priv->ipc_enabled));
> return 0;
> }
>
> @@ -1155,7 +1165,7 @@ static void drrs_status_per_crtc(struct seq_file *m,
> drrs->type == SEAMLESS_DRRS_SUPPORT)
> supported = true;
>
> - seq_printf(m, "\tDRRS Supported: %s\n", yesno(supported));
> + seq_printf(m, "\tDRRS Supported: %s\n", str_yes_no(supported));
> }
> drm_connector_list_iter_end(&conn_iter);
>
> @@ -1739,7 +1749,7 @@ static int i915_hpd_storm_ctl_show(struct seq_file *m, void *data)
>
> seq_printf(m, "Threshold: %d\n", hotplug->hpd_storm_threshold);
> seq_printf(m, "Detected: %s\n",
> - yesno(delayed_work_pending(&hotplug->reenable_work)));
> + str_yes_no(delayed_work_pending(&hotplug->reenable_work)));
>
> return 0;
> }
> @@ -1813,7 +1823,7 @@ static int i915_hpd_short_storm_ctl_show(struct seq_file *m, void *data)
> struct drm_i915_private *dev_priv = m->private;
>
> seq_printf(m, "Enabled: %s\n",
> - yesno(dev_priv->hotplug.hpd_short_storm_enabled));
> + str_yes_no(dev_priv->hotplug.hpd_short_storm_enabled));
>
> return 0;
> }
> @@ -2208,14 +2218,14 @@ static int i915_dsc_fec_support_show(struct seq_file *m, void *data)
> intel_dp = intel_attached_dp(to_intel_connector(connector));
> crtc_state = to_intel_crtc_state(crtc->state);
> seq_printf(m, "DSC_Enabled: %s\n",
> - yesno(crtc_state->dsc.compression_enable));
> + str_yes_no(crtc_state->dsc.compression_enable));
> seq_printf(m, "DSC_Sink_Support: %s\n",
> - yesno(drm_dp_sink_supports_dsc(intel_dp->dsc_dpcd)));
> + str_yes_no(drm_dp_sink_supports_dsc(intel_dp->dsc_dpcd)));
> seq_printf(m, "Force_DSC_Enable: %s\n",
> - yesno(intel_dp->force_dsc_en));
> + str_yes_no(intel_dp->force_dsc_en));
> if (!intel_dp_is_edp(intel_dp))
> seq_printf(m, "FEC_Sink_Support: %s\n",
> - yesno(drm_dp_sink_supports_fec(intel_dp->fec_capable)));
> + str_yes_no(drm_dp_sink_supports_fec(intel_dp->fec_capable)));
> } while (try_again);
>
> drm_modeset_drop_locks(&ctx);
> diff --git a/drivers/gpu/drm/i915/display/intel_display_trace.h b/drivers/gpu/drm/i915/display/intel_display_trace.h
> index f05f0f9b5103..dcdd242fffd9 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_trace.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_trace.h
> @@ -210,9 +210,9 @@ TRACE_EVENT(g4x_wm,
> TP_printk("pipe %c, frame=%u, scanline=%u, wm %d/%d/%d, sr %s/%d/%d/%d, hpll %s/%d/%d/%d, fbc %s",
> pipe_name(__entry->pipe), __entry->frame, __entry->scanline,
> __entry->primary, __entry->sprite, __entry->cursor,
> - yesno(__entry->cxsr), __entry->sr_plane, __entry->sr_cursor, __entry->sr_fbc,
> - yesno(__entry->hpll), __entry->hpll_plane, __entry->hpll_cursor, __entry->hpll_fbc,
> - yesno(__entry->fbc))
> + str_yes_no(__entry->cxsr), __entry->sr_plane, __entry->sr_cursor, __entry->sr_fbc,
> + str_yes_no(__entry->hpll), __entry->hpll_plane, __entry->hpll_cursor, __entry->hpll_fbc,
> + str_yes_no(__entry->fbc))
> );
>
> TRACE_EVENT(vlv_wm,
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
> index 4d4579a301f6..62c1535d696d 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -29,6 +29,7 @@
> #include <linux/i2c.h>
> #include <linux/notifier.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
> #include <linux/timekeeping.h>
> #include <linux/types.h>
>
> @@ -2797,8 +2798,9 @@ intel_dp_configure_mst(struct intel_dp *intel_dp)
> drm_dbg_kms(&i915->drm,
> "[ENCODER:%d:%s] MST support: port: %s, sink: %s, modparam: %s\n",
> encoder->base.base.id, encoder->base.name,
> - yesno(intel_dp_mst_source_support(intel_dp)), yesno(sink_can_mst),
> - yesno(i915->params.enable_dp_mst));
> + str_yes_no(intel_dp_mst_source_support(intel_dp)),
> + str_yes_no(sink_can_mst),
> + str_yes_no(i915->params.enable_dp_mst));
>
> if (!intel_dp_mst_source_support(intel_dp))
> return;
> @@ -4366,9 +4368,9 @@ intel_dp_update_420(struct intel_dp *intel_dp)
> drm_dbg_kms(&i915->drm,
> "[CONNECTOR:%d:%s] RGB->YcbCr conversion? %s, YCbCr 4:2:0 allowed? %s, YCbCr 4:4:4->4:2:0 conversion? %s\n",
> connector->base.base.id, connector->base.name,
> - yesno(intel_dp->dfp.rgb_to_ycbcr),
> - yesno(connector->base.ycbcr_420_allowed),
> - yesno(intel_dp->dfp.ycbcr_444_to_420));
> + str_yes_no(intel_dp->dfp.rgb_to_ycbcr),
> + str_yes_no(connector->base.ycbcr_420_allowed),
> + str_yes_no(intel_dp->dfp.ycbcr_444_to_420));
> }
>
> static void
> diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c b/drivers/gpu/drm/i915/display/intel_fbc.c
> index bcdffe62f3cb..f3d7d8dde7ed 100644
> --- a/drivers/gpu/drm/i915/display/intel_fbc.c
> +++ b/drivers/gpu/drm/i915/display/intel_fbc.c
> @@ -38,6 +38,8 @@
> * forcibly disable it to allow proper screen updates.
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_fourcc.h>
>
> #include "i915_drv.h"
> @@ -1742,7 +1744,7 @@ static int intel_fbc_debugfs_status_show(struct seq_file *m, void *unused)
> if (fbc->active) {
> seq_puts(m, "FBC enabled\n");
> seq_printf(m, "Compressing: %s\n",
> - yesno(intel_fbc_is_compressing(fbc)));
> + str_yes_no(intel_fbc_is_compressing(fbc)));
> } else {
> seq_printf(m, "FBC disabled: %s\n", fbc->no_fbc_reason);
> }
> diff --git a/drivers/gpu/drm/i915/display/intel_hdmi.c b/drivers/gpu/drm/i915/display/intel_hdmi.c
> index 6c72f8587240..02ead400069f 100644
> --- a/drivers/gpu/drm/i915/display/intel_hdmi.c
> +++ b/drivers/gpu/drm/i915/display/intel_hdmi.c
> @@ -30,6 +30,7 @@
> #include <linux/hdmi.h>
> #include <linux/i2c.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
>
> #include <drm/drm_atomic_helper.h>
> #include <drm/drm_crtc.h>
> @@ -2623,7 +2624,7 @@ bool intel_hdmi_handle_sink_scrambling(struct intel_encoder *encoder,
> drm_dbg_kms(&dev_priv->drm,
> "[CONNECTOR:%d:%s] scrambling=%s, TMDS bit clock ratio=1/%d\n",
> connector->base.id, connector->name,
> - yesno(scrambling), high_tmds_clock_ratio ? 40 : 10);
> + str_yes_no(scrambling), high_tmds_clock_ratio ? 40 : 10);
>
> /* Set TMDS bit clock ratio to 1/40 or 1/10, and enable/disable scrambling */
> return drm_scdc_set_high_tmds_clock_ratio(adapter,
> diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c b/drivers/gpu/drm/i915/display/intel_sprite.c
> index 2d71294aaceb..ad999075c233 100644
> --- a/drivers/gpu/drm/i915/display/intel_sprite.c
> +++ b/drivers/gpu/drm/i915/display/intel_sprite.c
> @@ -30,6 +30,8 @@
> * support.
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_atomic.h>
> #include <drm/drm_atomic_helper.h>
> #include <drm/drm_color_mgmt.h>
> @@ -96,13 +98,13 @@ int intel_plane_check_src_coordinates(struct intel_plane_state *plane_state)
>
> if (src_x % hsub || src_w % hsub) {
> drm_dbg_kms(&i915->drm, "src x/w (%u, %u) must be a multiple of %u (rotated: %s)\n",
> - src_x, src_w, hsub, yesno(rotated));
> + src_x, src_w, hsub, str_yes_no(rotated));
> return -EINVAL;
> }
>
> if (src_y % vsub || src_h % vsub) {
> drm_dbg_kms(&i915->drm, "src y/h (%u, %u) must be a multiple of %u (rotated: %s)\n",
> - src_y, src_h, vsub, yesno(rotated));
> + src_y, src_h, vsub, str_yes_no(rotated));
> return -EINVAL;
> }
>
> diff --git a/drivers/gpu/drm/i915/gem/selftests/huge_pages.c b/drivers/gpu/drm/i915/gem/selftests/huge_pages.c
> index f36191ebf964..c8d816a1cd86 100644
> --- a/drivers/gpu/drm/i915/gem/selftests/huge_pages.c
> +++ b/drivers/gpu/drm/i915/gem/selftests/huge_pages.c
> @@ -5,6 +5,7 @@
> */
>
> #include <linux/prime_numbers.h>
> +#include <linux/string_helpers.h>
>
> #include "i915_selftest.h"
>
> @@ -803,7 +804,7 @@ static int igt_mock_ppgtt_huge_fill(void *arg)
> if (vma->resource->page_sizes_gtt != expected_gtt) {
> pr_err("gtt=%u, expected=%u, size=%zd, single=%s\n",
> vma->resource->page_sizes_gtt, expected_gtt,
> - obj->base.size, yesno(!!single));
> + obj->base.size, str_yes_no(!!single));
> err = -EINVAL;
> break;
> }
> @@ -959,7 +960,7 @@ static int igt_mock_ppgtt_64K(void *arg)
> if (vma->resource->page_sizes_gtt != expected_gtt) {
> pr_err("gtt=%u, expected=%u, i=%d, single=%s\n",
> vma->resource->page_sizes_gtt,
> - expected_gtt, i, yesno(!!single));
> + expected_gtt, i, str_yes_no(!!single));
> err = -EINVAL;
> goto out_vma_unpin;
> }
> @@ -1646,14 +1647,14 @@ static int igt_shrink_thp(void *arg)
> I915_SHRINK_WRITEBACK);
> if (should_swap == i915_gem_object_has_pages(obj)) {
> pr_err("unexpected pages mismatch, should_swap=%s\n",
> - yesno(should_swap));
> + str_yes_no(should_swap));
> err = -EINVAL;
> goto out_put;
> }
>
> if (should_swap == (obj->mm.page_sizes.sg || obj->mm.page_sizes.phys)) {
> pr_err("unexpected residual page-size bits, should_swap=%s\n",
> - yesno(should_swap));
> + str_yes_no(should_swap));
> err = -EINVAL;
> goto out_put;
> }
> diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
> index 80d99b9c694f..4f6707e8808d 100644
> --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
> +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_context.c
> @@ -5,6 +5,7 @@
> */
>
> #include <linux/prime_numbers.h>
> +#include <linux/string_helpers.h>
>
> #include "gem/i915_gem_pm.h"
> #include "gt/intel_engine_pm.h"
> @@ -698,7 +699,7 @@ static int igt_ctx_exec(void *arg)
> pr_err("Failed to fill dword %lu [%lu/%lu] with gpu (%s) [full-ppgtt? %s], err=%d\n",
> ndwords, dw, max_dwords(obj),
> engine->name,
> - yesno(i915_gem_context_has_full_ppgtt(ctx)),
> + str_yes_no(i915_gem_context_has_full_ppgtt(ctx)),
> err);
> intel_context_put(ce);
> kernel_context_close(ctx);
> @@ -832,7 +833,7 @@ static int igt_shared_ctx_exec(void *arg)
> pr_err("Failed to fill dword %lu [%lu/%lu] with gpu (%s) [full-ppgtt? %s], err=%d\n",
> ndwords, dw, max_dwords(obj),
> engine->name,
> - yesno(i915_gem_context_has_full_ppgtt(ctx)),
> + str_yes_no(i915_gem_context_has_full_ppgtt(ctx)),
> err);
> intel_context_put(ce);
> kernel_context_close(ctx);
> @@ -1411,7 +1412,7 @@ static int igt_ctx_readonly(void *arg)
> pr_err("Failed to fill dword %lu [%lu/%lu] with gpu (%s) [full-ppgtt? %s], err=%d\n",
> ndwords, dw, max_dwords(obj),
> ce->engine->name,
> - yesno(i915_gem_context_has_full_ppgtt(ctx)),
> + str_yes_no(i915_gem_context_has_full_ppgtt(ctx)),
> err);
> i915_gem_context_unlock_engines(ctx);
> goto out_file;
> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> index 4317ae5e525b..07de0fb56f51 100644
> --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2016 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_print.h>
>
> #include "gem/i915_gem_context.h"
> @@ -1639,8 +1641,7 @@ static void intel_engine_print_registers(struct intel_engine_cs *engine,
> u8 read, write;
>
> drm_printf(m, "\tExeclist tasklet queued? %s (%s), preempt? %s, timeslice? %s\n",
> - yesno(test_bit(TASKLET_STATE_SCHED,
> - &engine->sched_engine->tasklet.state)),
> + str_yes_no(test_bit(TASKLET_STATE_SCHED, &engine->sched_engine->tasklet.state)),
> enableddisabled(!atomic_read(&engine->sched_engine->tasklet.count)),
> repr_timer(&engine->execlists.preempt),
> repr_timer(&engine->execlists.timer));
> @@ -1902,7 +1903,7 @@ void intel_engine_dump(struct intel_engine_cs *engine,
>
> drm_printf(m, "\tAwake? %d\n", atomic_read(&engine->wakeref.count));
> drm_printf(m, "\tBarriers?: %s\n",
> - yesno(!llist_empty(&engine->barrier_tasks)));
> + str_yes_no(!llist_empty(&engine->barrier_tasks)));
> drm_printf(m, "\tLatency: %luus\n",
> ewma__engine_latency_read(&engine->latency));
> if (intel_engine_supports_stats(engine))
> @@ -1944,7 +1945,7 @@ void intel_engine_dump(struct intel_engine_cs *engine,
> drm_printf(m, "HWSP:\n");
> hexdump(m, engine->status_page.addr, PAGE_SIZE);
>
> - drm_printf(m, "Idle? %s\n", yesno(intel_engine_is_idle(engine)));
> + drm_printf(m, "Idle? %s\n", str_yes_no(intel_engine_is_idle(engine)));
>
> intel_engine_print_breadcrumbs(engine, m);
> }
> diff --git a/drivers/gpu/drm/i915/gt/intel_execlists_submission.c b/drivers/gpu/drm/i915/gt/intel_execlists_submission.c
> index 960a9aaf4f3a..95898e3752a7 100644
> --- a/drivers/gpu/drm/i915/gt/intel_execlists_submission.c
> +++ b/drivers/gpu/drm/i915/gt/intel_execlists_submission.c
> @@ -107,6 +107,7 @@
> *
> */
> #include <linux/interrupt.h>
> +#include <linux/string_helpers.h>
>
> #include "i915_drv.h"
> #include "i915_trace.h"
> @@ -1330,11 +1331,11 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
> } else if (timeslice_expired(engine, last)) {
> ENGINE_TRACE(engine,
> "expired:%s last=%llx:%lld, prio=%d, hint=%d, yield?=%s\n",
> - yesno(timer_expired(&execlists->timer)),
> + str_yes_no(timer_expired(&execlists->timer)),
> last->fence.context, last->fence.seqno,
> rq_prio(last),
> sched_engine->queue_priority_hint,
> - yesno(timeslice_yield(execlists, last)));
> + str_yes_no(timeslice_yield(execlists, last)));
>
> /*
> * Consume this timeslice; ensure we start a new one.
> @@ -1422,7 +1423,7 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
> __i915_request_is_complete(rq) ? "!" :
> __i915_request_has_started(rq) ? "*" :
> "",
> - yesno(engine != ve->siblings[0]));
> + str_yes_no(engine != ve->siblings[0]));
>
> WRITE_ONCE(ve->request, NULL);
> WRITE_ONCE(ve->base.sched_engine->queue_priority_hint, INT_MIN);
> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_pm.c
> index c0fa41e4c803..e4ecc17889d3 100644
> --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.c
> +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.c
> @@ -3,6 +3,7 @@
> * Copyright ? 2019 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> #include <linux/suspend.h>
>
> #include "i915_drv.h"
> @@ -157,7 +158,7 @@ static void gt_sanitize(struct intel_gt *gt, bool force)
> enum intel_engine_id id;
> intel_wakeref_t wakeref;
>
> - GT_TRACE(gt, "force:%s", yesno(force));
> + GT_TRACE(gt, "force:%s", str_yes_no(force));
>
> /* Use a raw wakeref to avoid calling intel_display_power_get early */
> wakeref = intel_runtime_pm_get(gt->uncore->rpm);
> diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c b/drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c
> index 6c5c1d0363bf..7390c1527107 100644
> --- a/drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.c
> @@ -5,6 +5,7 @@
> */
>
> #include <linux/seq_file.h>
> +#include <linux/string_helpers.h>
>
> #include "i915_drv.h"
> #include "intel_gt.h"
> @@ -102,7 +103,7 @@ static int vlv_drpc(struct seq_file *m)
> rcctl1 = intel_uncore_read(uncore, GEN6_RC_CONTROL);
>
> seq_printf(m, "RC6 Enabled: %s\n",
> - yesno(rcctl1 & (GEN7_RC_CTL_TO_MODE |
> + str_yes_no(rcctl1 & (GEN7_RC_CTL_TO_MODE |
> GEN6_RC_CTL_EI_MODE(1))));
> seq_printf(m, "Render Power Well: %s\n",
> (pw_status & VLV_GTLC_PW_RENDER_STATUS_MASK) ? "Up" : "Down");
> @@ -137,19 +138,19 @@ static int gen6_drpc(struct seq_file *m)
> snb_pcode_read(i915, GEN6_PCODE_READ_RC6VIDS, &rc6vids, NULL);
>
> seq_printf(m, "RC1e Enabled: %s\n",
> - yesno(rcctl1 & GEN6_RC_CTL_RC1e_ENABLE));
> + str_yes_no(rcctl1 & GEN6_RC_CTL_RC1e_ENABLE));
> seq_printf(m, "RC6 Enabled: %s\n",
> - yesno(rcctl1 & GEN6_RC_CTL_RC6_ENABLE));
> + str_yes_no(rcctl1 & GEN6_RC_CTL_RC6_ENABLE));
> if (GRAPHICS_VER(i915) >= 9) {
> seq_printf(m, "Render Well Gating Enabled: %s\n",
> - yesno(gen9_powergate_enable & GEN9_RENDER_PG_ENABLE));
> + str_yes_no(gen9_powergate_enable & GEN9_RENDER_PG_ENABLE));
> seq_printf(m, "Media Well Gating Enabled: %s\n",
> - yesno(gen9_powergate_enable & GEN9_MEDIA_PG_ENABLE));
> + str_yes_no(gen9_powergate_enable & GEN9_MEDIA_PG_ENABLE));
> }
> seq_printf(m, "Deep RC6 Enabled: %s\n",
> - yesno(rcctl1 & GEN6_RC_CTL_RC6p_ENABLE));
> + str_yes_no(rcctl1 & GEN6_RC_CTL_RC6p_ENABLE));
> seq_printf(m, "Deepest RC6 Enabled: %s\n",
> - yesno(rcctl1 & GEN6_RC_CTL_RC6pp_ENABLE));
> + str_yes_no(rcctl1 & GEN6_RC_CTL_RC6pp_ENABLE));
> seq_puts(m, "Current RC state: ");
> switch (gt_core_status & GEN6_RCn_MASK) {
> case GEN6_RC0:
> @@ -173,7 +174,7 @@ static int gen6_drpc(struct seq_file *m)
> }
>
> seq_printf(m, "Core Power Down: %s\n",
> - yesno(gt_core_status & GEN6_CORE_CPD_STATE_MASK));
> + str_yes_no(gt_core_status & GEN6_CORE_CPD_STATE_MASK));
> if (GRAPHICS_VER(i915) >= 9) {
> seq_printf(m, "Render Power Well: %s\n",
> (gen9_powergate_status &
> @@ -213,16 +214,17 @@ static int ilk_drpc(struct seq_file *m)
> rstdbyctl = intel_uncore_read(uncore, RSTDBYCTL);
> crstandvid = intel_uncore_read16(uncore, CRSTANDVID);
>
> - seq_printf(m, "HD boost: %s\n", yesno(rgvmodectl & MEMMODE_BOOST_EN));
> + seq_printf(m, "HD boost: %s\n",
> + str_yes_no(rgvmodectl & MEMMODE_BOOST_EN));
> seq_printf(m, "Boost freq: %d\n",
> (rgvmodectl & MEMMODE_BOOST_FREQ_MASK) >>
> MEMMODE_BOOST_FREQ_SHIFT);
> seq_printf(m, "HW control enabled: %s\n",
> - yesno(rgvmodectl & MEMMODE_HWIDLE_EN));
> + str_yes_no(rgvmodectl & MEMMODE_HWIDLE_EN));
> seq_printf(m, "SW control enabled: %s\n",
> - yesno(rgvmodectl & MEMMODE_SWMODE_EN));
> + str_yes_no(rgvmodectl & MEMMODE_SWMODE_EN));
> seq_printf(m, "Gated voltage change: %s\n",
> - yesno(rgvmodectl & MEMMODE_RCLK_GATE));
> + str_yes_no(rgvmodectl & MEMMODE_RCLK_GATE));
> seq_printf(m, "Starting frequency: P%d\n",
> (rgvmodectl & MEMMODE_FSTART_MASK) >> MEMMODE_FSTART_SHIFT);
> seq_printf(m, "Max P-state: P%d\n",
> @@ -231,7 +233,7 @@ static int ilk_drpc(struct seq_file *m)
> seq_printf(m, "RS1 VID: %d\n", (crstandvid & 0x3f));
> seq_printf(m, "RS2 VID: %d\n", ((crstandvid >> 8) & 0x3f));
> seq_printf(m, "Render standby enabled: %s\n",
> - yesno(!(rstdbyctl & RCX_SW_EXIT)));
> + str_yes_no(!(rstdbyctl & RCX_SW_EXIT)));
> seq_puts(m, "Current RS state: ");
> switch (rstdbyctl & RSX_STATUS_MASK) {
> case RSX_STATUS_ON:
> @@ -304,12 +306,11 @@ void intel_gt_pm_frequency_dump(struct intel_gt *gt, struct drm_printer *p)
>
> rpmodectl = intel_uncore_read(uncore, GEN6_RP_CONTROL);
> drm_printf(p, "Video Turbo Mode: %s\n",
> - yesno(rpmodectl & GEN6_RP_MEDIA_TURBO));
> + str_yes_no(rpmodectl & GEN6_RP_MEDIA_TURBO));
> drm_printf(p, "HW control enabled: %s\n",
> - yesno(rpmodectl & GEN6_RP_ENABLE));
> + str_yes_no(rpmodectl & GEN6_RP_ENABLE));
> drm_printf(p, "SW control enabled: %s\n",
> - yesno((rpmodectl & GEN6_RP_MEDIA_MODE_MASK) ==
> - GEN6_RP_MEDIA_SW_MODE));
> + str_yes_no((rpmodectl & GEN6_RP_MEDIA_MODE_MASK) == GEN6_RP_MEDIA_SW_MODE));
>
> vlv_punit_get(i915);
> freq_sts = vlv_punit_read(i915, PUNIT_REG_GPU_FREQ_STS);
> @@ -414,12 +415,11 @@ void intel_gt_pm_frequency_dump(struct intel_gt *gt, struct drm_printer *p)
> pm_mask = intel_uncore_read(uncore, GEN6_PMINTRMSK);
>
> drm_printf(p, "Video Turbo Mode: %s\n",
> - yesno(rpmodectl & GEN6_RP_MEDIA_TURBO));
> + str_yes_no(rpmodectl & GEN6_RP_MEDIA_TURBO));
> drm_printf(p, "HW control enabled: %s\n",
> - yesno(rpmodectl & GEN6_RP_ENABLE));
> + str_yes_no(rpmodectl & GEN6_RP_ENABLE));
> drm_printf(p, "SW control enabled: %s\n",
> - yesno((rpmodectl & GEN6_RP_MEDIA_MODE_MASK) ==
> - GEN6_RP_MEDIA_SW_MODE));
> + str_yes_no((rpmodectl & GEN6_RP_MEDIA_MODE_MASK) == GEN6_RP_MEDIA_SW_MODE));
>
> drm_printf(p, "PM IER=0x%08x IMR=0x%08x, MASK=0x%08x\n",
> pm_ier, pm_imr, pm_mask);
> @@ -539,7 +539,7 @@ static int llc_show(struct seq_file *m, void *data)
> intel_wakeref_t wakeref;
> int gpu_freq, ia_freq;
>
> - seq_printf(m, "LLC: %s\n", yesno(HAS_LLC(i915)));
> + seq_printf(m, "LLC: %s\n", str_yes_no(HAS_LLC(i915)));
> seq_printf(m, "%s: %uMB\n", edram ? "eDRAM" : "eLLC",
> i915->edram_size_mb);
>
> @@ -601,10 +601,12 @@ static int rps_boost_show(struct seq_file *m, void *data)
> struct drm_i915_private *i915 = gt->i915;
> struct intel_rps *rps = >->rps;
>
> - seq_printf(m, "RPS enabled? %s\n", yesno(intel_rps_is_enabled(rps)));
> - seq_printf(m, "RPS active? %s\n", yesno(intel_rps_is_active(rps)));
> + seq_printf(m, "RPS enabled? %s\n",
> + str_yes_no(intel_rps_is_enabled(rps)));
> + seq_printf(m, "RPS active? %s\n",
> + str_yes_no(intel_rps_is_active(rps)));
> seq_printf(m, "GPU busy? %s, %llums\n",
> - yesno(gt->awake),
> + str_yes_no(gt->awake),
> ktime_to_ms(intel_gt_get_awake_time(gt)));
> seq_printf(m, "Boosts outstanding? %d\n",
> atomic_read(&rps->num_waiters));
> diff --git a/drivers/gpu/drm/i915/gt/intel_reset.c b/drivers/gpu/drm/i915/gt/intel_reset.c
> index 6f2821cca409..d1cf0f73df3f 100644
> --- a/drivers/gpu/drm/i915/gt/intel_reset.c
> +++ b/drivers/gpu/drm/i915/gt/intel_reset.c
> @@ -5,6 +5,7 @@
>
> #include <linux/sched/mm.h>
> #include <linux/stop_machine.h>
> +#include <linux/string_helpers.h>
>
> #include "display/intel_display.h"
> #include "display/intel_overlay.h"
> @@ -133,7 +134,7 @@ void __i915_request_reset(struct i915_request *rq, bool guilty)
> {
> bool banned = false;
>
> - RQ_TRACE(rq, "guilty? %s\n", yesno(guilty));
> + RQ_TRACE(rq, "guilty? %s\n", str_yes_no(guilty));
> GEM_BUG_ON(__i915_request_is_complete(rq));
>
> rcu_read_lock(); /* protect the GEM context */
> diff --git a/drivers/gpu/drm/i915/gt/intel_rps.c b/drivers/gpu/drm/i915/gt/intel_rps.c
> index 8a13bc005b45..e9f9874d1e5b 100644
> --- a/drivers/gpu/drm/i915/gt/intel_rps.c
> +++ b/drivers/gpu/drm/i915/gt/intel_rps.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2019 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/i915_drm.h>
>
> #include "i915_drv.h"
> @@ -770,7 +772,8 @@ static void gen6_rps_set_thresholds(struct intel_rps *rps, u8 val)
>
> void intel_rps_mark_interactive(struct intel_rps *rps, bool interactive)
> {
> - GT_TRACE(rps_to_gt(rps), "mark interactive: %s\n", yesno(interactive));
> + GT_TRACE(rps_to_gt(rps), "mark interactive: %s\n",
> + str_yes_no(interactive));
>
> mutex_lock(&rps->power.mutex);
> if (interactive) {
> @@ -1277,7 +1280,8 @@ static bool chv_rps_enable(struct intel_rps *rps)
> drm_WARN_ONCE(&i915->drm, (val & GPLLENABLE) == 0,
> "GPLL not enabled\n");
>
> - drm_dbg(&i915->drm, "GPLL enabled? %s\n", yesno(val & GPLLENABLE));
> + drm_dbg(&i915->drm, "GPLL enabled? %s\n",
> + str_yes_no(val & GPLLENABLE));
> drm_dbg(&i915->drm, "GPU status: 0x%08x\n", val);
>
> return rps_reset(rps);
> @@ -1378,7 +1382,8 @@ static bool vlv_rps_enable(struct intel_rps *rps)
> drm_WARN_ONCE(&i915->drm, (val & GPLLENABLE) == 0,
> "GPLL not enabled\n");
>
> - drm_dbg(&i915->drm, "GPLL enabled? %s\n", yesno(val & GPLLENABLE));
> + drm_dbg(&i915->drm, "GPLL enabled? %s\n",
> + str_yes_no(val & GPLLENABLE));
> drm_dbg(&i915->drm, "GPU status: 0x%08x\n", val);
>
> return rps_reset(rps);
> @@ -1770,7 +1775,7 @@ static void rps_work(struct work_struct *work)
>
> GT_TRACE(gt,
> "pm_iir:%x, client_boost:%s, last:%d, cur:%x, min:%x, max:%x\n",
> - pm_iir, yesno(client_boost),
> + pm_iir, str_yes_no(client_boost),
> adj, new_freq, min, max);
>
> if (client_boost && new_freq < rps->boost_freq) {
> diff --git a/drivers/gpu/drm/i915/gt/intel_sseu.c b/drivers/gpu/drm/i915/gt/intel_sseu.c
> index bdf09051b8a0..5168e5d27ae9 100644
> --- a/drivers/gpu/drm/i915/gt/intel_sseu.c
> +++ b/drivers/gpu/drm/i915/gt/intel_sseu.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2019 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "i915_drv.h"
> #include "intel_lrc_reg.h"
> #include "intel_sseu.h"
> @@ -699,10 +701,11 @@ void intel_sseu_dump(const struct sseu_dev_info *sseu, struct drm_printer *p)
> drm_printf(p, "EU total: %u\n", sseu->eu_total);
> drm_printf(p, "EU per subslice: %u\n", sseu->eu_per_subslice);
> drm_printf(p, "has slice power gating: %s\n",
> - yesno(sseu->has_slice_pg));
> + str_yes_no(sseu->has_slice_pg));
> drm_printf(p, "has subslice power gating: %s\n",
> - yesno(sseu->has_subslice_pg));
> - drm_printf(p, "has EU power gating: %s\n", yesno(sseu->has_eu_pg));
> + str_yes_no(sseu->has_subslice_pg));
> + drm_printf(p, "has EU power gating: %s\n",
> + str_yes_no(sseu->has_eu_pg));
> }
>
> void intel_sseu_print_topology(const struct sseu_dev_info *sseu,
> diff --git a/drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c b/drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
> index 8bb3a91dad82..d4bfbde63e60 100644
> --- a/drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_sseu_debugfs.c
> @@ -4,6 +4,8 @@
> * Copyright ? 2020 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "i915_drv.h"
> #include "intel_gt_debugfs.h"
> #include "intel_sseu_debugfs.h"
> @@ -225,16 +227,16 @@ static void i915_print_sseu_info(struct seq_file *m,
> if (!is_available_info)
> return;
>
> - seq_printf(m, " Has Pooled EU: %s\n", yesno(has_pooled_eu));
> + seq_printf(m, " Has Pooled EU: %s\n", str_yes_no(has_pooled_eu));
> if (has_pooled_eu)
> seq_printf(m, " Min EU in pool: %u\n", sseu->min_eu_in_pool);
>
> seq_printf(m, " Has Slice Power Gating: %s\n",
> - yesno(sseu->has_slice_pg));
> + str_yes_no(sseu->has_slice_pg));
> seq_printf(m, " Has Subslice Power Gating: %s\n",
> - yesno(sseu->has_subslice_pg));
> + str_yes_no(sseu->has_subslice_pg));
> seq_printf(m, " Has EU Power Gating: %s\n",
> - yesno(sseu->has_eu_pg));
> + str_yes_no(sseu->has_eu_pg));
> }
>
> /*
> diff --git a/drivers/gpu/drm/i915/gt/selftest_timeline.c b/drivers/gpu/drm/i915/gt/selftest_timeline.c
> index 0410c402f2a3..522d0190509c 100644
> --- a/drivers/gpu/drm/i915/gt/selftest_timeline.c
> +++ b/drivers/gpu/drm/i915/gt/selftest_timeline.c
> @@ -4,6 +4,7 @@
> */
>
> #include <linux/prime_numbers.h>
> +#include <linux/string_helpers.h>
>
> #include "intel_context.h"
> #include "intel_engine_heartbeat.h"
> @@ -209,7 +210,7 @@ static int __igt_sync(struct intel_timeline *tl,
>
> if (__intel_timeline_sync_is_later(tl, ctx, p->seqno) != p->expected) {
> pr_err("%s: %s(ctx=%llu, seqno=%u) expected passed %s but failed\n",
> - name, p->name, ctx, p->seqno, yesno(p->expected));
> + name, p->name, ctx, p->seqno, str_yes_no(p->expected));
> return -EINVAL;
> }
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
> index b53f61f3101f..8a99c2e624c2 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
> @@ -4,6 +4,7 @@
> */
>
> #include <linux/debugfs.h>
> +#include <linux/string_helpers.h>
>
> #include "gt/intel_gt.h"
> #include "i915_drv.h"
> @@ -477,7 +478,7 @@ int intel_guc_log_create(struct intel_guc_log *log)
> log->level = __get_default_log_level(log);
> DRM_DEBUG_DRIVER("guc_log_level=%d (%s, verbose:%s, verbosity:%d)\n",
> log->level, enableddisabled(log->level),
> - yesno(GUC_LOG_LEVEL_IS_VERBOSE(log->level)),
> + str_yes_no(GUC_LOG_LEVEL_IS_VERBOSE(log->level)),
> GUC_LOG_LEVEL_TO_VERBOSITY(log->level));
>
> return 0;
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> index 13b27b8ff74e..742bfb9a0a57 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2021 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "i915_drv.h"
> #include "intel_guc_slpc.h"
> #include "gt/intel_gt.h"
> @@ -713,7 +715,7 @@ int intel_guc_slpc_print_info(struct intel_guc_slpc *slpc, struct drm_printer *p
>
> drm_printf(p, "\tSLPC state: %s\n", slpc_get_state_string(slpc));
> drm_printf(p, "\tGTPERF task active: %s\n",
> - yesno(slpc_tasks->status & SLPC_GTPERF_TASK_ENABLED));
> + str_yes_no(slpc_tasks->status & SLPC_GTPERF_TASK_ENABLED));
> drm_printf(p, "\tMax freq: %u MHz\n",
> slpc_decode_max_freq(slpc));
> drm_printf(p, "\tMin freq: %u MHz\n",
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> index da199aa6989f..8e756d4c2c16 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2016-2019 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "gt/intel_gt.h"
> #include "gt/intel_reset.h"
> #include "intel_guc.h"
> @@ -78,10 +80,10 @@ static void __confirm_options(struct intel_uc *uc)
> drm_dbg(&i915->drm,
> "enable_guc=%d (guc:%s submission:%s huc:%s slpc:%s)\n",
> i915->params.enable_guc,
> - yesno(intel_uc_wants_guc(uc)),
> - yesno(intel_uc_wants_guc_submission(uc)),
> - yesno(intel_uc_wants_huc(uc)),
> - yesno(intel_uc_wants_guc_slpc(uc)));
> + str_yes_no(intel_uc_wants_guc(uc)),
> + str_yes_no(intel_uc_wants_guc_submission(uc)),
> + str_yes_no(intel_uc_wants_huc(uc)),
> + str_yes_no(intel_uc_wants_guc_slpc(uc)));
>
> if (i915->params.enable_guc == 0) {
> GEM_BUG_ON(intel_uc_wants_guc(uc));
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c b/drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c
> index c2f7924295e7..284d6fbc2d08 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c
> @@ -4,6 +4,8 @@
> */
>
> #include <linux/debugfs.h>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_print.h>
>
> #include "gt/intel_gt_debugfs.h"
> @@ -18,17 +20,17 @@ static int uc_usage_show(struct seq_file *m, void *data)
> struct drm_printer p = drm_seq_file_printer(m);
>
> drm_printf(&p, "[guc] supported:%s wanted:%s used:%s\n",
> - yesno(intel_uc_supports_guc(uc)),
> - yesno(intel_uc_wants_guc(uc)),
> - yesno(intel_uc_uses_guc(uc)));
> + str_yes_no(intel_uc_supports_guc(uc)),
> + str_yes_no(intel_uc_wants_guc(uc)),
> + str_yes_no(intel_uc_uses_guc(uc)));
> drm_printf(&p, "[huc] supported:%s wanted:%s used:%s\n",
> - yesno(intel_uc_supports_huc(uc)),
> - yesno(intel_uc_wants_huc(uc)),
> - yesno(intel_uc_uses_huc(uc)));
> + str_yes_no(intel_uc_supports_huc(uc)),
> + str_yes_no(intel_uc_wants_huc(uc)),
> + str_yes_no(intel_uc_uses_huc(uc)));
> drm_printf(&p, "[submission] supported:%s wanted:%s used:%s\n",
> - yesno(intel_uc_supports_guc_submission(uc)),
> - yesno(intel_uc_wants_guc_submission(uc)),
> - yesno(intel_uc_uses_guc_submission(uc)));
> + str_yes_no(intel_uc_supports_guc_submission(uc)),
> + str_yes_no(intel_uc_wants_guc_submission(uc)),
> + str_yes_no(intel_uc_uses_guc_submission(uc)));
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
> index f3141b58d912..8e70c404bcc5 100644
> --- a/drivers/gpu/drm/i915/i915_debugfs.c
> +++ b/drivers/gpu/drm/i915/i915_debugfs.c
> @@ -28,6 +28,7 @@
>
> #include <linux/sched/mm.h>
> #include <linux/sort.h>
> +#include <linux/string_helpers.h>
>
> #include <drm/drm_debugfs.h>
>
> @@ -442,9 +443,11 @@ static int i915_rps_boost_info(struct seq_file *m, void *data)
> struct drm_i915_private *dev_priv = node_to_i915(m->private);
> struct intel_rps *rps = &to_gt(dev_priv)->rps;
>
> - seq_printf(m, "RPS enabled? %s\n", yesno(intel_rps_is_enabled(rps)));
> - seq_printf(m, "RPS active? %s\n", yesno(intel_rps_is_active(rps)));
> - seq_printf(m, "GPU busy? %s\n", yesno(to_gt(dev_priv)->awake));
> + seq_printf(m, "RPS enabled? %s\n",
> + str_yes_no(intel_rps_is_enabled(rps)));
> + seq_printf(m, "RPS active? %s\n",
> + str_yes_no(intel_rps_is_active(rps)));
> + seq_printf(m, "GPU busy? %s\n", str_yes_no(to_gt(dev_priv)->awake));
> seq_printf(m, "Boosts outstanding? %d\n",
> atomic_read(&rps->num_waiters));
> seq_printf(m, "Interactive? %d\n", READ_ONCE(rps->power.interactive));
> @@ -477,9 +480,9 @@ static int i915_runtime_pm_status(struct seq_file *m, void *unused)
> seq_printf(m, "Runtime power status: %s\n",
> enableddisabled(!dev_priv->power_domains.init_wakeref));
>
> - seq_printf(m, "GPU idle: %s\n", yesno(!to_gt(dev_priv)->awake));
> + seq_printf(m, "GPU idle: %s\n", str_yes_no(!to_gt(dev_priv)->awake));
> seq_printf(m, "IRQs disabled: %s\n",
> - yesno(!intel_irqs_enabled(dev_priv)));
> + str_yes_no(!intel_irqs_enabled(dev_priv)));
> #ifdef CONFIG_PM
> seq_printf(m, "Usage count: %d\n",
> atomic_read(&dev_priv->drm.dev->power.usage_count));
> @@ -509,7 +512,7 @@ static int i915_engine_info(struct seq_file *m, void *unused)
> wakeref = intel_runtime_pm_get(&i915->runtime_pm);
>
> seq_printf(m, "GT awake? %s [%d], %llums\n",
> - yesno(to_gt(i915)->awake),
> + str_yes_no(to_gt(i915)->awake),
> atomic_read(&to_gt(i915)->wakeref.count),
> ktime_to_ms(intel_gt_get_awake_time(to_gt(i915))));
> seq_printf(m, "CS timestamp frequency: %u Hz, %d ns\n",
> diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
> index aee42eae4729..e18a8c18d4fa 100644
> --- a/drivers/gpu/drm/i915/i915_gpu_error.c
> +++ b/drivers/gpu/drm/i915/i915_gpu_error.c
> @@ -31,6 +31,7 @@
> #include <linux/nmi.h>
> #include <linux/pagevec.h>
> #include <linux/scatterlist.h>
> +#include <linux/string_helpers.h>
> #include <linux/utsname.h>
> #include <linux/zlib.h>
>
> @@ -716,7 +717,7 @@ static void err_print_gt(struct drm_i915_error_state_buf *m,
> const struct intel_engine_coredump *ee;
> int i;
>
> - err_printf(m, "GT awake: %s\n", yesno(gt->awake));
> + err_printf(m, "GT awake: %s\n", str_yes_no(gt->awake));
> err_printf(m, "EIR: 0x%08x\n", gt->eir);
> err_printf(m, "IER: 0x%08x\n", gt->ier);
> for (i = 0; i < gt->ngtier; i++)
> @@ -824,14 +825,14 @@ static void __err_print_to_sgl(struct drm_i915_error_state_buf *m,
> struct intel_dmc *dmc = &m->i915->dmc;
>
> err_printf(m, "DMC loaded: %s\n",
> - yesno(intel_dmc_has_payload(m->i915) != 0));
> + str_yes_no(intel_dmc_has_payload(m->i915) != 0));
> err_printf(m, "DMC fw version: %d.%d\n",
> DMC_VERSION_MAJOR(dmc->version),
> DMC_VERSION_MINOR(dmc->version));
> }
>
> - err_printf(m, "RPM wakelock: %s\n", yesno(error->wakelock));
> - err_printf(m, "PM suspended: %s\n", yesno(error->suspended));
> + err_printf(m, "RPM wakelock: %s\n", str_yes_no(error->wakelock));
> + err_printf(m, "PM suspended: %s\n", str_yes_no(error->suspended));
>
> if (error->gt)
> err_print_gt(m, error->gt);
> diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
> index 525ae832aa9a..a28b10bc20ad 100644
> --- a/drivers/gpu/drm/i915/i915_params.c
> +++ b/drivers/gpu/drm/i915/i915_params.c
> @@ -22,6 +22,8 @@
> * IN THE SOFTWARE.
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_print.h>
>
> #include "i915_params.h"
> @@ -211,7 +213,8 @@ static __always_inline void _print_param(struct drm_printer *p,
> const void *x)
> {
> if (!__builtin_strcmp(type, "bool"))
> - drm_printf(p, "i915.%s=%s\n", name, yesno(*(const bool *)x));
> + drm_printf(p, "i915.%s=%s\n", name,
> + str_yes_no(*(const bool *)x));
> else if (!__builtin_strcmp(type, "int"))
> drm_printf(p, "i915.%s=%d\n", name, *(const int *)x);
> else if (!__builtin_strcmp(type, "unsigned int"))
> diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h
> index bfafd0afd117..c62b64012369 100644
> --- a/drivers/gpu/drm/i915/i915_utils.h
> +++ b/drivers/gpu/drm/i915/i915_utils.h
> @@ -399,11 +399,6 @@ wait_remaining_ms_from_jiffies(unsigned long timestamp_jiffies, int to_wait_ms)
> #define MBps(x) KBps(1000 * (x))
> #define GBps(x) ((u64)1000 * MBps((x)))
>
> -static inline const char *yesno(bool v)
> -{
> - return v ? "yes" : "no";
> -}
> -
> static inline const char *onoff(bool v)
> {
> return v ? "on" : "off";
> diff --git a/drivers/gpu/drm/i915/intel_device_info.c b/drivers/gpu/drm/i915/intel_device_info.c
> index 94da5aa37391..88f29ac11ddd 100644
> --- a/drivers/gpu/drm/i915/intel_device_info.c
> +++ b/drivers/gpu/drm/i915/intel_device_info.c
> @@ -22,6 +22,8 @@
> *
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_print.h>
> #include <drm/i915_pciids.h>
>
> @@ -110,11 +112,11 @@ void intel_device_info_print_static(const struct intel_device_info *info,
> drm_printf(p, "ppgtt-type: %d\n", info->ppgtt_type);
> drm_printf(p, "dma_mask_size: %u\n", info->dma_mask_size);
>
> -#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->name))
> +#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, str_yes_no(info->name))
> DEV_INFO_FOR_EACH_FLAG(PRINT_FLAG);
> #undef PRINT_FLAG
>
> -#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, yesno(info->display.name))
> +#define PRINT_FLAG(name) drm_printf(p, "%s: %s\n", #name, str_yes_no(info->display.name))
> DEV_INFO_DISPLAY_FOR_EACH_FLAG(PRINT_FLAG);
> #undef PRINT_FLAG
> }
> @@ -400,6 +402,6 @@ void intel_driver_caps_print(const struct intel_driver_caps *caps,
> struct drm_printer *p)
> {
> drm_printf(p, "Has logical contexts? %s\n",
> - yesno(caps->has_logical_contexts));
> + str_yes_no(caps->has_logical_contexts));
> drm_printf(p, "scheduler: %x\n", caps->scheduler);
> }
> diff --git a/drivers/gpu/drm/i915/intel_dram.c b/drivers/gpu/drm/i915/intel_dram.c
> index 3e26ccabf7f9..f8087f061e0b 100644
> --- a/drivers/gpu/drm/i915/intel_dram.c
> +++ b/drivers/gpu/drm/i915/intel_dram.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2020 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "i915_drv.h"
> #include "intel_dram.h"
> #include "intel_pcode.h"
> @@ -134,7 +136,7 @@ skl_dram_get_dimm_info(struct drm_i915_private *i915,
> drm_dbg_kms(&i915->drm,
> "CH%u DIMM %c size: %u Gb, width: X%u, ranks: %u, 16Gb DIMMs: %s\n",
> channel, dimm_name, dimm->size, dimm->width, dimm->ranks,
> - yesno(skl_is_16gb_dimm(dimm)));
> + str_yes_no(skl_is_16gb_dimm(dimm)));
> }
>
> static int
> @@ -163,7 +165,7 @@ skl_dram_get_channel_info(struct drm_i915_private *i915,
> skl_is_16gb_dimm(&ch->dimm_s);
>
> drm_dbg_kms(&i915->drm, "CH%u ranks: %u, 16Gb DIMMs: %s\n",
> - channel, ch->ranks, yesno(ch->is_16gb_dimm));
> + channel, ch->ranks, str_yes_no(ch->is_16gb_dimm));
>
> return 0;
> }
> @@ -212,7 +214,7 @@ skl_dram_get_channels_info(struct drm_i915_private *i915)
> dram_info->symmetric_memory = intel_is_dram_symmetric(&ch0, &ch1);
>
> drm_dbg_kms(&i915->drm, "Memory configuration is symmetric? %s\n",
> - yesno(dram_info->symmetric_memory));
> + str_yes_no(dram_info->symmetric_memory));
>
> return 0;
> }
> @@ -490,7 +492,7 @@ void intel_dram_detect(struct drm_i915_private *i915)
> drm_dbg_kms(&i915->drm, "DRAM channels: %u\n", dram_info->num_channels);
>
> drm_dbg_kms(&i915->drm, "Watermark level 0 adjustment needed: %s\n",
> - yesno(dram_info->wm_lv_0_adjust_needed));
> + str_yes_no(dram_info->wm_lv_0_adjust_needed));
> }
>
> static u32 gen9_edram_size_mb(struct drm_i915_private *i915, u32 cap)
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index c2bb9945f7be..c538a66687bd 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -26,6 +26,7 @@
> */
>
> #include <linux/module.h>
> +#include <linux/string_helpers.h>
> #include <linux/pm_runtime.h>
>
> #include <drm/drm_atomic_helper.h>
> @@ -6152,8 +6153,8 @@ skl_compute_ddb(struct intel_atomic_state *state)
> old_dbuf_state->enabled_slices,
> new_dbuf_state->enabled_slices,
> INTEL_INFO(dev_priv)->dbuf.slice_mask,
> - yesno(old_dbuf_state->joined_mbus),
> - yesno(new_dbuf_state->joined_mbus));
> + str_yes_no(old_dbuf_state->joined_mbus),
> + str_yes_no(new_dbuf_state->joined_mbus));
> }
>
> for_each_new_intel_crtc_in_state(state, crtc, new_crtc_state, i) {
> @@ -6651,7 +6652,7 @@ void skl_wm_get_hw_state(struct drm_i915_private *dev_priv)
> crtc->base.base.id, crtc->base.name,
> dbuf_state->slices[pipe], dbuf_state->ddb[pipe].start,
> dbuf_state->ddb[pipe].end, dbuf_state->active_pipes,
> - yesno(dbuf_state->joined_mbus));
> + str_yes_no(dbuf_state->joined_mbus));
> }
>
> dbuf_state->enabled_slices = dev_priv->dbuf.enabled_slices;
> @@ -6894,7 +6895,8 @@ void g4x_wm_get_hw_state(struct drm_i915_private *dev_priv)
> "Initial HPLL watermarks: plane=%d, SR cursor=%d fbc=%d\n",
> wm->hpll.plane, wm->hpll.cursor, wm->hpll.fbc);
> drm_dbg_kms(&dev_priv->drm, "Initial SR=%s HPLL=%s FBC=%s\n",
> - yesno(wm->cxsr), yesno(wm->hpll_en), yesno(wm->fbc_en));
> + str_yes_no(wm->cxsr), str_yes_no(wm->hpll_en),
> + str_yes_no(wm->fbc_en));
> }
>
> void g4x_wm_sanitize(struct drm_i915_private *dev_priv)
> diff --git a/drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c b/drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c
> index 10e1e45471f1..c9da1015eb42 100644
> --- a/drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c
> +++ b/drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.c
> @@ -4,6 +4,8 @@
> */
>
> #include <linux/debugfs.h>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_print.h>
>
> #include "gt/intel_gt_debugfs.h"
> @@ -22,7 +24,7 @@ static int pxp_info_show(struct seq_file *m, void *data)
> return 0;
> }
>
> - drm_printf(&p, "active: %s\n", yesno(intel_pxp_is_active(pxp)));
> + drm_printf(&p, "active: %s\n", str_yes_no(intel_pxp_is_active(pxp)));
> drm_printf(&p, "instance counter: %u\n", pxp->key_instance);
>
> return 0;
> diff --git a/drivers/gpu/drm/i915/selftests/i915_active.c b/drivers/gpu/drm/i915/selftests/i915_active.c
> index 2dac9be1de58..b61fe850e924 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_active.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_active.c
> @@ -5,6 +5,7 @@
> */
>
> #include <linux/kref.h>
> +#include <linux/string_helpers.h>
>
> #include "gem/i915_gem_pm.h"
> #include "gt/intel_gt.h"
> @@ -280,7 +281,7 @@ void i915_active_print(struct i915_active *ref, struct drm_printer *m)
> drm_printf(m, "active %ps:%ps\n", ref->active, ref->retire);
> drm_printf(m, "\tcount: %d\n", atomic_read(&ref->count));
> drm_printf(m, "\tpreallocated barriers? %s\n",
> - yesno(!llist_empty(&ref->preallocated_barriers)));
> + str_yes_no(!llist_empty(&ref->preallocated_barriers)));
>
> if (i915_active_acquire_if_busy(ref)) {
> struct active_node *it, *n;
> --
> 2.34.1
>
--
Matt Roper
Graphics Software Engineer
VTT-OSGC Platform Enablement
Intel Corporation
(916) 356-2795
On Wed, Jan 26, 2022 at 01:39:45AM -0800, Lucas De Marchi wrote:
> Remove the local enableddisabled() implementation and adopt the
> str_enabled_disabled() from linux/string_helpers.h.
>
> Signed-off-by: Lucas De Marchi <[email protected]>
> Acked-by: Daniel Vetter <[email protected]>
> Acked-by: Jani Nikula <[email protected]>
There's two open-coded versions of this in intel_dp_hdcp.c
(intel_dp_mst_hdcp_stream_encryption() and
intel_dp_mst_hdcp2_stream_encryption()) that you might want to convert
as well. Up to you whether you squash them into this patch or convert
them as a separate patch. Either way,
Reviewed-by: Matt Roper <[email protected]>
> ---
> drivers/gpu/drm/i915/display/intel_backlight.c | 3 ++-
> drivers/gpu/drm/i915/display/intel_display.c | 16 ++++++++--------
> .../gpu/drm/i915/display/intel_display_debugfs.c | 8 ++++----
> drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 7 ++++---
> drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 3 ++-
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 2 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 2 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 2 +-
> drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c | 2 +-
> drivers/gpu/drm/i915/gt/uc/intel_uc.c | 4 ++--
> drivers/gpu/drm/i915/i915_debugfs.c | 2 +-
> drivers/gpu/drm/i915/i915_driver.c | 4 +++-
> drivers/gpu/drm/i915/i915_utils.h | 6 +-----
> drivers/gpu/drm/i915/intel_pm.c | 4 ++--
> 14 files changed, 33 insertions(+), 32 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_backlight.c b/drivers/gpu/drm/i915/display/intel_backlight.c
> index 98f7ea44042f..c8e1fc53a881 100644
> --- a/drivers/gpu/drm/i915/display/intel_backlight.c
> +++ b/drivers/gpu/drm/i915/display/intel_backlight.c
> @@ -5,6 +5,7 @@
>
> #include <linux/kernel.h>
> #include <linux/pwm.h>
> +#include <linux/string_helpers.h>
>
> #include "intel_backlight.h"
> #include "intel_connector.h"
> @@ -1633,7 +1634,7 @@ int intel_backlight_setup(struct intel_connector *connector, enum pipe pipe)
> drm_dbg_kms(&dev_priv->drm,
> "Connector %s backlight initialized, %s, brightness %u/%u\n",
> connector->base.name,
> - enableddisabled(panel->backlight.enabled),
> + str_enabled_disabled(panel->backlight.enabled),
> panel->backlight.level, panel->backlight.max);
>
> return 0;
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index bd453861088e..8920bdb53b7b 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -3110,8 +3110,8 @@ static void intel_panel_sanitize_ssc(struct drm_i915_private *dev_priv)
> if (dev_priv->vbt.lvds_use_ssc != bios_lvds_use_ssc) {
> drm_dbg_kms(&dev_priv->drm,
> "SSC %s by BIOS, overriding VBT which says %s\n",
> - enableddisabled(bios_lvds_use_ssc),
> - enableddisabled(dev_priv->vbt.lvds_use_ssc));
> + str_enabled_disabled(bios_lvds_use_ssc),
> + str_enabled_disabled(dev_priv->vbt.lvds_use_ssc));
> dev_priv->vbt.lvds_use_ssc = bios_lvds_use_ssc;
> }
> }
> @@ -5648,7 +5648,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
> pipe_config->bigjoiner ? "master" : "no");
>
> drm_dbg_kms(&dev_priv->drm, "splitter: %s, link count %d, overlap %d\n",
> - enableddisabled(pipe_config->splitter.enable),
> + str_enabled_disabled(pipe_config->splitter.enable),
> pipe_config->splitter.link_count,
> pipe_config->splitter.pixel_overlap);
>
> @@ -5736,7 +5736,7 @@ static void intel_dump_pipe_config(const struct intel_crtc_state *pipe_config,
> drm_dbg_kms(&dev_priv->drm,
> "pch pfit: " DRM_RECT_FMT ", %s, force thru: %s\n",
> DRM_RECT_ARG(&pipe_config->pch_pfit.dst),
> - enableddisabled(pipe_config->pch_pfit.enabled),
> + str_enabled_disabled(pipe_config->pch_pfit.enabled),
> str_yes_no(pipe_config->pch_pfit.force_thru));
>
> drm_dbg_kms(&dev_priv->drm, "ips: %i, double wide: %i\n",
> @@ -10300,7 +10300,7 @@ static void readout_plane_state(struct drm_i915_private *dev_priv)
> drm_dbg_kms(&dev_priv->drm,
> "[PLANE:%d:%s] hw state readout: %s, pipe %c\n",
> plane->base.base.id, plane->base.name,
> - enableddisabled(visible), pipe_name(pipe));
> + str_enabled_disabled(visible), pipe_name(pipe));
> }
>
> for_each_intel_crtc(&dev_priv->drm, crtc) {
> @@ -10346,7 +10346,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
> drm_dbg_kms(&dev_priv->drm,
> "[CRTC:%d:%s] hw state readout: %s\n",
> crtc->base.base.id, crtc->base.name,
> - enableddisabled(crtc_state->hw.active));
> + str_enabled_disabled(crtc_state->hw.active));
> }
>
> cdclk_state->active_pipes = dbuf_state->active_pipes = active_pipes;
> @@ -10384,7 +10384,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
> drm_dbg_kms(&dev_priv->drm,
> "[ENCODER:%d:%s] hw state readout: %s, pipe %c\n",
> encoder->base.base.id, encoder->base.name,
> - enableddisabled(encoder->base.crtc),
> + str_enabled_disabled(encoder->base.crtc),
> pipe_name(pipe));
> }
>
> @@ -10422,7 +10422,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
> drm_dbg_kms(&dev_priv->drm,
> "[CONNECTOR:%d:%s] hw state readout: %s\n",
> connector->base.base.id, connector->base.name,
> - enableddisabled(connector->base.encoder));
> + str_enabled_disabled(connector->base.encoder));
> }
> drm_connector_list_iter_end(&conn_iter);
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> index a9ba998e0659..6bc820c3f00e 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
> @@ -93,7 +93,7 @@ static int i915_sr_status(struct seq_file *m, void *unused)
>
> intel_display_power_put(dev_priv, POWER_DOMAIN_INIT, wakeref);
>
> - seq_printf(m, "self-refresh: %s\n", enableddisabled(sr_enabled));
> + seq_printf(m, "self-refresh: %s\n", str_enabled_disabled(sr_enabled));
>
> return 0;
> }
> @@ -296,7 +296,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
> enabled = val & EDP_PSR_ENABLE;
> }
> seq_printf(m, "Source PSR ctl: %s [0x%08x]\n",
> - enableddisabled(enabled), val);
> + str_enabled_disabled(enabled), val);
> psr_source_status(intel_dp, m);
> seq_printf(m, "Busy frontbuffer bits: 0x%08x\n",
> psr->busy_frontbuffer_bits);
> @@ -343,7 +343,7 @@ static int intel_psr_status(struct seq_file *m, struct intel_dp *intel_dp)
> }
>
> seq_printf(m, "PSR2 selective fetch: %s\n",
> - enableddisabled(psr->psr2_sel_fetch_enabled));
> + str_enabled_disabled(psr->psr2_sel_fetch_enabled));
> }
>
> unlock:
> @@ -1268,7 +1268,7 @@ static int i915_lpsp_status(struct seq_file *m, void *unused)
> return 0;
> }
>
> - seq_printf(m, "LPSP: %s\n", enableddisabled(lpsp_enabled));
> + seq_printf(m, "LPSP: %s\n", str_enabled_disabled(lpsp_enabled));
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
> index da0bd056f3d3..5e1e2e7fe382 100644
> --- a/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
> +++ b/drivers/gpu/drm/i915/display/intel_dsi_vbt.c
> @@ -30,6 +30,7 @@
> #include <linux/pinctrl/consumer.h>
> #include <linux/pinctrl/machine.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
>
> #include <asm/unaligned.h>
>
> @@ -684,9 +685,9 @@ void intel_dsi_log_params(struct intel_dsi *intel_dsi)
> intel_dsi->burst_mode_ratio);
> drm_dbg_kms(&i915->drm, "Reset timer %d\n", intel_dsi->rst_timer_val);
> drm_dbg_kms(&i915->drm, "Eot %s\n",
> - enableddisabled(intel_dsi->eotp_pkt));
> + str_enabled_disabled(intel_dsi->eotp_pkt));
> drm_dbg_kms(&i915->drm, "Clockstop %s\n",
> - enableddisabled(!intel_dsi->clock_stop));
> + str_enabled_disabled(!intel_dsi->clock_stop));
> drm_dbg_kms(&i915->drm, "Mode %s\n",
> intel_dsi->operation_mode ? "command" : "video");
> if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK)
> @@ -713,7 +714,7 @@ void intel_dsi_log_params(struct intel_dsi *intel_dsi)
> drm_dbg_kms(&i915->drm, "HS to LP Clock Count 0x%x\n",
> intel_dsi->clk_hs_to_lp_count);
> drm_dbg_kms(&i915->drm, "BTA %s\n",
> - enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
> + str_enabled_disabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
> }
>
> bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
> diff --git a/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c b/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
> index 209cf265bf74..9dc9dccf7b09 100644
> --- a/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
> @@ -4,6 +4,7 @@
> */
>
> #include <linux/kthread.h>
> +#include <linux/string_helpers.h>
> #include <trace/events/dma_fence.h>
> #include <uapi/linux/sched/types.h>
>
> @@ -512,7 +513,7 @@ void intel_engine_print_breadcrumbs(struct intel_engine_cs *engine,
> if (!b)
> return;
>
> - drm_printf(p, "IRQ: %s\n", enableddisabled(b->irq_armed));
> + drm_printf(p, "IRQ: %s\n", str_enabled_disabled(b->irq_armed));
> if (!list_empty(&b->signalers))
> print_signals(b, p);
> }
> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> index 07de0fb56f51..6f4a39a3b44f 100644
> --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> @@ -1642,7 +1642,7 @@ static void intel_engine_print_registers(struct intel_engine_cs *engine,
>
> drm_printf(m, "\tExeclist tasklet queued? %s (%s), preempt? %s, timeslice? %s\n",
> str_yes_no(test_bit(TASKLET_STATE_SCHED, &engine->sched_engine->tasklet.state)),
> - enableddisabled(!atomic_read(&engine->sched_engine->tasklet.count)),
> + str_enabled_disabled(!atomic_read(&engine->sched_engine->tasklet.count)),
> repr_timer(&engine->execlists.preempt),
> repr_timer(&engine->execlists.timer));
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
> index 31c3c3bceb95..0cfb29440c47 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
> @@ -1203,7 +1203,7 @@ void intel_guc_ct_event_handler(struct intel_guc_ct *ct)
> void intel_guc_ct_print_info(struct intel_guc_ct *ct,
> struct drm_printer *p)
> {
> - drm_printf(p, "CT %s\n", enableddisabled(ct->enabled));
> + drm_printf(p, "CT %s\n", str_enabled_disabled(ct->enabled));
>
> if (!ct->enabled)
> return;
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
> index 8a99c2e624c2..a24dc6441872 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_log.c
> @@ -477,7 +477,7 @@ int intel_guc_log_create(struct intel_guc_log *log)
>
> log->level = __get_default_log_level(log);
> DRM_DEBUG_DRIVER("guc_log_level=%d (%s, verbose:%s, verbosity:%d)\n",
> - log->level, enableddisabled(log->level),
> + log->level, str_enabled_disabled(log->level),
> str_yes_no(GUC_LOG_LEVEL_IS_VERBOSE(log->level)),
> GUC_LOG_LEVEL_TO_VERBOSITY(log->level));
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
> index f8fc90ea71e7..e00661fb0853 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
> @@ -66,7 +66,7 @@ static int __guc_rc_control(struct intel_guc *guc, bool enable)
> }
>
> drm_info(>->i915->drm, "GuC RC: %s\n",
> - enableddisabled(enable));
> + str_enabled_disabled(enable));
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> index 8e756d4c2c16..8c9ef690ac9d 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> @@ -524,9 +524,9 @@ static int __uc_init_hw(struct intel_uc *uc)
> }
>
> drm_info(&i915->drm, "GuC submission %s\n",
> - enableddisabled(intel_uc_uses_guc_submission(uc)));
> + str_enabled_disabled(intel_uc_uses_guc_submission(uc)));
> drm_info(&i915->drm, "GuC SLPC %s\n",
> - enableddisabled(intel_uc_uses_guc_slpc(uc)));
> + str_enabled_disabled(intel_uc_uses_guc_slpc(uc)));
>
> return 0;
>
> diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
> index 8e70c404bcc5..b98ea01af075 100644
> --- a/drivers/gpu/drm/i915/i915_debugfs.c
> +++ b/drivers/gpu/drm/i915/i915_debugfs.c
> @@ -478,7 +478,7 @@ static int i915_runtime_pm_status(struct seq_file *m, void *unused)
> seq_puts(m, "Runtime power management not supported\n");
>
> seq_printf(m, "Runtime power status: %s\n",
> - enableddisabled(!dev_priv->power_domains.init_wakeref));
> + str_enabled_disabled(!dev_priv->power_domains.init_wakeref));
>
> seq_printf(m, "GPU idle: %s\n", str_yes_no(!to_gt(dev_priv)->awake));
> seq_printf(m, "IRQs disabled: %s\n",
> diff --git a/drivers/gpu/drm/i915/i915_driver.c b/drivers/gpu/drm/i915/i915_driver.c
> index 3d41f532a5d6..e89afce4c576 100644
> --- a/drivers/gpu/drm/i915/i915_driver.c
> +++ b/drivers/gpu/drm/i915/i915_driver.c
> @@ -36,6 +36,7 @@
> #include <linux/pm_runtime.h>
> #include <linux/pnp.h>
> #include <linux/slab.h>
> +#include <linux/string_helpers.h>
> #include <linux/vga_switcheroo.h>
> #include <linux/vt.h>
>
> @@ -749,7 +750,8 @@ static void i915_driver_unregister(struct drm_i915_private *dev_priv)
> void
> i915_print_iommu_status(struct drm_i915_private *i915, struct drm_printer *p)
> {
> - drm_printf(p, "iommu: %s\n", enableddisabled(intel_vtd_active(i915)));
> + drm_printf(p, "iommu: %s\n",
> + str_enabled_disabled(intel_vtd_active(i915)));
> }
>
> static void i915_welcome_messages(struct drm_i915_private *dev_priv)
> diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h
> index 06aac2be49ee..6d26920d0632 100644
> --- a/drivers/gpu/drm/i915/i915_utils.h
> +++ b/drivers/gpu/drm/i915/i915_utils.h
> @@ -28,6 +28,7 @@
> #include <linux/list.h>
> #include <linux/overflow.h>
> #include <linux/sched.h>
> +#include <linux/string_helpers.h>
> #include <linux/types.h>
> #include <linux/workqueue.h>
> #include <linux/sched/clock.h>
> @@ -404,11 +405,6 @@ static inline const char *onoff(bool v)
> return v ? "on" : "off";
> }
>
> -static inline const char *enableddisabled(bool v)
> -{
> - return v ? "enabled" : "disabled";
> -}
> -
> void add_taint_for_CI(struct drm_i915_private *i915, unsigned int taint);
> static inline void __add_taint_for_CI(unsigned int taint)
> {
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index c538a66687bd..69f442200784 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -413,8 +413,8 @@ static bool _intel_set_memory_cxsr(struct drm_i915_private *dev_priv, bool enabl
> trace_intel_memory_cxsr(dev_priv, was_enabled, enable);
>
> drm_dbg_kms(&dev_priv->drm, "memory self-refresh is %s (was %s)\n",
> - enableddisabled(enable),
> - enableddisabled(was_enabled));
> + str_enabled_disabled(enable),
> + str_enabled_disabled(was_enabled));
>
> return was_enabled;
> }
> --
> 2.34.1
>
--
Matt Roper
Graphics Software Engineer
VTT-OSGC Platform Enablement
Intel Corporation
(916) 356-2795
On Wed, Jan 26, 2022 at 01:39:44AM -0800, Lucas De Marchi wrote:
> Remove the local enabledisable() implementation and adopt the
> str_enable_disable() from linux/string_helpers.h.
>
> Signed-off-by: Lucas De Marchi <[email protected]>
> Acked-by: Daniel Vetter <[email protected]>
> Acked-by: Jani Nikula <[email protected]>
There's an open-coded version of this in display/intel_pps.c,
intel_pps_backlight_power(). Up to you whether you squash it into this
patch or convert it as a follow-up. Either way.
Reviewed-by: Matt Roper <[email protected]>
> ---
> drivers/gpu/drm/i915/display/intel_ddi.c | 4 +++-
> drivers/gpu/drm/i915/display/intel_display_power.c | 4 +++-
> drivers/gpu/drm/i915/display/intel_dp.c | 8 ++++----
> drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 3 ++-
> drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c | 4 +++-
> drivers/gpu/drm/i915/i915_utils.h | 5 -----
> 6 files changed, 15 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
> index 2f20abc5122d..4b35a8597632 100644
> --- a/drivers/gpu/drm/i915/display/intel_ddi.c
> +++ b/drivers/gpu/drm/i915/display/intel_ddi.c
> @@ -25,6 +25,8 @@
> *
> */
>
> +#include <linux/string_helpers.h>
> +
> #include <drm/drm_privacy_screen_consumer.h>
> #include <drm/drm_scdc_helper.h>
>
> @@ -2152,7 +2154,7 @@ static void intel_dp_sink_set_msa_timing_par_ignore_state(struct intel_dp *intel
> enable ? DP_MSA_TIMING_PAR_IGNORE_EN : 0) <= 0)
> drm_dbg_kms(&i915->drm,
> "Failed to %s MSA_TIMING_PAR_IGNORE in the sink\n",
> - enabledisable(enable));
> + str_enable_disable(enable));
> }
>
> static void intel_dp_sink_set_fec_ready(struct intel_dp *intel_dp,
> diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c b/drivers/gpu/drm/i915/display/intel_display_power.c
> index 369317805d24..1f77cb9edddf 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_power.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_power.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2019 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "i915_drv.h"
> #include "i915_irq.h"
> #include "intel_cdclk.h"
> @@ -5302,7 +5304,7 @@ static void gen9_dbuf_slice_set(struct drm_i915_private *dev_priv,
> state = intel_de_read(dev_priv, reg) & DBUF_POWER_STATE;
> drm_WARN(&dev_priv->drm, enable != state,
> "DBuf slice %d power %s timeout!\n",
> - slice, enabledisable(enable));
> + slice, str_enable_disable(enable));
> }
>
> void gen9_dbuf_slices_update(struct drm_i915_private *dev_priv,
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c
> index 62c1535d696d..933fc316ea53 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -1987,7 +1987,7 @@ void intel_dp_sink_set_decompression_state(struct intel_dp *intel_dp,
> if (ret < 0)
> drm_dbg_kms(&i915->drm,
> "Failed to %s sink decompression state\n",
> - enabledisable(enable));
> + str_enable_disable(enable));
> }
>
> static void
> @@ -2463,7 +2463,7 @@ void intel_dp_configure_protocol_converter(struct intel_dp *intel_dp,
> if (drm_dp_dpcd_writeb(&intel_dp->aux,
> DP_PROTOCOL_CONVERTER_CONTROL_0, tmp) != 1)
> drm_dbg_kms(&i915->drm, "Failed to %s protocol converter HDMI mode\n",
> - enabledisable(intel_dp->has_hdmi_sink));
> + str_enable_disable(intel_dp->has_hdmi_sink));
>
> tmp = crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR444 &&
> intel_dp->dfp.ycbcr_444_to_420 ? DP_CONVERSION_TO_YCBCR420_ENABLE : 0;
> @@ -2472,7 +2472,7 @@ void intel_dp_configure_protocol_converter(struct intel_dp *intel_dp,
> DP_PROTOCOL_CONVERTER_CONTROL_1, tmp) != 1)
> drm_dbg_kms(&i915->drm,
> "Failed to %s protocol converter YCbCr 4:2:0 conversion mode\n",
> - enabledisable(intel_dp->dfp.ycbcr_444_to_420));
> + str_enable_disable(intel_dp->dfp.ycbcr_444_to_420));
>
> tmp = 0;
> if (intel_dp->dfp.rgb_to_ycbcr) {
> @@ -2510,7 +2510,7 @@ void intel_dp_configure_protocol_converter(struct intel_dp *intel_dp,
> if (drm_dp_pcon_convert_rgb_to_ycbcr(&intel_dp->aux, tmp) < 0)
> drm_dbg_kms(&i915->drm,
> "Failed to %s protocol converter RGB->YCbCr conversion mode\n",
> - enabledisable(tmp));
> + str_enable_disable(tmp));
> }
>
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
> index de89d40abd38..31c3c3bceb95 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c
> @@ -6,6 +6,7 @@
> #include <linux/circ_buf.h>
> #include <linux/ktime.h>
> #include <linux/time64.h>
> +#include <linux/string_helpers.h>
> #include <linux/timekeeping.h>
>
> #include "i915_drv.h"
> @@ -170,7 +171,7 @@ static int ct_control_enable(struct intel_guc_ct *ct, bool enable)
> GUC_CTB_CONTROL_ENABLE : GUC_CTB_CONTROL_DISABLE);
> if (unlikely(err))
> CT_PROBE_ERROR(ct, "Failed to control/%s CTB (%pe)\n",
> - enabledisable(enable), ERR_PTR(err));
> + str_enable_disable(enable), ERR_PTR(err));
>
> return err;
> }
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
> index fc805d466d99..f8fc90ea71e7 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_rc.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2021 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "intel_guc_rc.h"
> #include "gt/intel_gt.h"
> #include "i915_drv.h"
> @@ -59,7 +61,7 @@ static int __guc_rc_control(struct intel_guc *guc, bool enable)
> ret = guc_action_control_gucrc(guc, enable);
> if (ret) {
> drm_err(drm, "Failed to %s GuC RC (%pe)\n",
> - enabledisable(enable), ERR_PTR(ret));
> + str_enable_disable(enable), ERR_PTR(ret));
> return ret;
> }
>
> diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h
> index c62b64012369..06aac2be49ee 100644
> --- a/drivers/gpu/drm/i915/i915_utils.h
> +++ b/drivers/gpu/drm/i915/i915_utils.h
> @@ -404,11 +404,6 @@ static inline const char *onoff(bool v)
> return v ? "on" : "off";
> }
>
> -static inline const char *enabledisable(bool v)
> -{
> - return v ? "enable" : "disable";
> -}
> -
> static inline const char *enableddisabled(bool v)
> {
> return v ? "enabled" : "disabled";
> --
> 2.34.1
>
--
Matt Roper
Graphics Software Engineer
VTT-OSGC Platform Enablement
Intel Corporation
(916) 356-2795
On Wed, Jan 26, 2022 at 01:39:46AM -0800, Lucas De Marchi wrote:
> Remove the local onoff() implementation and adopt the
> str_on_off() from linux/string_helpers.h.
>
> Signed-off-by: Lucas De Marchi <[email protected]>
> Acked-by: Daniel Vetter <[email protected]>
> Acked-by: Jani Nikula <[email protected]>
Reviewed-by: Matt Roper <[email protected]>
> ---
> drivers/gpu/drm/i915/display/g4x_dp.c | 6 ++++--
> drivers/gpu/drm/i915/display/intel_display.c | 7 ++++---
> drivers/gpu/drm/i915/display/intel_display_trace.h | 3 ++-
> drivers/gpu/drm/i915/display/intel_dpll.c | 3 ++-
> drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 7 +++++--
> drivers/gpu/drm/i915/display/intel_fdi.c | 8 +++++---
> drivers/gpu/drm/i915/display/vlv_dsi_pll.c | 3 ++-
> drivers/gpu/drm/i915/gt/intel_rc6.c | 5 +++--
> drivers/gpu/drm/i915/i915_utils.h | 5 -----
> drivers/gpu/drm/i915/vlv_suspend.c | 3 ++-
> 10 files changed, 29 insertions(+), 21 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/g4x_dp.c b/drivers/gpu/drm/i915/display/g4x_dp.c
> index f37677df6ebf..3e729bff1232 100644
> --- a/drivers/gpu/drm/i915/display/g4x_dp.c
> +++ b/drivers/gpu/drm/i915/display/g4x_dp.c
> @@ -5,6 +5,8 @@
> * DisplayPort support for G4x,ILK,SNB,IVB,VLV,CHV (HSW+ handled by the DDI code).
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "g4x_dp.h"
> #include "intel_audio.h"
> #include "intel_backlight.h"
> @@ -191,7 +193,7 @@ static void assert_dp_port(struct intel_dp *intel_dp, bool state)
> I915_STATE_WARN(cur_state != state,
> "[ENCODER:%d:%s] state assertion failure (expected %s, current %s)\n",
> dig_port->base.base.base.id, dig_port->base.base.name,
> - onoff(state), onoff(cur_state));
> + str_on_off(state), str_on_off(cur_state));
> }
> #define assert_dp_port_disabled(d) assert_dp_port((d), false)
>
> @@ -201,7 +203,7 @@ static void assert_edp_pll(struct drm_i915_private *dev_priv, bool state)
>
> I915_STATE_WARN(cur_state != state,
> "eDP PLL state assertion failure (expected %s, current %s)\n",
> - onoff(state), onoff(cur_state));
> + str_on_off(state), str_on_off(cur_state));
> }
> #define assert_edp_pll_enabled(d) assert_edp_pll((d), true)
> #define assert_edp_pll_disabled(d) assert_edp_pll((d), false)
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 8920bdb53b7b..49f994f36fce 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -377,7 +377,7 @@ static void wait_for_pipe_scanline_moving(struct intel_crtc *crtc, bool state)
> if (wait_for(pipe_scanline_is_moving(dev_priv, pipe) == state, 100))
> drm_err(&dev_priv->drm,
> "pipe %c scanline %s wait timed out\n",
> - pipe_name(pipe), onoff(state));
> + pipe_name(pipe), str_on_off(state));
> }
>
> static void intel_wait_for_pipe_scanline_stopped(struct intel_crtc *crtc)
> @@ -435,7 +435,7 @@ void assert_transcoder(struct drm_i915_private *dev_priv,
> I915_STATE_WARN(cur_state != state,
> "transcoder %s assertion failure (expected %s, current %s)\n",
> transcoder_name(cpu_transcoder),
> - onoff(state), onoff(cur_state));
> + str_on_off(state), str_on_off(cur_state));
> }
>
> static void assert_plane(struct intel_plane *plane, bool state)
> @@ -447,7 +447,8 @@ static void assert_plane(struct intel_plane *plane, bool state)
>
> I915_STATE_WARN(cur_state != state,
> "%s assertion failure (expected %s, current %s)\n",
> - plane->base.name, onoff(state), onoff(cur_state));
> + plane->base.name, str_on_off(state),
> + str_on_off(cur_state));
> }
>
> #define assert_plane_enabled(p) assert_plane(p, true)
> diff --git a/drivers/gpu/drm/i915/display/intel_display_trace.h b/drivers/gpu/drm/i915/display/intel_display_trace.h
> index dcdd242fffd9..2dd5a4b7f5d8 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_trace.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_trace.h
> @@ -9,6 +9,7 @@
> #if !defined(__INTEL_DISPLAY_TRACE_H__) || defined(TRACE_HEADER_MULTI_READ)
> #define __INTEL_DISPLAY_TRACE_H__
>
> +#include <linux/string_helpers.h>
> #include <linux/types.h>
> #include <linux/tracepoint.h>
>
> @@ -161,7 +162,7 @@ TRACE_EVENT(intel_memory_cxsr,
> ),
>
> TP_printk("%s->%s, pipe A: frame=%u, scanline=%u, pipe B: frame=%u, scanline=%u, pipe C: frame=%u, scanline=%u",
> - onoff(__entry->old), onoff(__entry->new),
> + str_on_off(__entry->old), str_on_off(__entry->new),
> __entry->frame[PIPE_A], __entry->scanline[PIPE_A],
> __entry->frame[PIPE_B], __entry->scanline[PIPE_B],
> __entry->frame[PIPE_C], __entry->scanline[PIPE_C])
> diff --git a/drivers/gpu/drm/i915/display/intel_dpll.c b/drivers/gpu/drm/i915/display/intel_dpll.c
> index 1ce0c171f4fb..1c401fd09eef 100644
> --- a/drivers/gpu/drm/i915/display/intel_dpll.c
> +++ b/drivers/gpu/drm/i915/display/intel_dpll.c
> @@ -4,6 +4,7 @@
> */
>
> #include <linux/kernel.h>
> +#include <linux/string_helpers.h>
>
> #include "intel_crtc.h"
> #include "intel_de.h"
> @@ -1933,7 +1934,7 @@ static void assert_pll(struct drm_i915_private *dev_priv,
> cur_state = intel_de_read(dev_priv, DPLL(pipe)) & DPLL_VCO_ENABLE;
> I915_STATE_WARN(cur_state != state,
> "PLL state assertion failure (expected %s, current %s)\n",
> - onoff(state), onoff(cur_state));
> + str_on_off(state), str_on_off(cur_state));
> }
>
> void assert_pll_enabled(struct drm_i915_private *i915, enum pipe pipe)
> diff --git a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
> index 6723c3de5a80..a787995c0f79 100644
> --- a/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
> +++ b/drivers/gpu/drm/i915/display/intel_dpll_mgr.c
> @@ -21,6 +21,8 @@
> * DEALINGS IN THE SOFTWARE.
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "intel_de.h"
> #include "intel_display_types.h"
> #include "intel_dpio_phy.h"
> @@ -178,13 +180,14 @@ void assert_shared_dpll(struct drm_i915_private *dev_priv,
> struct intel_dpll_hw_state hw_state;
>
> if (drm_WARN(&dev_priv->drm, !pll,
> - "asserting DPLL %s with no DPLL\n", onoff(state)))
> + "asserting DPLL %s with no DPLL\n", str_on_off(state)))
> return;
>
> cur_state = intel_dpll_get_hw_state(dev_priv, pll, &hw_state);
> I915_STATE_WARN(cur_state != state,
> "%s assertion failure (expected %s, current %s)\n",
> - pll->info->name, onoff(state), onoff(cur_state));
> + pll->info->name, str_on_off(state),
> + str_on_off(cur_state));
> }
>
> static enum tc_port icl_pll_id_to_tc_port(enum intel_dpll_id id)
> diff --git a/drivers/gpu/drm/i915/display/intel_fdi.c b/drivers/gpu/drm/i915/display/intel_fdi.c
> index 3d6e22923601..0fd2941313aa 100644
> --- a/drivers/gpu/drm/i915/display/intel_fdi.c
> +++ b/drivers/gpu/drm/i915/display/intel_fdi.c
> @@ -3,6 +3,8 @@
> * Copyright ? 2020 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> +
> #include "intel_atomic.h"
> #include "intel_crtc.h"
> #include "intel_ddi.h"
> @@ -29,7 +31,7 @@ static void assert_fdi_tx(struct drm_i915_private *dev_priv,
> }
> I915_STATE_WARN(cur_state != state,
> "FDI TX state assertion failure (expected %s, current %s)\n",
> - onoff(state), onoff(cur_state));
> + str_on_off(state), str_on_off(cur_state));
> }
>
> void assert_fdi_tx_enabled(struct drm_i915_private *i915, enum pipe pipe)
> @@ -50,7 +52,7 @@ static void assert_fdi_rx(struct drm_i915_private *dev_priv,
> cur_state = intel_de_read(dev_priv, FDI_RX_CTL(pipe)) & FDI_RX_ENABLE;
> I915_STATE_WARN(cur_state != state,
> "FDI RX state assertion failure (expected %s, current %s)\n",
> - onoff(state), onoff(cur_state));
> + str_on_off(state), str_on_off(cur_state));
> }
>
> void assert_fdi_rx_enabled(struct drm_i915_private *i915, enum pipe pipe)
> @@ -88,7 +90,7 @@ static void assert_fdi_rx_pll(struct drm_i915_private *i915,
> cur_state = intel_de_read(i915, FDI_RX_CTL(pipe)) & FDI_RX_PLL_ENABLE;
> I915_STATE_WARN(cur_state != state,
> "FDI RX PLL assertion failure (expected %s, current %s)\n",
> - onoff(state), onoff(cur_state));
> + str_on_off(state), str_on_off(cur_state));
> }
>
> void assert_fdi_rx_pll_enabled(struct drm_i915_private *i915, enum pipe pipe)
> diff --git a/drivers/gpu/drm/i915/display/vlv_dsi_pll.c b/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
> index 1b81797dd02e..7f9c0a7c3446 100644
> --- a/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
> +++ b/drivers/gpu/drm/i915/display/vlv_dsi_pll.c
> @@ -26,6 +26,7 @@
> */
>
> #include <linux/kernel.h>
> +#include <linux/string_helpers.h>
>
> #include "i915_drv.h"
> #include "intel_de.h"
> @@ -580,7 +581,7 @@ static void assert_dsi_pll(struct drm_i915_private *i915, bool state)
>
> I915_STATE_WARN(cur_state != state,
> "DSI PLL state assertion failure (expected %s, current %s)\n",
> - onoff(state), onoff(cur_state));
> + str_on_off(state), str_on_off(cur_state));
> }
>
> void assert_dsi_pll_enabled(struct drm_i915_private *i915)
> diff --git a/drivers/gpu/drm/i915/gt/intel_rc6.c b/drivers/gpu/drm/i915/gt/intel_rc6.c
> index bb0d6e363f5d..cde83e382ebe 100644
> --- a/drivers/gpu/drm/i915/gt/intel_rc6.c
> +++ b/drivers/gpu/drm/i915/gt/intel_rc6.c
> @@ -4,6 +4,7 @@
> */
>
> #include <linux/pm_runtime.h>
> +#include <linux/string_helpers.h>
>
> #include "i915_drv.h"
> #include "i915_vgpu.h"
> @@ -428,8 +429,8 @@ static bool bxt_check_bios_rc6_setup(struct intel_rc6 *rc6)
> rc_sw_target >>= RC_SW_TARGET_STATE_SHIFT;
> drm_dbg(&i915->drm, "BIOS enabled RC states: "
> "HW_CTRL %s HW_RC6 %s SW_TARGET_STATE %x\n",
> - onoff(rc_ctl & GEN6_RC_CTL_HW_ENABLE),
> - onoff(rc_ctl & GEN6_RC_CTL_RC6_ENABLE),
> + str_on_off(rc_ctl & GEN6_RC_CTL_HW_ENABLE),
> + str_on_off(rc_ctl & GEN6_RC_CTL_RC6_ENABLE),
> rc_sw_target);
>
> if (!(intel_uncore_read(uncore, RC6_LOCATION) & RC6_CTX_IN_DRAM)) {
> diff --git a/drivers/gpu/drm/i915/i915_utils.h b/drivers/gpu/drm/i915/i915_utils.h
> index 6d26920d0632..3ff9611ff81c 100644
> --- a/drivers/gpu/drm/i915/i915_utils.h
> +++ b/drivers/gpu/drm/i915/i915_utils.h
> @@ -400,11 +400,6 @@ wait_remaining_ms_from_jiffies(unsigned long timestamp_jiffies, int to_wait_ms)
> #define MBps(x) KBps(1000 * (x))
> #define GBps(x) ((u64)1000 * MBps((x)))
>
> -static inline const char *onoff(bool v)
> -{
> - return v ? "on" : "off";
> -}
> -
> void add_taint_for_CI(struct drm_i915_private *i915, unsigned int taint);
> static inline void __add_taint_for_CI(unsigned int taint)
> {
> diff --git a/drivers/gpu/drm/i915/vlv_suspend.c b/drivers/gpu/drm/i915/vlv_suspend.c
> index 23adb64d640a..a49a7da57d5a 100644
> --- a/drivers/gpu/drm/i915/vlv_suspend.c
> +++ b/drivers/gpu/drm/i915/vlv_suspend.c
> @@ -3,6 +3,7 @@
> * Copyright ? 2020 Intel Corporation
> */
>
> +#include <linux/string_helpers.h>
> #include <linux/kernel.h>
>
> #include <drm/drm_print.h>
> @@ -373,7 +374,7 @@ static void vlv_wait_for_gt_wells(struct drm_i915_private *dev_priv,
> if (vlv_wait_for_pw_status(dev_priv, mask, val))
> drm_dbg(&dev_priv->drm,
> "timeout waiting for GT wells to go %s\n",
> - onoff(wait_for_on));
> + str_on_off(wait_for_on));
> }
>
> static void vlv_check_no_gt_access(struct drm_i915_private *i915)
> --
> 2.34.1
>
--
Matt Roper
Graphics Software Engineer
VTT-OSGC Platform Enablement
Intel Corporation
(916) 356-2795