2021-10-12 16:50:22

by Heinrich Schuchardt

[permalink] [raw]
Subject: [PATCH 1/1] riscv: defconfig: enable DRM_NOUVEAU

Both RADEON and NOUVEAU graphics cards are supported on RISC-V. Enabling
the one and not the other does not make sense.

As typically at most one of RADEON, NOUVEAU, or VIRTIO GPU support will be
needed DRM drivers should be compiled as modules.

Signed-off-by: Heinrich Schuchardt <[email protected]>
---
arch/riscv/configs/defconfig | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
index 4ebc80315f01..c252fd5706d2 100644
--- a/arch/riscv/configs/defconfig
+++ b/arch/riscv/configs/defconfig
@@ -72,9 +72,10 @@ CONFIG_GPIOLIB=y
CONFIG_GPIO_SIFIVE=y
# CONFIG_PTP_1588_CLOCK is not set
CONFIG_POWER_RESET=y
-CONFIG_DRM=y
-CONFIG_DRM_RADEON=y
-CONFIG_DRM_VIRTIO_GPU=y
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+CONFIG_DRM_NOUVEAU=m
+CONFIG_DRM_VIRTIO_GPU=m
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_USB=y
CONFIG_USB_XHCI_HCD=y
--
2.32.0


2021-10-27 13:27:25

by Palmer Dabbelt

[permalink] [raw]
Subject: Re: [PATCH 1/1] riscv: defconfig: enable DRM_NOUVEAU

On Tue, 12 Oct 2021 09:46:58 PDT (-0700), [email protected] wrote:
> Both RADEON and NOUVEAU graphics cards are supported on RISC-V. Enabling
> the one and not the other does not make sense.
>
> As typically at most one of RADEON, NOUVEAU, or VIRTIO GPU support will be
> needed DRM drivers should be compiled as modules.

Do you have an nVidia card that works on real hardware? Last I checked
was a while ago, but they weren't working at the time (IIRC it was
something to do with PCIe addressing, but it was a hardware limitation
so I don't remember exactly how it all fits together).

If they work then I'm happy to flip them on.

> Signed-off-by: Heinrich Schuchardt <[email protected]>
> ---
> arch/riscv/configs/defconfig | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
> index 4ebc80315f01..c252fd5706d2 100644
> --- a/arch/riscv/configs/defconfig
> +++ b/arch/riscv/configs/defconfig
> @@ -72,9 +72,10 @@ CONFIG_GPIOLIB=y
> CONFIG_GPIO_SIFIVE=y
> # CONFIG_PTP_1588_CLOCK is not set
> CONFIG_POWER_RESET=y
> -CONFIG_DRM=y
> -CONFIG_DRM_RADEON=y
> -CONFIG_DRM_VIRTIO_GPU=y
> +CONFIG_DRM=m
> +CONFIG_DRM_RADEON=m
> +CONFIG_DRM_NOUVEAU=m
> +CONFIG_DRM_VIRTIO_GPU=m
> CONFIG_FRAMEBUFFER_CONSOLE=y
> CONFIG_USB=y
> CONFIG_USB_XHCI_HCD=y

2021-10-27 15:47:33

by Damien Le Moal

[permalink] [raw]
Subject: Re: [PATCH 1/1] riscv: defconfig: enable DRM_NOUVEAU

On 2021/10/27 8:58, Palmer Dabbelt wrote:
> On Tue, 12 Oct 2021 09:46:58 PDT (-0700), [email protected] wrote:
>> Both RADEON and NOUVEAU graphics cards are supported on RISC-V. Enabling
>> the one and not the other does not make sense.
>>
>> As typically at most one of RADEON, NOUVEAU, or VIRTIO GPU support will be
>> needed DRM drivers should be compiled as modules.
>
> Do you have an nVidia card that works on real hardware? Last I checked
> was a while ago, but they weren't working at the time (IIRC it was
> something to do with PCIe addressing, but it was a hardware limitation
> so I don't remember exactly how it all fits together).
>
> If they work then I'm happy to flip them on.

Why enable this at all ? If they do not work, then disabling theses cards make
sense. But if they do work, isn't leaving the config to be the default defined
by the driver the preferred approach ? Otherwise, we will eventually end-up with
a defconfig that has everything enabled...

