++ intel-gfx@xxxxxxxxxxxxxxxxxxxxx > -----Original Message----- > From: Kamil Konieczny <kamil.konieczny@xxxxxxxxxxxxxxx> > Sent: Tuesday, September 3, 2024 5:38 PM > To: intel-xe@xxxxxxxxxxxxxxxxxxxxx > Cc: Bommu, Krishnaiah <krishnaiah.bommu@xxxxxxxxx>; Ceraolo Spurio, > Daniele <daniele.ceraolospurio@xxxxxxxxx>; De Marchi, Lucas > <lucas.demarchi@xxxxxxxxx> > Subject: Re: [PATCH] drm: Ensure Proper Unload/Reload Order of MEI Modules > for i915/Xe Driver > > Hi Bommu, > On 2024-09-02 at 19:40:41 +0530, Bommu Krishnaiah wrote: > > This update addresses the unload/reload sequence of MEI modules in > > relation to the i915/Xe graphics driver. On platforms where the MEI > > hardware is integrated with the graphics device (e.g., DG2/BMG), the > > MEI modules depend on the i915/Xe driver. Conversely, on newer > > platforms like CLS, where the MEI hardware is separate, this dependency does > not exist. > > > > The changes introduced ensure that MEI modules are unloaded and > > reloaded in the correct order based on platform-specific dependencies. > > This is achieved by adding a MODULE_SOFTDEP directive to the i915 and Xe > module code. > > > > These changes enhance the robustness of MEI module handling across > > different hardware platforms, ensuring that the i915/Xe driver can be > > cleanly unloaded and reloaded without issues. > > > > Signed-off-by: Bommu Krishnaiah <krishnaiah.bommu@xxxxxxxxx> > > Cc: Kamil Konieczny <kamil.konieczny@xxxxxxxxxxxxxxx> > > Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@xxxxxxxxx> > > Cc: Lucas De Marchi <lucas.demarchi@xxxxxxxxx> > > --- > > drivers/gpu/drm/i915/i915_module.c | 2 ++ > > imho as you touch i915 driver you should also Cc to intel- > gfx@xxxxxxxxxxxxxxxxxxxxx > > Regards, > Kamil > > > drivers/gpu/drm/xe/xe_module.c | 2 ++ > > 2 files changed, 4 insertions(+) > > > > diff --git a/drivers/gpu/drm/i915/i915_module.c > > b/drivers/gpu/drm/i915/i915_module.c > > index 65acd7bf75d0..2ad079ad35db 100644 > > --- a/drivers/gpu/drm/i915/i915_module.c > > +++ b/drivers/gpu/drm/i915/i915_module.c > > @@ -75,6 +75,8 @@ static const struct { }; static int init_progress; > > > > +MODULE_SOFTDEP("pre: mei_gsc_proxy mei_gsc"); > > + > > static int __init i915_init(void) > > { > > int err, i; > > diff --git a/drivers/gpu/drm/xe/xe_module.c > > b/drivers/gpu/drm/xe/xe_module.c index bfc3deebdaa2..5633ea1841b7 > > 100644 > > --- a/drivers/gpu/drm/xe/xe_module.c > > +++ b/drivers/gpu/drm/xe/xe_module.c > > @@ -127,6 +127,8 @@ static void xe_call_exit_func(unsigned int i) > > init_funcs[i].exit(); > > } > > > > +MODULE_SOFTDEP("pre: mei_gsc_proxy mei_gsc"); > > + > > static int __init xe_init(void) > > { > > int err, i; > > -- > > 2.25.1 > >