diff options
author | Álvaro Fernández Rojas <noltari@gmail.com> | 2021-02-18 18:04:33 +0100 |
---|---|---|
committer | Álvaro Fernández Rojas <noltari@gmail.com> | 2021-02-18 23:42:32 +0100 |
commit | f07e572f6447465d8938679533d604e402b0f066 (patch) | |
tree | cb333bd2a67e59e7c07659514850a0fd55fc825e /target/linux/bcm27xx/patches-5.4/950-0472-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch | |
parent | 5d3a6fd970619dfc55f8259035c3027d7613a2a6 (diff) | |
download | upstream-f07e572f6447465d8938679533d604e402b0f066.tar.gz upstream-f07e572f6447465d8938679533d604e402b0f066.tar.bz2 upstream-f07e572f6447465d8938679533d604e402b0f066.zip |
bcm27xx: import latest patches from the RPi foundation
bcm2708: boot tested on RPi B+ v1.2
bcm2709: boot tested on RPi 3B v1.2 and RPi 4B v1.1 4G
bcm2710: boot tested on RPi 3B v1.2
bcm2711: boot tested on RPi 4B v1.1 4G
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0472-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.4/950-0472-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0472-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch b/target/linux/bcm27xx/patches-5.4/950-0472-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch new file mode 100644 index 0000000000..1716ebd7be --- /dev/null +++ b/target/linux/bcm27xx/patches-5.4/950-0472-drm-modes-parse_cmdline-Rework-drm_mode_parse_cmdlin.patch @@ -0,0 +1,76 @@ +From 5b6257773b43e7a7b28f86359d2e9ebe15346b78 Mon Sep 17 00:00:00 2001 +From: Hans de Goede <hdegoede@redhat.com> +Date: Mon, 18 Nov 2019 16:51:26 +0100 +Subject: [PATCH] drm/modes: parse_cmdline: Rework + drm_mode_parse_cmdline_options() + +Commit 739b200c2edcaaa7a86f37b0c11db57956433dfb upstream. + +Refactor drm_mode_parse_cmdline_options() so that it takes a pointer +to the first option, rather then a pointer to the ',' before the first +option. + +This is a preparation patch for allowing parsing of stand-alone options +without a mode before them, e.g.: video=HDMI-1:margin_right=14,... + +Acked-by: Maxime Ripard <mripard@kernel.org> +Signed-off-by: Hans de Goede <hdegoede@redhat.com> +Link: https://patchwork.freedesktop.org/patch/msgid/20191118155134.30468-5-hdegoede@redhat.com +--- + drivers/gpu/drm/drm_modes.c | 21 +++++++++------------ + 1 file changed, 9 insertions(+), 12 deletions(-) + +--- a/drivers/gpu/drm/drm_modes.c ++++ b/drivers/gpu/drm/drm_modes.c +@@ -1591,23 +1591,21 @@ static int drm_mode_parse_cmdline_int(co + return 0; + } + +-static int drm_mode_parse_cmdline_options(const char *str, size_t len, ++static int drm_mode_parse_cmdline_options(const char *str, + const struct drm_connector *connector, + struct drm_cmdline_mode *mode) + { + unsigned int deg, margin, rotation = 0; +- const char *sep = str; ++ const char *delim, *option, *sep; + +- while ((sep = strchr(sep, ','))) { +- const char *delim, *option; +- +- option = sep + 1; ++ option = str; ++ do { + delim = strchr(option, '='); + if (!delim) { + delim = strchr(option, ','); + + if (!delim) +- delim = str + len; ++ delim = option + strlen(option); + } + + if (!strncmp(option, "rotate", delim - option)) { +@@ -1661,8 +1659,9 @@ static int drm_mode_parse_cmdline_option + } else { + return -EINVAL; + } +- sep = delim; +- } ++ sep = strchr(delim, ','); ++ option = sep + 1; ++ } while (sep); + + if (!(rotation & DRM_MODE_ROTATE_MASK)) + rotation |= DRM_MODE_ROTATE_0; +@@ -1862,9 +1861,7 @@ bool drm_mode_parse_command_line_for_con + } + + if (options_ptr) { +- int len = strlen(name) - (options_ptr - name); +- +- ret = drm_mode_parse_cmdline_options(options_ptr, len, ++ ret = drm_mode_parse_cmdline_options(options_ptr + 1, + connector, mode); + if (ret) + return false; |