>
>> Signed-off-by: Heinrich Schuchardt <[email protected]>
>> ---
>> arch/riscv/configs/defconfig | 7 ++++---
>> 1 file changed, 4 insertions(+), 3 deletions(-)
>>
>> diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
>> index 4ebc80315f01..c252fd5706d2 100644
>> --- a/arch/riscv/configs/defconfig
>> +++ b/arch/riscv/configs/defconfig
>> @@ -72,9 +72,10 @@ CONFIG_GPIOLIB=y
>> CONFIG_GPIO_SIFIVE=y
>> # CONFIG_PTP_1588_CLOCK is not set
>> CONFIG_POWER_RESET=y
>> -CONFIG_DRM=y
>> -CONFIG_DRM_RADEON=y
>> -CONFIG_DRM_VIRTIO_GPU=y
>> +CONFIG_DRM=m
>> +CONFIG_DRM_RADEON=m
>> +CONFIG_DRM_NOUVEAU=m
>> +CONFIG_DRM_VIRTIO_GPU=m
>> CONFIG_FRAMEBUFFER_CONSOLE=y
>> CONFIG_USB=y
>> CONFIG_USB_XHCI_HCD=y
>
> _______________________________________________
> linux-riscv mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/linux-riscv
>


--
Damien Le Moal
Western Digital Research

2021-10-27 20:37:51

by Heinrich Schuchardt

[permalink] [raw]
Subject: Re: [PATCH 1/1] riscv: defconfig: enable DRM_NOUVEAU

On 10/27/21 04:31, Damien Le Moal wrote:
> On 2021/10/27 8:58, Palmer Dabbelt wrote:
>> On Tue, 12 Oct 2021 09:46:58 PDT (-0700), [email protected] wrote:
>>> Both RADEON and NOUVEAU graphics cards are supported on RISC-V. Enabling
>>> the one and not the other does not make sense.
>>>
>>> As typically at most one of RADEON, NOUVEAU, or VIRTIO GPU support will be
>>> needed DRM drivers should be compiled as modules.
>>
>> Do you have an nVidia card that works on real hardware? Last I checked
>> was a while ago, but they weren't working at the time (IIRC it was
>> something to do with PCIe addressing, but it was a hardware limitation
>> so I don't remember exactly how it all fits together).
>>
>> If they work then I'm happy to flip them on.

My SiFive Unmatched is running KDE on a GT710.

It would be unfair to treat the two major GPU vendors AMD and Nvidia
differently.

>
> Why enable this at all ? If they do not work, then disabling theses cards make
> sense. But if they do work, isn't leaving the config to be the default defined
> by the driver the preferred approach ? Otherwise, we will eventually end-up with
> a defconfig that has everything enabled...

If you want to get your system up, having keyboard input and GPU output
is the bare minimum that you need to proceed unless you are a developer
working over UART and have a second system available.

To keep the kernel small DRM drivers should be modules.

Best regards

Heinrich

>
>>
>>> Signed-off-by: Heinrich Schuchardt <[email protected]>
>>> ---
>>> arch/riscv/configs/defconfig | 7 ++++---
>>> 1 file changed, 4 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
>>> index 4ebc80315f01..c252fd5706d2 100644
>>> --- a/arch/riscv/configs/defconfig
>>> +++ b/arch/riscv/configs/defconfig
>>> @@ -72,9 +72,10 @@ CONFIG_GPIOLIB=y
>>> CONFIG_GPIO_SIFIVE=y
>>> # CONFIG_PTP_1588_CLOCK is not set
>>> CONFIG_POWER_RESET=y
>>> -CONFIG_DRM=y
>>> -CONFIG_DRM_RADEON=y
>>> -CONFIG_DRM_VIRTIO_GPU=y
>>> +CONFIG_DRM=m
>>> +CONFIG_DRM_RADEON=m
>>> +CONFIG_DRM_NOUVEAU=m
>>> +CONFIG_DRM_VIRTIO_GPU=m
>>> CONFIG_FRAMEBUFFER_CONSOLE=y
>>> CONFIG_USB=y
>>> CONFIG_USB_XHCI_HCD=y
>>
>> _______________________________________________
>> linux-riscv mailing list
>> [email protected]
>> http://lists.infradead.org/mailman/listinfo/linux-riscv
>>
>
>

2021-10-27 21:29:16

by Adam Borowski

[permalink] [raw]
Subject: Re: [PATCH 1/1] riscv: defconfig: enable DRM_NOUVEAU

On Tue, Oct 26, 2021 at 04:57:08PM -0700, Palmer Dabbelt wrote:
> On Tue, 12 Oct 2021 09:46:58 PDT (-0700), [email protected] wrote:
> > Both RADEON and NOUVEAU graphics cards are supported on RISC-V. Enabling
> > the one and not the other does not make sense.
> >
> > As typically at most one of RADEON, NOUVEAU, or VIRTIO GPU support will be
> > needed DRM drivers should be compiled as modules.
>
> Do you have an nVidia card that works on real hardware? Last I checked was
> a while ago, but they weren't working at the time (IIRC it was something to
> do with PCIe addressing, but it was a hardware limitation so I don't
> remember exactly how it all fits together).

