Re: Prefer nvidia over nv when available

2007-10-05 Thread Free Ekanayaka
Hi David,

|--== David Nusinow writes:

[...]

  DN The idea for the future is that all the drivers will export a symbol table
  DN of the PCI ID's they support. The server will scan them for drivers
  DN supporting the required PCI ID. My plan is to have them export an
  DN additional symbol table consisting of driver names that they override. So
  DN nvidia would export an override table with nv in it.

Cool, pretty much like kernel some modules then.

  DN The notable thing about this is that it exists entirely outside the
  DN packaging system, so it's entirely up to upstream.

That is a Good Thing :)

  DN In the case of the
  DN various nvidia drivers, if the legacy drivers are updated to include these
  DN symbols then they'll be automatically loaded if they're available. If not,
  DN then the server will load something else (nv if available, or an
  DN arch-specific fallback like vesa if not). 

  DN So, if Nvidia decides to update their drivers, they'll get the benefits of
  DN this.

Let's say that, in the best case scenario, that Nvidia updates both
their new and legacy drivers (71xx,96xx). Still the relevant Debian
packages can't be installed at same time (as they are now), so the
proper nvidia driver sporting the proper PCI ID might not be available
on the system. Is there a workaround for this?

For example in the Debian package for a legacy driver one could change
the path of the file of the nvidia xorg driver, from:

/usr/lib/xorg/modules/drivers/nvidia_drv.so

to

/usr/lib/xorg/modules/drivers/nvidia_drv-96xx-.so

so that the package doesn't conflict anymore with the other nvidia
driver packages. Or other tricks like this one.

Would this work/make sense?

  DN The PCI ID symbol table thing already exists upstream in the xserver
  DN master branch, but the code to auto-load the driver based on it doesn't
  DN exist yet, but that's my goal for next week. In the worst-case scenario,
  DN Nvidia won't add the necessary symbols and users will just have to edit
  DN their xorg.confs the same way they did in the past.

In the worst case scenario of Nvidia not updating their drivers (or
updating only the new one and not the legacy ones), what could be done
to avoid the user to edit directly the xorg.conf file?

Ciao,

Free


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Prefer nvidia over nv when available

2007-10-05 Thread David Nusinow
On Fri, Oct 05, 2007 at 09:38:38AM +0200, Free Ekanayaka wrote:
 Hi David,
 
 |--== David Nusinow writes:
 
 [...]
 
   DN The idea for the future is that all the drivers will export a symbol 
 table
   DN of the PCI ID's they support. The server will scan them for drivers
   DN supporting the required PCI ID. My plan is to have them export an
   DN additional symbol table consisting of driver names that they override. 
 So
   DN nvidia would export an override table with nv in it.
 
 Cool, pretty much like kernel some modules then.
 
   DN The notable thing about this is that it exists entirely outside the
   DN packaging system, so it's entirely up to upstream.
 
 That is a Good Thing :)
 
   DN In the case of the
   DN various nvidia drivers, if the legacy drivers are updated to include 
 these
   DN symbols then they'll be automatically loaded if they're available. If 
 not,
   DN then the server will load something else (nv if available, or an
   DN arch-specific fallback like vesa if not). 
 
   DN So, if Nvidia decides to update their drivers, they'll get the benefits 
 of
   DN this.
 
 Let's say that, in the best case scenario, that Nvidia updates both
 their new and legacy drivers (71xx,96xx). Still the relevant Debian
 packages can't be installed at same time (as they are now), so the
 proper nvidia driver sporting the proper PCI ID might not be available
 on the system. Is there a workaround for this?

I have two related solutions in mind. One is that the server will ship a
list of PCI ID's mapped to drivers itself. This list would allow the server
to inform the user via a log what driver they would install. We could
easily patch this to add the nvidia id's if we want. I don't know exactly
what form this will take though.

The second solution is to use discover. We're trying to get rid of it, but
it's being repurposed for Debian to allow custom package installs for the
hardware it's installed on. We may end up wanting to hook it in to d-i to
allow the user to just install the driver they want on install. We could
teach it about the nvidia legacy drivers.

This is still more fantasy than reality, although I think they're good
long-term goals to shoot for.

 For example in the Debian package for a legacy driver one could change
 the path of the file of the nvidia xorg driver, from:
 
 /usr/lib/xorg/modules/drivers/nvidia_drv.so
 
 to
 
 /usr/lib/xorg/modules/drivers/nvidia_drv-96xx-.so
 
 so that the package doesn't conflict anymore with the other nvidia
 driver packages. Or other tricks like this one.
 
 Would this work/make sense?

I'm not sure if this would work because the driver also ships its own
version of the glx. If they require different glx's then they'd conflict. I
don't know the details of the nvidia driver to say for sure though.
 
   DN The PCI ID symbol table thing already exists upstream in the xserver
   DN master branch, but the code to auto-load the driver based on it doesn't
   DN exist yet, but that's my goal for next week. In the worst-case scenario,
   DN Nvidia won't add the necessary symbols and users will just have to edit
   DN their xorg.confs the same way they did in the past.
 
 In the worst case scenario of Nvidia not updating their drivers (or
 updating only the new one and not the legacy ones), what could be done
 to avoid the user to edit directly the xorg.conf file?

