From: Thomas Hellstrom <thellstrom@vmware.com>
To: Rob Clark <robdclark@gmail.com>
Cc: "dri-devel@lists.freedesktop.org" <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH] drm/vmwgfx: respect 'nomodeset'
Date: Wed, 15 Oct 2014 23:06:56 +0200 [thread overview]
Message-ID: <543EE1F0.9080508@vmware.com> (raw)
In-Reply-To: <CAF6AEGu9qqLavJrq2j_22Gcx_GE3SpyfRMYppmBYAQAjxH+1PQ@mail.gmail.com>
On 10/15/2014 10:51 PM, Rob Clark wrote:
> On Wed, Oct 15, 2014 at 4:44 PM, Thomas Hellstrom <thellstrom@vmware.com> wrote:
>> On 10/15/2014 10:38 PM, Rob Clark wrote:
>>> On Wed, Oct 15, 2014 at 4:35 PM, Rob Clark <robdclark@gmail.com> wrote:
>>>> On Wed, Oct 15, 2014 at 4:17 PM, Thomas Hellstrom <thellstrom@vmware.com> wrote:
>>>>> On 10/15/2014 09:46 PM, Rob Clark wrote:
>>>>>> On Wed, Oct 15, 2014 at 3:24 PM, Thomas Hellstrom <thellstrom@vmware.com> wrote:
>>>>>>> On 10/15/2014 09:00 PM, Rob Clark wrote:
>>>>>>>> Signed-off-by: Rob Clark <robdclark@gmail.com>
>>>>>>>> ---
>>>>>>>> drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 7 +++++++
>>>>>>>> 1 file changed, 7 insertions(+)
>>>>>>>>
>>>>>>>> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
>>>>>>>> index 18b54ac..f0267b8 100644
>>>>>>>> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
>>>>>>>> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
>>>>>>>> @@ -25,6 +25,7 @@
>>>>>>>> *
>>>>>>>> **************************************************************************/
>>>>>>>> #include <linux/module.h>
>>>>>>>> +#include <linux/console.h>
>>>>>>>>
>>>>>>>> #include <drm/drmP.h>
>>>>>>>> #include "vmwgfx_drv.h"
>>>>>>>> @@ -1453,6 +1454,12 @@ static int vmw_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
>>>>>>>> static int __init vmwgfx_init(void)
>>>>>>>> {
>>>>>>>> int ret;
>>>>>>>> +
>>>>>>>> +#ifdef CONFIG_VGA_CONSOLE
>>>>>>>> + if (vgacon_text_force())
>>>>>>>> + return -EINVAL;
>>>>>>>> +#endif
>>>>>>>> +
>>>>>>> Hmm,
>>>>>>>
>>>>>>> From the function name vgacon_text_force() it sounds like this should
>>>>>>> just stop the driver from initializing fbcon? Not refuse to load?
>>>>>> yeah, the function is badly named.. it perhaps should be
>>>>>> vgacon_is_text_forced() or something like that. But basically it
>>>>>> returns whether we are forced to text mode.
>>>>>>
>>>>>> BR,
>>>>>> -R
>>>>> So then I guess it would be more correct to use the output of that
>>>>> function when determining the value of dev_priv->enable_fb (vmwgfx can
>>>>> enable the user-space modesetting API without turning on vmwgfx fbcon).
>>>> well, other drivers, 'nomodeset' forces the driver not to load (to
>>>> work around buggyness, etc).. I suppose for vmwgfx perhaps oddball
>>>> "hardware" is less of a concern. Although it seems like it would be
>>>> nice if vmwgfx behaved consistently with the other drivers.
>>>>
>>>> Most/all for the drivers have an additional module param that lets you
>>>> override this and load the driver for UMS in case of 'nomodeset'..
>>>> which would give you the behaviour you describe. But I think in the
>>>> absence of an additional module param specified, the default
>>>> 'nomodeset' behaviour should be that the driver does not load.
>>>>
>>>> But I can add such a module param if you think it is useful..
>>> oh, wait.. you already have an 'enable_fbdev'.. although I guess that
>>> is actually meaning "enable_kms"?
>> It should actually have been "enable_fbcon_and_fbdev" instead of
>> "enable_fbdev". KMS is always enabled with the vmwgfx driver, we have no
>> UMS driver using DRM functionality.
>>
>> I think what confuses me is how "nomodeset" translates to
>> "use_text_console", (sounds orthogonal to me) but if that's the way that
>> parameter is presented to the drivers, I guess the correct way after all
>> is to stop the driver from loading....
> the:
>
> __setup("nomodeset", text_mode);
>
> bit causes text_mode() to be called which sets vgacon_text_mode_force
>
> (assuming that was the question)
Yes. Then IMHO whoever wrote that didn't do his homework since you can
have user-space modesetting API and a text mode console working
perfectly well together, but never mind.
>At least users seem to expect that 'nomodeset' means don't load the
modesetting driver, since I got a bug about it ;-) BR, -R
I agree.
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>.
I'll include the patch in the next pull request.
Thanks,
Thomas
>> /Thomas
>>
next prev parent reply other threads:[~2014-10-15 21:07 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-15 19:00 [PATCH] drm/vmwgfx: respect 'nomodeset' Rob Clark
2014-10-15 19:24 ` Thomas Hellstrom
2014-10-15 19:46 ` Rob Clark
2014-10-15 20:17 ` Thomas Hellstrom
2014-10-15 20:35 ` Rob Clark
2014-10-15 20:38 ` Rob Clark
2014-10-15 20:44 ` Thomas Hellstrom
2014-10-15 20:51 ` Rob Clark
2014-10-15 21:06 ` Thomas Hellstrom [this message]
2016-01-19 17:27 ` Rob Clark
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=543EE1F0.9080508@vmware.com \
--to=thellstrom@vmware.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=robdclark@gmail.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