Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp2565147pxf; Sun, 4 Apr 2021 06:13:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxrbkvLuzGc9cVq01DBlYC0sEUB5F8k3o0iJd11dAfOe+w2/oj20SoDnI5dSBjWbDPP8hON X-Received: by 2002:a17:906:2ac1:: with SMTP id m1mr23747892eje.472.1617542008362; Sun, 04 Apr 2021 06:13:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1617542008; cv=none; d=google.com; s=arc-20160816; b=y5VLhTp92Ec+GQZFy4+aCUQ4bvVf+alrm1s17zq2HzQ+gy0LU+GwFNhzp64cERvBsD BWY3nWf/68SIlocPqzrZf2smjkzP8BqFE5qwtRR1ZRdzYfkz7hRabqA6pNSVg2I9hHZo qR2zsCCfni/dQ7LjPB7rUZieTo9zDYiUIV8RLoK7674jfd9WysgbHyH6OK6V2FTC+tJP mteeeYg/F+JYdaQGwnZM8e+6HWu3fQ/EbUTyHGU37WbPYXtAcu4ZfmEZdUoeJRhFe5nX dqjDVahL8qKe7Uq+Jx7kqziA6VBnLxO7SOSltr7Nvbv5nG9ETJkHUXWIrneACxDDTqO+ nSEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-disposition:mime-version:message-id :subject:cc:to:from:date:dkim-signature; bh=/of33qOjnEhY45uD1x/HAVtGTCodSVzYWgcg1uH37ss=; b=q2uVAs2TM9R6zaQ0+AH6zrgg2yC+YhjdHQGbptK5z/hPmOESRzlNUt7UrEcc41e9lS 5FRw8379XV5ZrHJlayZP1FJMLUW1uDyCFyFFqn6Q4vnS0v8P9EAJ93ZcXPGfzDp2K7ki MM4+xt6SHzuRfWQeMWHVGdD9DxLZ23mr2MHN+xVS7nbixu3UcJePWN3blGpM2KZLtL37 YTxnXzxhFzOP+il8w9o/BcwOWpeL4V6rxEkA46ktQcEftxZaI/P3GxfVhqDBURTnxeaV i/0Gf54B+pZG3jHN2iFP21k1ODZdoYBJNsouKGol5BKBTGGpk1qsGoUI6auS1tS+5EEE 8Ouw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=GGjHQuQk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ds10si7074267ejc.559.2021.04.04.06.12.52; Sun, 04 Apr 2021 06:13:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=GGjHQuQk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229918AbhDDNKS (ORCPT + 99 others); Sun, 4 Apr 2021 09:10:18 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52934 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229569AbhDDNKR (ORCPT ); Sun, 4 Apr 2021 09:10:17 -0400 Received: from mail-pj1-x1032.google.com (mail-pj1-x1032.google.com [IPv6:2607:f8b0:4864:20::1032]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 247FDC061756 for ; Sun, 4 Apr 2021 06:10:13 -0700 (PDT) Received: by mail-pj1-x1032.google.com with SMTP id kk2-20020a17090b4a02b02900c777aa746fso4603724pjb.3 for ; Sun, 04 Apr 2021 06:10:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:mime-version:content-disposition; bh=/of33qOjnEhY45uD1x/HAVtGTCodSVzYWgcg1uH37ss=; b=GGjHQuQk821BGc1xUvWgR8KKM5g2fcrC/69hMeb1RKziiCL4ZqJRmR4Ejp9HkTNgZQ gOylSgwjogyoTqDp/AikdqkE2Mdy9PENS9XNYzjMBZZ9MqISpkyH65IJGhK5UFn7Sdwz iRzC3syWjwCPACuni5MBx4XkozafIm1rHqyUGr2dQ0aHu7I8EMAkxI+P6dpuP86I1Djw 6rX6JXOhGP4xrpoHLbfjMSfHa9sawrvXIMOsm2zmCUxv/wohrhYTvJQGGdfW39mf8B0V JumKVd5NGIJQ0In0TgE53C/z/s/ccYRRzSXHH7JoHtfQfGaxyn8k2gLNgOFjQ6CVpm/g PeTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:mime-version :content-disposition; bh=/of33qOjnEhY45uD1x/HAVtGTCodSVzYWgcg1uH37ss=; b=nNN6R9CjjslQZOqv5MnJjZ7ew++CWbbB2T6jlg3hCLymQj66Xerm81W6GDzCWlJKAP 8zslz988xKVo73BqrEW4qzxNPoW+HwlRhmUddNNB4kgvX12SsFxML0a3d56ZON5jTGuQ yri5jZJhNivFQfByGtLcItd1lN7NwjMWQ2flGsvWK7fGgJo6jFGz8Ayk2rDCVGInBwu2 Y/K9nqMnWgJ3XodjtYVnyYkRX3/5dUqUYwYT5bOJgmzDMmtp5zTv4CtPR1YjauZmKPXf 2InLCE6VxhGyU91OJDF3wUeIOisbkKEujHAWWlv8rOMsChvqAnhF+O3yBI0pK2UX3kSL QUoQ== X-Gm-Message-State: AOAM531Su0y5U/tO1RSc70gX6ysJwelXN4xLt+OWe4mqKgx1x+4jH6YR jd1XKI3pFSYl5pGVFGZC/IQ= X-Received: by 2002:a17:902:7585:b029:e6:cc10:61fe with SMTP id j5-20020a1709027585b02900e6cc1061femr20072418pll.23.1617541812110; Sun, 04 Apr 2021 06:10:12 -0700 (PDT) Received: from adolin ([49.207.202.237]) by smtp.gmail.com with ESMTPSA id i7sm12581945pgq.16.2021.04.04.06.10.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 04 Apr 2021 06:10:11 -0700 (PDT) Date: Sun, 4 Apr 2021 18:40:06 +0530 From: Sumera Priyadarsini To: melissa.srw@gmail.com Cc: rodrigosiqueiramelo@gmail.com, hamohammed.sa@gmail.com, daniel@ffwll.ch, airlied@linux.ie, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH V3 0/2] Add virtual hardware module Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patchset adds support for emulating virtual hardware with VKMS. The virtual hardware mode can be enabled by using the following command while loading the module: sudo modprobe vkms enable_virtual_hw=1 The first patch is prep work for adding virtual_hw mode and refactors the plane composition in vkms by adding a helper function vkms_composer_common() which can be used for both vblank mode and virtual mode. The second patch adds virtual hardware support as a module option. The second patch adds new atomic helper functions for the virtual mode and modifies the existing atomic helpers for usage by the vblank mode This gives us two sets of drm_crtc_helper_funcs struct for both modes, making the code flow cleaner and easier to debug. This patchset has been tested with the igt tests, kms_writeback, kms_atomic, kms_lease, kms_flip, kms_pipe_get_crc and preserves results except for subtests related to crc reads and skips tests that rely on vertical blanking. This patchset must be tested after incorporating the igt-tests patch: https://lists.freedesktop.org/archives/igt-dev/2021-February/029355.html Sumera Priyadarsini (2): drm/vkms: Refactor vkms_composer_worker() to prep for virtual_hw mode drm/vkms: Add support for virtual hardware mode drivers/gpu/drm/vkms/vkms_composer.c | 88 +++++++++++++++++----------- drivers/gpu/drm/vkms/vkms_crtc.c | 51 +++++++++++----- drivers/gpu/drm/vkms/vkms_drv.c | 18 ++++-- drivers/gpu/drm/vkms/vkms_drv.h | 4 ++ 4 files changed, 109 insertions(+), 52 deletions(-) -- 2.25.1