Well... I do have a set of patches currently in unstable that could
theoretically handle this. Instead of relying on the module itself to carry
the symbols, they use a flat text file list of PCI ID's. I was going to
remove this system in favor of the symbols system, but I could leave it in
place as a secondary fallback mechanism for just this sort of thing. Then
you just have to have the package ship the text file and you're done. It
might be worth doing, although the extra cruft just to support non-free
drivers kind of sucks. I'll try to discuss it upstream and see what they
think.

 - David Nusinow


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Prefer nvidia over nv when available

2007-10-03 Thread Free Ekanayaka
Hi David,

|--== David Nusinow writes:

  DN On Mon, Oct 01, 2007 at 11:30:26PM +0200, Free Ekanayaka wrote:
  Hi all,
  
  is there a way to instruct the script(s) that generate the xorg.conf
  file at installation time to prefer nvidia over nv when the first is
  available? (and possibly to mark the proper packages for installation
  when not already installed).

  DN Not currently but it is definitely something I'm planning to do. Since I'm
  DN going to scrap that section of the debconfage soon, adding the feature
  DN there is pretty useless. The solution we currently have is a temporary one
  DN due to changes upstream, but I'll be implementing things upstream over the
  DN next few weeks, and I'll follow it up with this sort of feature so that
  DN nvidia can override nv by default when they're both installed (if the
  DN nvidia developers decide that's what they want anyway).

Thanks. Just a few questions, if you already know the answer. Beside
the regular nvidia-glx package and the relevant kernel module package
would this mechanism also support the various other packages of the
nvidia driver currently available in sid (e.g. legacy-71xx and
legacy-96xx)?

These different nvidia packages conflict with each other, so it might
happen that the correct nvidia package is not installed by the time
the xorg packages run their debconf script. How would this situation
be handled?

Ciao!

Free


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Prefer nvidia over nv when available

2007-10-03 Thread David Nusinow
On Wed, Oct 03, 2007 at 11:08:29AM +0200, Free Ekanayaka wrote:
 Hi David,
 
 |--== David Nusinow writes:
 
   DN On Mon, Oct 01, 2007 at 11:30:26PM +0200, Free Ekanayaka wrote:
   Hi all,
   
   is there a way to instruct the script(s) that generate the xorg.conf
   file at installation time to prefer nvidia over nv when the first is
   available? (and possibly to mark the proper packages for installation
   when not already installed).
 
   DN Not currently but it is definitely something I'm planning to do. Since 
 I'm
   DN going to scrap that section of the debconfage soon, adding the feature
   DN there is pretty useless. The solution we currently have is a temporary 
 one
   DN due to changes upstream, but I'll be implementing things upstream over 
 the
   DN next few weeks, and I'll follow it up with this sort of feature so that
   DN nvidia can override nv by default when they're both installed (if the
   DN nvidia developers decide that's what they want anyway).
 
 Thanks. Just a few questions, if you already know the answer. Beside
 the regular nvidia-glx package and the relevant kernel module package
 would this mechanism also support the various other packages of the
 nvidia driver currently available in sid (e.g. legacy-71xx and
 legacy-96xx)?
 
 These different nvidia packages conflict with each other, so it might
 happen that the correct nvidia package is not installed by the time
 the xorg packages run their debconf script. How would this situation
 be handled?

The idea for the future is that all the drivers will export a symbol table
of the PCI ID's they support. The server will scan them for drivers
supporting the required PCI ID. My plan is to have them export an
additional symbol table consisting of driver names that they override. So
nvidia would export an override table with nv in it.

The notable thing about this is that it exists entirely outside the
packaging system, so it's entirely up to upstream. In the case of the
various nvidia drivers, if the legacy drivers are updated to include these
symbols then they'll be automatically loaded if they're available. If not,
then the server will load something else (nv if available, or an
arch-specific fallback like vesa if not). 

So, if Nvidia decides to update their drivers, they'll get the benefits of
this. The PCI ID symbol table thing already exists upstream in the xserver
master branch, but the code to auto-load the driver based on it doesn't
exist yet, but that's my goal for next week. In the worst-case scenario,
Nvidia won't add the necessary symbols and users will just have to edit
their xorg.confs the same way they did in the past.

 - David Nusinow


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Prefer nvidia over nv when available

2007-10-02 Thread David Nusinow
On Mon, Oct 01, 2007 at 11:30:26PM +0200, Free Ekanayaka wrote:
 Hi all,
 
 is there a way to instruct the script(s) that generate the xorg.conf
 file at installation time to prefer nvidia over nv when the first is
 available? (and possibly to mark the proper packages for installation
 when not already installed).

Not currently but it is definitely something I'm planning to do. Since I'm
going to scrap that section of the debconfage soon, adding the feature
there is pretty useless. The solution we currently have is a temporary one
due to changes upstream, but I'll be implementing things upstream over the
next few weeks, and I'll follow it up with this sort of feature so that
nvidia can override nv by default when they're both installed (if the
nvidia developers decide that's what they want anyway).

 - David Nusinow


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]