Not having read the docs (no one does! :p), I took a random old card from
the shelf, put it in, and it just worked:

07:00.0 VGA compatible controller: NVIDIA Corporation G98 [GeForce 8400 GS Rev. 2] (rev a1)


Meow!
--
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Polexit is brewing? Let's skip that smelly Polsha and reactivate
⢿⡄⠘⠷⠚⠋⠀ the Free City of Danzig and/or reapply to the Hansa.
⠈⠳⣄⠀⠀⠀⠀

2021-10-27 22:19:33

by Palmer Dabbelt

[permalink] [raw]
Subject: Re: [PATCH 1/1] riscv: defconfig: enable DRM_NOUVEAU

On Wed, 27 Oct 2021 00:31:54 PDT (-0700), [email protected] wrote:
> On 10/27/21 04:31, Damien Le Moal wrote:
>> On 2021/10/27 8:58, Palmer Dabbelt wrote:
>>> On Tue, 12 Oct 2021 09:46:58 PDT (-0700), [email protected] wrote:
>>>> Both RADEON and NOUVEAU graphics cards are supported on RISC-V. Enabling
>>>> the one and not the other does not make sense.
>>>>
>>>> As typically at most one of RADEON, NOUVEAU, or VIRTIO GPU support will be
>>>> needed DRM drivers should be compiled as modules.
>>>
>>> Do you have an nVidia card that works on real hardware? Last I checked
>>> was a while ago, but they weren't working at the time (IIRC it was
>>> something to do with PCIe addressing, but it was a hardware limitation
>>> so I don't remember exactly how it all fits together).
>>>
>>> If they work then I'm happy to flip them on.
>
> My SiFive Unmatched is running KDE on a GT710.
>
> It would be unfair to treat the two major GPU vendors AMD and Nvidia
> differently.
>
>>
>> Why enable this at all ? If they do not work, then disabling theses cards make
>> sense. But if they do work, isn't leaving the config to be the default defined
>> by the driver the preferred approach ? Otherwise, we will eventually end-up with
>> a defconfig that has everything enabled...
>
> If you want to get your system up, having keyboard input and GPU output
> is the bare minimum that you need to proceed unless you are a developer
> working over UART and have a second system available.
>
> To keep the kernel small DRM drivers should be modules.

I can buy the argument for not having any of this in arch defconfigs,
but in practice there's a lot of stuff in defconfigs that I don't really
think should be arch decisions (ext4, for example). If we've got AMD in
there and the nVidia cards work then I don't see any reason to
differentiate between the two, so let's just do the same thing for both.

This is on for-next.

>
> Best regards
>
> Heinrich
>
>>
>>>
>>>> Signed-off-by: Heinrich Schuchardt <[email protected]>
>>>> ---
>>>> arch/riscv/configs/defconfig | 7 ++++---
>>>> 1 file changed, 4 insertions(+), 3 deletions(-)
>>>>
>>>> diff --git a/arch/riscv/configs/defconfig b/arch/riscv/configs/defconfig
>>>> index 4ebc80315f01..c252fd5706d2 100644
>>>> --- a/arch/riscv/configs/defconfig
>>>> +++ b/arch/riscv/configs/defconfig
>>>> @@ -72,9 +72,10 @@ CONFIG_GPIOLIB=y
>>>> CONFIG_GPIO_SIFIVE=y
>>>> # CONFIG_PTP_1588_CLOCK is not set
>>>> CONFIG_POWER_RESET=y
>>>> -CONFIG_DRM=y
>>>> -CONFIG_DRM_RADEON=y
>>>> -CONFIG_DRM_VIRTIO_GPU=y
>>>> +CONFIG_DRM=m
>>>> +CONFIG_DRM_RADEON=m
>>>> +CONFIG_DRM_NOUVEAU=m
>>>> +CONFIG_DRM_VIRTIO_GPU=m
>>>> CONFIG_FRAMEBUFFER_CONSOLE=y
>>>> CONFIG_USB=y
>>>> CONFIG_USB_XHCI_HCD=y
>>>
>>> _______________________________________________
>>> linux-riscv mailing list
>>> [email protected]
>>> http://lists.infradead.org/mailman/listinfo/linux-riscv
>>>
>>
>>