On Fri, Mar 27, 2015 at 09:45:27AM +0100, Daniel Vetter wrote:
> On Thu, Mar 26, 2015 at 12:41:13PM -0700, yu....@intel.com wrote:
> > From: Dave Gordon <david.s.gor...@intel.com>
> > 
> > In order to fully initialise the default contexts, we have to execute
> > batchbuffer commands on the GPU engines. But we can't do that until any
> > required firmware has been loaded, which may not be possible during
> > driver load, because the filesystem(s) containing the firmware may not
> > be mounted until later.
> > 
> > Therefore, we now allow the first call to the firmware-loading code to
> > return -EAGAIN to indicate that it's not yet ready, and that it should
> > be retried when the device is first opened from user code, by which
> > time we expect that all required filesystems will have been mounted.
> > The late-retry code will then re-attempt to load the firmware if the
> > early attempt failed.
> 
> We've tried a similar approach a while back and it doesn't work well in
> conjunction with rps - the hw tends to fall over if the context state
> isn't properly initialized when going into rc6.
> 
> Why exactly can't we load that firmware right at boot-up, or at least
> stall correctly until it's there?

Note that is is very simple to build up a request queue prior to
enabling the submission port. Without having to touch core GEM code at
all.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to