[U-Boot] [PATCH 20/23] x86: tnc: Remove IGD and SDVO devices from driver model

Simon Glass sjg at chromium.org
Mon Feb 1 17:20:18 CET 2016


Hi Bin,

On 1 February 2016 at 02:40, Bin Meng <bmeng.cn at gmail.com> wrote:
> With recent DM PCI changes to vesa_fb driver, external graphics
> card does not work any more. This is because: after setting the
> function disable bit, IGD and SDVO devices will disappear in the
> PCI configuration space. This however creates an inconsistent state
> from a driver model PCI controller point of view, as these two PCI
> devices are still attached to its parent's child device list as
> maintained by the driver model. Some driver model PCI APIs like
> dm_pci_find_class() used in the vesa_fb driver, are referring to
> the list to speed up the finding process instead of re-enumerating
> the whole PCI bus, so it gets the stale cached data which is wrong.
>
> To fix this, manually remove these two devices.
>
> Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
> ---
>
>  arch/x86/cpu/queensbay/tnc.c | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)

Reviewed-by: Simon Glass <sjg at chromium.org>
Tested on Minnowmax:
Tested-by: Simon Glass <sjg at chromium.org>

I hope that this can be sorted out when x86 moves to driver model for
video. We should be able to probe the video quite late. I'm not quite
sure how it might work though.

Regards,
Simon


More information about the U-Boot mailing list