From: Daniel Vetter <daniel@ffwll.ch>
To: Jani Nikula <jani.nikula@intel.com>
Cc: tvrtko.ursulin@linux.intel.com, joonas.lahtinen@linux.intel.com,
lucas.demarchi@intel.com, daniel@ffwll.ch,
rodrigo.vivi@intel.com, Dave Airlie <airlied@gmail.com>,
intel-xe@lists.freedesktop.org
Subject: Re: [Intel-xe] [PATCH 00/21] xe & i915 display integration ifdef cleanups
Date: Thu, 6 Apr 2023 00:12:40 +0200 [thread overview]
Message-ID: <ZC3yWN1FSl+dPciF@phenom.ffwll.local> (raw)
In-Reply-To: <87mt3mz5v5.fsf@intel.com>
On Wed, Apr 05, 2023 at 06:49:34PM +0300, Jani Nikula wrote:
> On Wed, 05 Apr 2023, Jani Nikula <jani.nikula@intel.com> wrote:
> > Hey all, here's my first batch of #ifdef cleanups for xe and i915
> > display integration.
> >
> > Many of the patches in this series break the build, and will get fixed
> > by subsequent changes. It's pretty much unavoidable as many of the
> > changes are standalone to i915, and others are fixups.
> >
> > This is pretty straightforward stuff for starters, really. The idea is
> > that in the next rebase, the drm/i915 changes here go *before* any of
> > the current i915 changes.
> >
> > Adding the static inline stubs for xe build in i915 (the !I915 parts) is
> > very helpful in not sprinkling #ifdefs all over the place. A lot of the
> > time, the compiler is able to just compile out lots and lots of
> > unreachable static functions and data without explicitly conditionally
> > building them out. We can leave a lot of it out from "drm/i915/display:
> > Remaining changes to make xe compile". This is crucial especially while
> > upstreaming by keeping the changes to i915 minimal.
> >
> > Also, I think the conditional build and stubs in headers is the least
> > intrusive way of going about this before xe is actually upstream, and it
> > also follows the usual patterns for CONFIG_FOO=n code paths, albeit I915
> > is defined in the Makefile, not in kconfig.
>
> To this end, would like to get up front acks for the approach from drm
> maintainers and my fellow i915 maintainers.
>
> Are the drm/i915 patches (i.e. all the ones that are not fixups) in the
> series okay by you for the xe and i915 display integration?
Ack on these patches. I think for the overall approach of compiling
i915/display twice there might be some risk with having duplicated
symbols. Did you try to build-in both drivers and see what all breaks?
Since we shouldn't have EXPORT_SYMBOL on gen12+ anymore but only
component.c and aux-bus to glue things together across devices/drivers I
dont see an issue at least with modules. The gen5 ips stuff is I think the
only EXPORT_SYMBOL/get_symbol horror show.
-Daniel
>
> If yes, would you also be okay with merging them to upstream i915 before
> xe is actually submitted upstream, or only as part of the xe (display)
> submission?
>
>
> Thanks,
> Jani.
>
>
> >
> > BR,
> > Jani.
> >
> >
> >
> > Jani Nikula (21):
> > fixup! drm/i915/display: Set DISPLAY_MMIO_BASE to 0 for xe
> > drm/i915: define I915 during i915 driver build
> > drm/i915/display: add I915 conditional build to intel_lvds.h
> > fixup! drm/xe/display: Implement display support
> > drm/i915/display: add I915 conditional build to hsw_ips.h
> > fixup! drm/i915/display: Remaining changes to make xe compile
> > fixup! drm/xe/display: Implement display support
> > drm/i915/display: add I915 conditional build to i9xx_plane.h
> > fixup! drm/i915/display: Remaining changes to make xe compile
> > fixup! drm/i915/display: Remaining changes to make xe compile
> > drm/i915/display: add I915 conditional build to intel_lpe_audio.h
> > fixup! drm/i915/display: Remaining changes to make xe compile
> > drm/i915/display: add I915 conditional build to intel_pch_refclk.h
> > fixup! drm/i915/display: Remaining changes to make xe compile
> > drm/i915/display: add I915 conditional build to intel_pch_display.h
> > drm/i915/display: add I915 conditional build to intel_sprite.h
> > fixup! drm/i915/display: Remaining changes to make xe compile
> > fixup! drm/xe/display: Implement display support
> > drm/i915/display: add I915 conditional build to intel_overlay.h
> > fixup! drm/i915/display: Remaining changes to make xe compile
> > fixup! drm/xe/display: Implement display support
> >
> > drivers/gpu/drm/i915/display/hsw_ips.h | 35 +++++++++++
> > drivers/gpu/drm/i915/display/i9xx_plane.h | 23 +++++++
> > drivers/gpu/drm/i915/display/intel_cdclk.c | 4 +-
> > drivers/gpu/drm/i915/display/intel_crtc.c | 6 +-
> > drivers/gpu/drm/i915/display/intel_display.c | 15 +----
> > .../gpu/drm/i915/display/intel_lpe_audio.h | 20 ++++--
> > drivers/gpu/drm/i915/display/intel_lvds.h | 19 ++++++
> > drivers/gpu/drm/i915/display/intel_overlay.h | 35 +++++++++++
> > .../gpu/drm/i915/display/intel_pch_display.h | 63 +++++++++++++++----
> > .../gpu/drm/i915/display/intel_pch_refclk.h | 25 ++++++--
> > drivers/gpu/drm/i915/display/intel_sprite.c | 20 +-----
> > drivers/gpu/drm/i915/display/intel_sprite.h | 8 +++
> > drivers/gpu/drm/xe/Makefile | 2 -
> > .../gpu/drm/xe/compat-i915-headers/i915_drv.h | 7 +--
> > 14 files changed, 211 insertions(+), 71 deletions(-)
>
> --
> Jani Nikula, Intel Open Source Graphics Center
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
next prev parent reply other threads:[~2023-04-05 22:12 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-05 15:38 [Intel-xe] [PATCH 00/21] xe & i915 display integration ifdef cleanups Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 01/21] fixup! drm/i915/display: Set DISPLAY_MMIO_BASE to 0 for xe Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 02/21] drm/i915: define I915 during i915 driver build Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 03/21] drm/i915/display: add I915 conditional build to intel_lvds.h Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 04/21] fixup! drm/xe/display: Implement display support Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 05/21] drm/i915/display: add I915 conditional build to hsw_ips.h Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 06/21] fixup! drm/i915/display: Remaining changes to make xe compile Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 07/21] fixup! drm/xe/display: Implement display support Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 08/21] drm/i915/display: add I915 conditional build to i9xx_plane.h Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 09/21] fixup! drm/i915/display: Remaining changes to make xe compile Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 10/21] " Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 11/21] drm/i915/display: add I915 conditional build to intel_lpe_audio.h Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 12/21] fixup! drm/i915/display: Remaining changes to make xe compile Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 13/21] drm/i915/display: add I915 conditional build to intel_pch_refclk.h Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 14/21] fixup! drm/i915/display: Remaining changes to make xe compile Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 15/21] drm/i915/display: add I915 conditional build to intel_pch_display.h Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 16/21] drm/i915/display: add I915 conditional build to intel_sprite.h Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 17/21] fixup! drm/i915/display: Remaining changes to make xe compile Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 18/21] fixup! drm/xe/display: Implement display support Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 19/21] drm/i915/display: add I915 conditional build to intel_overlay.h Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 20/21] fixup! drm/i915/display: Remaining changes to make xe compile Jani Nikula
2023-04-05 15:39 ` [Intel-xe] [PATCH 21/21] fixup! drm/xe/display: Implement display support Jani Nikula
2023-04-05 15:43 ` [Intel-xe] ✓ CI.Patch_applied: success for xe & i915 display integration ifdef cleanups Patchwork
2023-04-05 15:44 ` [Intel-xe] ✓ CI.KUnit: " Patchwork
2023-04-05 15:48 ` [Intel-xe] ✓ CI.Build: " Patchwork
2023-04-05 15:49 ` [Intel-xe] [PATCH 00/21] " Jani Nikula
2023-04-05 18:56 ` Rodrigo Vivi
2023-04-05 22:12 ` Daniel Vetter [this message]
2023-04-05 15:59 ` [Intel-xe] ○ CI.BAT: info for " Patchwork
2023-04-13 12:20 ` [Intel-xe] [PATCH 00/21] " Tvrtko Ursulin
2023-04-13 13:08 ` Daniel Vetter
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=ZC3yWN1FSl+dPciF@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=airlied@gmail.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=jani.nikula@intel.com \
--cc=joonas.lahtinen@linux.intel.com \
--cc=lucas.demarchi@intel.com \
--cc=rodrigo.vivi@intel.com \
--cc=tvrtko.ursulin@linux.intel.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.