[igt-dev] [i-g-t V2 3/6] tests/i915/kms_dsc: Update bigjoiner pipe constraint
Modem, Bhanuprakash
bhanuprakash.modem at intel.com
Thu Mar 30 05:18:05 UTC 2023
Hi Swati,
On Wed-29-03-2023 09:18 pm, Sharma, Swati2 wrote:
> Hi Bhanu,
>
> Shouldn't we use i915_pipe_output_combo_valid()?
In this test check_big_joiner_pipe_constraint() is specific to check
bigjoiner support, so we must use igt_check_bigjoiner_support(). Where
i915_pipe_output_combo_valid() is designed to check for all pipe/output
constraints.
- Bhanu
>
> On 28-Mar-23 6:02 PM, Bhanuprakash Modem wrote:
>> Instead of writing own logic at test level, use existing IGT
>> helper to check the bigjoiner support.
>>
>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem at intel.com>
>> ---
>> tests/i915/kms_dsc.c | 17 ++++++++---------
>> tests/i915/kms_dsc_helper.h | 2 --
>> 2 files changed, 8 insertions(+), 11 deletions(-)
>>
>> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
>> index b3c5e60c773..9c6a7780acd 100644
>> --- a/tests/i915/kms_dsc.c
>> +++ b/tests/i915/kms_dsc.c
>> @@ -47,7 +47,6 @@ typedef struct {
>> unsigned int plane_format;
>> igt_output_t *output;
>> int input_bpc;
>> - int n_pipes;
>> int disp_ver;
>> enum pipe pipe;
>> } data_t;
>> @@ -76,15 +75,19 @@ static bool
>> check_big_joiner_pipe_constraint(data_t *data)
>> {
>> igt_output_t *output = data->output;
>> drmModeModeInfo *mode = get_highres_mode(output);
>> + bool ret = true;
>>
>> - if (mode->hdisplay >= HDISPLAY_5K &&
>> - data->pipe == (data->n_pipes - 1)) {
>> + igt_output_set_pipe(output, data->pipe);
>> + igt_output_override_mode(output, mode);
>> +
>> + if (!igt_check_bigjoiner_support(&data->display)) {
>> igt_debug("Pipe-%s not supported due to bigjoiner limitation\n",
>> kmstest_pipe_name(data->pipe));
>> - return false;
>> + ret = false;
>> }
>> + igt_output_set_pipe(output, PIPE_NONE);
>>
>> - return true;
>> + return ret;
>> }
>>
>> static void test_cleanup(data_t *data)
>> @@ -206,7 +209,6 @@ static void test_dsc(data_t *data, enum
>> dsc_test_type test_type, int bpc,
>> igt_main
>> {
>> data_t data = {};
>> - int i;
>>
>> igt_fixture {
>> data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
>> @@ -217,9 +219,6 @@ igt_main
>> igt_display_require(&data.display, data.drm_fd);
>> igt_display_require_output(&data.display);
>> igt_require(data.disp_ver >= 11);
>> - data.n_pipes = 0;
>> - for_each_pipe(&data.display, i)
>> - data.n_pipes++;
>> }
>>
>> igt_describe("Tests basic display stream compression functionality
>> if supported "
>> diff --git a/tests/i915/kms_dsc_helper.h b/tests/i915/kms_dsc_helper.h
>> index fe479dac472..b3828dcd44a 100644
>> --- a/tests/i915/kms_dsc_helper.h
>> +++ b/tests/i915/kms_dsc_helper.h
>> @@ -21,8 +21,6 @@
>> #include <fcntl.h>
>> #include <termios.h>
>>
>> -#define HDISPLAY_5K 5120
>> -
>> void force_dsc_enable(int drmfd, igt_output_t *output);
>> void force_dsc_enable_bpc(int drmfd, igt_output_t *output, int
>> input_bpc);
>> void save_force_dsc_en(int drmfd, igt_output_t *output);
More information about the igt-dev
mailing list