From: Nicolas FRANCOIS on
Hi.

I just bought a new PC, a DualCore 2.2GHz, with an Nvidia 8600 GT
graphic card (which is for the moment a 7300LE, because the 8600 was not
available at the time I purchased the PC), and a PT890 motherboard.

I installed the last SVN version of LFS, everything working fine. I then
installed the base of BLFS upto X, still fine.

But when I tried to install the last Nvidia kernel, I had this problem
while launching X :

NVIDIA: could not open the device file /dev/nvidia0 (Function not
implemented)

I think I saw the driver work for a Mandriva, so this must be me missing
some obvious point, but Googling the error message didn't work out as
well as I would have thought.

When I look at dmesg after loading the nvidia driver, I see this :

NVRM: request_irq() failed (-38)

What can I do to solve my problem ? Is it a BIOS problem, a driver
problem...

Thanks for any help.

\bye

--

***********************************************
Nicolas FRANCOIS
nicolas.francois(a)free.fr
http://nicolas.francois.free.fr

What is yellow, small and VERY VERY dangerous ?

A canari bird with a root password.
***********************************************
From: Dances With Crows on
Nicolas FRANCOIS staggered into the Black Sun and said:
> an Nvidia 8600 GT graphic card (which is for the moment a 7300LE,
> because the 8600 was not available at the time I purchased the PC),

Er... what shows up in "lspci | grep VGA"? (This is not that relevant to
the problem you describe, though.)

> I installed the last SVN version of LFS

Whoa. You like to live on the edge.

> But when I tried to install the last Nvidia kernel [module], I had
> this problem while launching X :
> NVIDIA: could not open the device file /dev/nvidia0 (Function not
> implemented)

So, you modprobed nvidia before starting X, right? And you get:

crw-rw-rw- 1 root root 195, 0 Mar 1 17:19 /dev/nvidia0
crw-rw-rw- 1 root root 195, 255 Mar 1 17:19 /dev/nvidiactl

from ls -l /dev/nvidia* ?

> When I look at dmesg after loading the nvidia driver, I see this :
> NVRM: request_irq() failed (-38)

Ah. In your BIOS Setup, make sure that "Assign IRQ to VGA" is set to Y,
and after you've modprobed nvidia, you need to see that the nvidia
module has grabbed one of the interrupts.

> What can I do to solve my problem ? Is it a BIOS problem, a driver
> problem...

I am not sure yet. You might want to to a dmesg right after modprobing
nvidia and follow up with anything that looks odd. Also, nvidia depends
on I2C, so you have to have the I2C module for your chipset loaded.
(You should have that loaded already, but it never hurts to check.) HTH
anyway, and bonne chance,

--
Yesterday upon the stair, I met a man who wasn't there.
He wasn't there again today -- I think he's from the CIA.
My blog and resume: http://crow202.dyndns.org:8080/wordpress/
Matt G|There is no Darkness in Eternity/But only Light too dim for us to see
From: Nicolas FRANCOIS on
Le Mon, 31 Mar 2008 19:20:57 +0000, Dances With Crows a écrit :

> Nicolas FRANCOIS staggered into the Black Sun and said:
>> an Nvidia 8600 GT graphic card (which is for the moment a 7300LE,
>> because the 8600 was not available at the time I purchased the PC),
>
> Er... what shows up in "lspci | grep VGA"? (This is not that relevant
> to the problem you describe, though.)

This is the result of the command 'lspci -v', restricted to the relevant
GC entry :

02:00.0 VGA compatible controller: nVidia Corporation G72 [GeForce 7300
LE] (rev a1) (prog-if 00 [VGA controller])
Subsystem: Micro-Star International Co., Ltd. Unknown device 0274
Flags: bus master, fast devsel, latency 0, IRQ 48
Memory at dc000000 (32-bit, non-prefetchable) [size=16M]
Memory at c0000000 (64-bit, prefetchable) [size=256M]
Memory at dd000000 (64-bit, non-prefetchable) [size=16M]
[virtual] Expansion ROM at de000000 [disabled] [size=128K]
Capabilities: [60] Power Management version 2
Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0
Enable-
Capabilities: [78] Express Endpoint IRQ 0

>
>> I installed the last SVN version of LFS
>
> Whoa. You like to live on the edge.

