On Thu, Oct 24, 2019 at 12:40:19PM +0100, Chris Wilson wrote:
> We would like some freedom to break the user API/ABI for future HW but
> yet still expose the driver for upstream development on that HW.
> Currently, we have the i915.force_probe module parameter to avoid binding
> to HW while the driver is under development, but that is still a little
> too soft with respect to the stringent no-regression rules if we also
> plan to be redesigning the uAPI to go along with the new HW.
> 
> To allow the uAPI to be changed during development, only expose that API
> and in development HW under STAGING (and BROKEN). Hopefully, making it
> explicit that such interfaces to that HW are under development and not
> to be blindly enabled by distributions.
>
> Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
> Cc: Daniel Vetter <daniel.vet...@ffwll.ch>
> Cc: Joonas Lahtinen <joonas.lahti...@linux.intel.com>
> Cc: Jani Nikula <jani.nik...@intel.com>
> Cc: Rodrigo Vivi <rodrigo.v...@intel.com>
> Cc: Dave Airlie <airl...@redhat.com>

Reviewed-by: Rodrigo Vivi <rodrigo.v...@intel.com>

> ---
>  drivers/gpu/drm/i915/Kconfig          |  8 ++++++++
>  drivers/gpu/drm/i915/Kconfig.debug    |  1 +
>  drivers/gpu/drm/i915/Kconfig.unstable | 20 ++++++++++++++++++++
>  3 files changed, 29 insertions(+)
>  create mode 100644 drivers/gpu/drm/i915/Kconfig.unstable
> 
> diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig
> index 3c6d57df262d..1fd9e665b742 100644
> --- a/drivers/gpu/drm/i915/Kconfig
> +++ b/drivers/gpu/drm/i915/Kconfig
> @@ -148,3 +148,11 @@ menu "drm/i915 Profile Guided Optimisation"
>       depends on DRM_I915
>       source "drivers/gpu/drm/i915/Kconfig.profile"
>  endmenu
> +
> +menu "drm/i915 Ustable Evolution"
> +     visible if EXPERT
> +     visible if STAGING
> +     visible if BROKEN
> +     depends on DRM_I915
> +     source "drivers/gpu/drm/i915/Kconfig.unstable"
> +endmenu
> diff --git a/drivers/gpu/drm/i915/Kconfig.debug 
> b/drivers/gpu/drm/i915/Kconfig.debug
> index d2ba8f7e5e50..ef123eb29168 100644
> --- a/drivers/gpu/drm/i915/Kconfig.debug
> +++ b/drivers/gpu/drm/i915/Kconfig.debug
> @@ -44,6 +44,7 @@ config DRM_I915_DEBUG
>       select DRM_I915_SELFTEST
>       select DRM_I915_DEBUG_RUNTIME_PM
>       select DRM_I915_DEBUG_MMIO
> +     select BROKEN # for prototype uAPI
>       default n
>       help
>         Choose this option to turn on extra driver debugging that may affect
> diff --git a/drivers/gpu/drm/i915/Kconfig.unstable 
> b/drivers/gpu/drm/i915/Kconfig.unstable
> new file mode 100644
> index 000000000000..ecc8458b5a32
> --- /dev/null
> +++ b/drivers/gpu/drm/i915/Kconfig.unstable
> @@ -0,0 +1,20 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +config DRM_I915_UNSTABLE
> +     bool "Enable unstable API for early prototype development"
> +     depends on EXPERT
> +     depends on STAGING
> +     depends on BROKEN # should never be enabled by distros!
> +     # We use the dependency on !COMPILE_TEST to not be enabled in
> +     # allmodconfig or allyesconfig configurations
> +     depends on !COMPILE_TEST
> +     default n
> +     help
> +       Enable prototype uAPI under general discussion before they are
> +       finalized. Such prototypes may be withdrawn or substantially
> +       changed before release. They are only enabled here so that a wide
> +       number of interested parties (userspace driver developers) can
> +       verify that the uAPI meet their expectations.
> +
> +       Recommended for driver developers _only_.
> +
> +       If in the slightest bit of doubt, say "N".
> -- 
> 2.24.0.rc0
> 
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to