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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox