linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Javier Martinez Canillas <javierm@redhat.com>
To: Maxime Ripard <maxime@cerno.tech>,
	Maxime Ripard <mripard@kernel.org>,
	Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
	Daniel Vetter <daniel@ffwll.ch>, David Airlie <airlied@gmail.com>,
	Thomas Zimmermann <tzimmermann@suse.de>
Cc: "David Gow" <davidgow@google.com>,
	linaro-mm-sig@lists.linaro.org,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	linux-kselftest@vger.kernel.org,
	"Maíra Canal" <mairacanal@riseup.net>,
	linux-media@vger.kernel.org, kunit-dev@googlegroups.com,
	dri-devel@lists.freedesktop.org,
	"Brendan Higgins" <brendan.higgins@linux.dev>,
	linux-kernel@vger.kernel.org,
	"Dave Stevenson" <dave.stevenson@raspberrypi.com>
Subject: Re: [PATCH 04/24] drm/tests: helpers: Switch to a platform_device
Date: Fri, 25 Nov 2022 10:25:24 +0100	[thread overview]
Message-ID: <56cbef35-da0e-d278-fef5-83b0944ed416@redhat.com> (raw)
In-Reply-To: <20221123-rpi-kunit-tests-v1-4-051a0bb60a16@cerno.tech>