We like it that way, don't we ? ;-) In fact, I've been using LFS for so
long now that I don't quite understand the other distributions like
Debian or Mandriva. I like to solve my problems the way I understand them.

>> But when I tried to install the last Nvidia kernel [module], I had this
>> problem while launching X :
>> NVIDIA: could not open the device file /dev/nvidia0 (Function not
>> implemented)
>
> So, you modprobed nvidia before starting X, right? And you get:
>
> crw-rw-rw- 1 root root 195, 0 Mar 1 17:19 /dev/nvidia0 crw-rw-rw- 1
> root root 195, 255 Mar 1 17:19 /dev/nvidiactl
>
> from ls -l /dev/nvidia* ?

Yes.

>> When I look at dmesg after loading the nvidia driver, I see this :
>> NVRM: request_irq() failed (-38)
>
> Ah. In your BIOS Setup, make sure that "Assign IRQ to VGA" is set to Y,
> and after you've modprobed nvidia, you need to see that the nvidia
> module has grabbed one of the interrupts.

That's the next thing I'm going to look after. Several messages pointed
this to be quite important, so it may be relevant :-)

>> What can I do to solve my problem ? Is it a BIOS problem, a driver
>> problem...
>
> I am not sure yet. You might want to to a dmesg right after modprobing
> nvidia and follow up with anything that looks odd.

I mentionned the thing that looks odd :

>> NVRM: request_irq() failed (-38)

> Also, nvidia depends on I2C, so you have to have the I2C module for
> your chipset loaded. (You should have that loaded already, but it never
> hurts to check.) HTH anyway, and bonne chance,

This is an important point, my friend, especially because I don't have
the basic kernel with EVERY module shipped with. I do compile what I need
(or what I think I need), so if some module is not present, I can't rely
on the boot messages to pinpoint it.

Thank you for your help. I hope next message will bring good news ;-)

\bye

--

***********************************************
Nicolas FRANCOIS
nicolas.francois(a)free.fr
http://nicolas.francois.free.fr

What is yellow, small and VERY VERY dangerous ?

A canari bird with a root password.
***********************************************
From: Nicolas FRANCOIS on
Le Mon, 31 Mar 2008 19:20:57 +0000, Dances With Crows a écrit :

> Also, nvidia depends on I2C, so you have to have the I2C module for
> your chipset loaded. (You should have that loaded already, but it never
> hurts to check.)

You were right about I2C, and wrong about me having it loaded
allready :-) I simply forgot to include it in my kernel configuration
(because I usually don't use it, and overlooked it in Nvidia
documentation). Now it's right there, in good place, and it did the
trick :-)

> HTH anyway, and bonne chance,

Lucky I was, thanks to you.

BTW, I didn't find the "pass IRQ to VGA" option in my Phoenix Award
BIOS... but there seems to be no point anymore to look for it.

\bye

--

***********************************************
Nicolas FRANCOIS
nicolas.francois(a)free.fr
http://nicolas.francois.free.fr

What is yellow, small and VERY VERY dangerous ?

A canari bird with a root password.
***********************************************
From: Dances With Crows on
Nicolas FRANCOIS staggered into the Black Sun and said:
> Dances With Crows a �crit:
>> Also, nvidia depends on I2C, so you have to have the I2C module for
>> your chipset loaded. (You should have that loaded already, but it
>> never hurts to check.)
> You were right about I2C, and wrong about me having it loaded allready
> :-) I simply forgot to include it in my kernel configuration (because
> I usually don't use it, and overlooked it in Nvidia documentation).
> Now it's right there, in good place, and it did the trick :-)

Hmm, don't you need I2C for hardware temperature sensors? I've always
built I2C just for that reason. It's amazing what reading the
documentation for the nVidia module can teach, eh? :-)

>> HTH anyway, and bonne chance,
> Lucky I was, thanks to you. BTW, I didn't find the "pass IRQ to VGA"
> option in my Phoenix Award BIOS... but there seems to be no point
> anymore to look for it.

I think that your machine's BIOS may set that option to Y by default.
Now that practically everything is either running as an x86_64 or has
IO-APIC, there's no point in *not* assigning an IRQ to the VGA card.
Glad it all worked out,

--
I think it's a beautiful day to go to the zoo and feed the ducks.
To the lions. --Brian Kantor
My blog and resume: http://crow202.dyndns.org:8080/wordpress/
Matt G|There is no Darkness in Eternity/But only Light too dim for us to see