All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Peres <martin.peres-GANU6spQydw@public.gmane.org>
To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
Subject: Re: Selecting supported chipsets in the driver?
Date: Wed, 31 Jul 2013 10:44:55 -0400	[thread overview]
Message-ID: <51F922E7.1050100@free.fr> (raw)
In-Reply-To: <CAKb7UvgNmvcuUD4T0+0MdK_Drk3vp9CgLGGtANJC_up04otvvA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On 30/07/2013 18:43, Ilia Mirkin wrote:
> On Tue, Jul 30, 2013 at 6:31 PM, Emil Velikov <emil.l.velikov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>> On 30/07/13 21:39, Christ-Jan Wijtmans wrote:
>>> Hi, my apologies if this is the wrong place to post this.
>>> I had the desire to turn on or off support for certain chipsets.
>>> Because i felt like the nouveau drivers are (relatively) quite large and
>>> depends on some kernel code that would only be used for certain chipsets.
>>> I will take some time this week to see how this is coded and if its
>>> possible but i just wanted a head sup opinion on you guys before i start
>>> wasting my time.
>>>
>> I'm not entirely sure if you're talking about the kernel module, ddx
>> (xf86-video-nouveau) or mesa.
>>
>> In either case, all three should be relatively easy to do, as normally
>> the generation specific code is divided. Not too sure if it's worth the
>> effort though
>>
>> * kernel module - 1.7 MiB, ~400KiB gzip
>> * ddx - ~200KiB
>> * mesa - 6.3 MiB (nouveau/gallium only)
>>
>> As you can see the sizes are not that big, and I'm not sure if the
>> maintainers would be up-to the idea
>>
>> Not a maintainer myself so take the last statement if a healthy pinch of
>> salt :)
> I'm not a maintainer either, but to provide an opposing opinion, I
> strongly support the notion of being able to select card generations
> to build support for. 1.7M of kernel code is huge. I don't even think
> it'd be that hard (at least for the kernel module and mesa, and I
> think there's a lot less value in doing it for the DDX). I think it
> might be as easy as some Makefile changes + a couple of ifdefs in the
> init code to do Y/N selects. Making it so that the additional
> functionality can be loaded on demand (i.e. Y/M/N) may be much
> trickier, to the point of it not being worth it for the additional
> complexity.
>
>    -ilia

In mesa, it is possible to build the driver you want (nouveau_vieux, nv30,
nv50 or nvc0) so the feature is already there.
There is no point for the ddx.

As for drm, I sure would use this feature as this would cut down compilation
time a lot when doing out of the tree builds. With the core arch, in theory,
it shouldn't be that hard if you want plan on using old cards only. However,
if you plan on doing the opposite (drop old cards support), it is harder
as newer cards still use code written for the old ones. If you like,
you can draw a dependency map quite easily by looking into the device
directory that will contain all the dependencies for every chipset.

One more thing, maintaining these dependencies will be done poorly and
eat development time. So I'm not in huge favour of this unless you
introduce a system that only compiles code for chipsets up to a certain
point (which is useless IMO).

  parent reply	other threads:[~2013-07-31 14:44 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-30 20:39 Selecting supported chipsets in the driver? Christ-Jan Wijtmans
     [not found] ` <CAMjv+TQLp4dCfa0FHmfUOYZR3H_RMwiev=59Ocr3WN=drky=YQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-07-30 22:31   ` Emil Velikov
     [not found]     ` <51F83EA7.8050704-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-07-30 22:43       ` Ilia Mirkin
     [not found]         ` <CAKb7UvgNmvcuUD4T0+0MdK_Drk3vp9CgLGGtANJC_up04otvvA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-07-31 14:44           ` Martin Peres [this message]
     [not found]             ` <51F922E7.1050100-GANU6spQydw@public.gmane.org>
2013-07-31 15:03               ` Ilia Mirkin
     [not found]                 ` <CAKb7UvhyvHXN5dXdfp_By6K3fdr_17S87ptgLP-EHLpw_G=V6g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-07-31 15:42                   ` Martin Peres
     [not found]                     ` <51F9306B.1020602-GANU6spQydw@public.gmane.org>
2013-08-01  0:15                       ` Christ-Jan Wijtmans
     [not found]                         ` <CAMjv+TTjz40ry-i7XaVTS488_iFrT0rj-K2LHiDEhxZmW69Law-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-29 13:17                           ` Christ-Jan Wijtmans
     [not found]                             ` <CAMjv+TSscEmtCzW+oJ9oQ5hOewmZDWQwJ-FRb3cg==bkY=Bm1A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-11-29 14:13                               ` Martin Peres

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=51F922E7.1050100@free.fr \
    --to=martin.peres-ganu6spqydw@public.gmane.org \
    --cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.