On 11/23/22 16:25, Maxime Ripard wrote:
> The device managed resources are ran if the device has bus, which is not
> the case of a root_device.
> 
> Let's use a platform_device instead.
> 
> Signed-off-by: Maxime Ripard <maxime@cerno.tech>
> ---
>  drivers/gpu/drm/tests/drm_kunit_helpers.c | 19 +++++++++++++++++--
>  1 file changed, 17 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/tests/drm_kunit_helpers.c b/drivers/gpu/drm/tests/drm_kunit_helpers.c
> index 2f974f45c5b4..651aa93a98a8 100644
> --- a/drivers/gpu/drm/tests/drm_kunit_helpers.c
> +++ b/drivers/gpu/drm/tests/drm_kunit_helpers.c
> @@ -6,6 +6,7 @@
>  #include <kunit/resource.h>
>  
>  #include <linux/device.h>
> +#include <linux/platform_device.h>
>  
>  #include "drm_kunit_helpers.h"
>  
> @@ -20,12 +21,26 @@ static const struct drm_mode_config_funcs drm_mode_config_funcs = {
>  
>  struct device *drm_kunit_helper_alloc_device(struct kunit *test)
>  {
> -	return root_device_register(FAKE_DEVICE_NAME);
> +	struct platform_device *pdev;
> +	int ret;
> +
> +	ret = platform_driver_register(&fake_platform_driver);

Maybe the platform_driver_register() is something that should be done
in the drm_client_modeset_test_init() callback ?

I would also as a part of this series rename the kunit_suite from
"drm_test_pick_cmdline_test_suite" to "drm_test_modeset_test_suite"
or something like that. Since you are already setting the .init and
.exit callbacks to allocate and release the devices. So it is more
than just a test suite for cmdline params testing.

> +	KUNIT_ASSERT_EQ(test, ret, 0);
> +
> +	pdev = platform_device_alloc(FAKE_DEVICE_NAME, PLATFORM_DEVID_NONE);
> +	KUNIT_ASSERT_NOT_ERR_OR_NULL(test, pdev);
> +
> +	ret = platform_device_add(pdev);
> +	KUNIT_ASSERT_EQ(test, ret, 0);
> +
> +	return &pdev->dev;
>  }
>

Probably won't do it as a part of this series to avoid making it cross
subsystem, but I think there's room to further consolidation since this
helper seems to be quite generic and something that would be useful for
other subsystems. So it would make sense for kunit to have helpers to
manage platform drivers and devices.

In fact, I see that drivers/base/test/test_async_driver_probe.c already
has similar helpers that could be exposed to the rest of the kernel.

The patch looks good to me though and any of these changes could be done
as a follow-up:

Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>

-- 
Best regards,

Javier Martinez Canillas
Core Platforms
Red Hat


  parent reply	other threads:[~2022-11-25  9:26 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20221123-rpi-kunit-tests-v1-0-051a0bb60a16@cerno.tech>
2022-11-24  8:31 ` [PATCH 00/24] drm: Introduce Kunit Tests to VC4 David Gow
2022-11-24 14:01   ` Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-2-051a0bb60a16@cerno.tech>
2022-11-25  8:57   ` [PATCH 02/24] drm/tests: helpers: Remove the name parameter Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-3-051a0bb60a16@cerno.tech>
2022-11-25  9:06   ` [PATCH 03/24] drm/tests: helpers: Create the device in another function Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-4-051a0bb60a16@cerno.tech>
2022-11-25  9:25   ` Javier Martinez Canillas [this message]
     [not found] ` <20221123-rpi-kunit-tests-v1-5-051a0bb60a16@cerno.tech>
2022-11-25 10:19   ` [PATCH 05/24] drm/tests: helpers: Make sure the device is bound Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-6-051a0bb60a16@cerno.tech>
2022-11-25 10:46   ` [PATCH 06/24] drm/tests: kunit: Allow for a custom device struct to be allocated Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-7-051a0bb60a16@cerno.tech>
2022-11-25 10:48   ` [PATCH 07/24] drm/tests: helpers: Allow to pass a custom drm_driver Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-8-051a0bb60a16@cerno.tech>
2022-11-25 10:52   ` [PATCH 08/24] drm/tests: Add a test for DRM managed actions Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-9-051a0bb60a16@cerno.tech>
2022-11-25 10:54   ` [PATCH 09/24] drm/atomic: Constify the old/new state accessors Javier Martinez Canillas
2022-11-28 11:04   ` (subset) " Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-11-051a0bb60a16@cerno.tech>
2022-11-25 11:01   ` [PATCH 11/24] drm/vc4: Constify container_of wrappers Javier Martinez Canillas
2022-11-28 11:04   ` (subset) " Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-12-051a0bb60a16@cerno.tech>
2022-11-25 11:04   ` [PATCH 12/24] drm/vc4: Move HVS state to main header Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-17-051a0bb60a16@cerno.tech>
2022-11-25 11:13   ` [PATCH 17/24] drm/vc4: crtc: Pass the device and data in vc4_crtc_init Javier Martinez Canillas
2022-11-28 11:05   ` (subset) " Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-18-051a0bb60a16@cerno.tech>
2022-11-25 11:29   ` [PATCH 18/24] drm/vc4: crtc: Introduce a lower-level crtc init helper Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-19-051a0bb60a16@cerno.tech>
2022-11-25 11:30   ` [PATCH 19/24] drm/vc4: crtc: Make encoder lookup helper public Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-21-051a0bb60a16@cerno.tech>
2022-11-25 11:41   ` [PATCH 21/24] drm/vc4: hvs: Provide a function to initialize the HVS structure Javier Martinez Canillas
     [not found] ` <20221123-rpi-kunit-tests-v1-1-051a0bb60a16@cerno.tech>
2022-11-25  8:50   ` [PATCH 01/24] drm/tests: helpers: Rename the device init helper Javier Martinez Canillas
2022-11-25 14:10   ` Maíra Canal
2022-11-25 14:33     ` Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-10-051a0bb60a16@cerno.tech>
2022-11-25 11:00   ` [PATCH 10/24] drm/vc4: kms: Sort the CRTCs by output before assigning them Javier Martinez Canillas
2022-11-28 11:04   ` (subset) " Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-13-051a0bb60a16@cerno.tech>
2022-11-25 11:05   ` [PATCH 13/24] drm/vc4: kms: Constify the HVS old/new state helpers Javier Martinez Canillas
2022-11-28 11:04   ` (subset) " Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-14-051a0bb60a16@cerno.tech>
2022-11-25 11:07   ` [PATCH 14/24] drm/vc4: txp: Reorder the variable assignments Javier Martinez Canillas
2022-11-28 11:04   ` (subset) " Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-15-051a0bb60a16@cerno.tech>
2022-11-25 11:11   ` [PATCH 15/24] drm/vc4: Add TXP encoder type Javier Martinez Canillas
2022-11-28 11:04   ` (subset) " Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-16-051a0bb60a16@cerno.tech>
2022-11-25 11:12   ` [PATCH 16/24] drm/vc4: txp: Initialise the CRTC before the encoder and connector Javier Martinez Canillas
2022-11-28 11:04   ` (subset) " Maxime Ripard
     [not found] ` <20221123-rpi-kunit-tests-v1-20-051a0bb60a16@cerno.tech>
2022-11-25 11:32   ` [PATCH 20/24] drm/vc4: crtc: Provide a CRTC name Javier Martinez Canillas
2022-11-28 11:05   ` (subset) " Maxime Ripard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56cbef35-da0e-d278-fef5-83b0944ed416@redhat.com \
    --to=javierm@redhat.com \
    --cc=airlied@gmail.com \
    --cc=brendan.higgins@linux.dev \
    --cc=daniel@ffwll.ch \
    --cc=dave.stevenson@raspberrypi.com \
    --cc=davidgow@google.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=kunit-dev@googlegroups.com \
    --cc=linaro-mm-sig@lists.linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=mairacanal@riseup.net \
    --cc=maxime@cerno.tech \
    --cc=mripard@kernel.org \
    --cc=tzimmermann@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).