[gentoo-user] Re: PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread Grant Edwards
On 2024-05-20, Dale  wrote:

A 3.0 card is supposed to work fine in a 2.0 slot.

> You, or anyone, have any idea why that card would kill my network? 
> I suspect the card itself is fine.  It did see the drive.  I just
> need the internet to work since it may be used in a NAS rig.

Is it causing the network interface to not show up at all in lspci?

Is it causing the network device name to change?

Or is the network interface still detected, still named the same, and
just doesn't send/receive packets?

It could be some sort of interrupt sharing problem. Even with PCI
express, cards still sometimes have to share interrupts.  Intel/IBM
made that bad decision 45 years ago, and we're still suffering because
of it.  If that the problem, sometimes you can avoid it by physically
rearranging the cards.

The later PCI hosts/boards finally came up with a way to avoid it, but
a lot of cards still don't support that.

--
Grant




Re: [gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread Mark Knecht
> You could be right.  I did find one interesting post in my google search,
one person updated their BIOS and fixed the issue.  Pretty sure mine is up
to date.  Given the age of the mobo, I doubt they even think of releasing a
new BIOS for that old thing.
>
> Anyway, I found a card with a Marvel chip instead of ASMedia.  It also
says in the description that it is PCIe v2.0.  I'm hoping it will work.
>
> I need to read up more on lspci.  I mostly use the -k option to show
kernel drivers in use for each chip thing.  I've never used the -t option.
Gonna go play with that a bit.
>
-k is good. -n, -t, -v come in handy. You can also dump
the PCI config space to look at address mapping if that
comes up. (And might be useful if it turns out the SATA
card and network controller are both identifiable but
somehow overlapping each other, which would be VERY
bad if it happened)

Anyway, if you dig in and provide data someone here
can help where your background isn't deep enough
or it gets confusing.


Re: [gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread Dale
Mark Knecht wrote:
>
>
> On Mon, May 20, 2024 at 12:09 PM Dale  > wrote:
> >
> 
> > First, I thought cards were backward compatible?  You could stick a 3.0
> > into a 2.0 slot and it would just run as a 2.0 and vice versa.  I know
> > the mobo is 2.0.  It does recognize the drive but seems to nuke the
> > ethernet somehow.  I looked, there is no switches on the card.  I don't
> > see a way to adjust how it works or anything.
> >
> 
>
> You've gotten a number of good answers so I won't duplicate any
> of that, but as someone who worked designing PCI and PCI Express
> hardware I make a couple of observations:
>
> 1) A hardware spec can be backward compatible but if BIOS 
> doesn't, or didn't at the time, do everything correctly, then a 
> PCI Express chip mounted on an adapter card and misprogrammed
> by BIOS can cause a lot of problems.
>
> 2) To me, this problem smells of the sort of thing we used to
> see when BIOS (or potentially the OS) didn't handle PCI
> Bridges correctly.
>
> The way a lot of this Wide PCI Express to multiple slow
> interfaces work is by embedding a PCI Express Bridge 
> inside the chip and then branching out to independant 
> PCI Express (or just PCI) narrow devices inside the chip
> and behind the bridge. 
>
> You can see a representation of this stuff using the 
> commands:
>
> lspci 
> lspci -t -v (or -vvv) 
>
> The numbers you see are the PCI device number BIOS
> has given each device. If a device number has a dot 
> something value then these are subdevices inside the
> chip. When you see the depth getting large and you 
> start to see sub-busses you are actually getting there
> through a bridge. 
>
> The problem is a lot of old BIOS's didn't handle bridges
> correctly, and a lot of bridges didn't work correctly, and
> the PCI Bridge specs were changing along the way.
>
> If you look at the tree structure with the card out and card 
> in the machine then you may find out that there is a
> problem, such as the network controller not showing up.
>
> As the network controller is likely in the motherboard
> chipset it is possible that a PCI Express network adapter
> will do better, but that's sort of hunt and peck.
>
> Best wishes, good luck and happy hunting,
> Mark

You could be right.  I did find one interesting post in my google
search, one person updated their BIOS and fixed the issue.  Pretty sure
mine is up to date.  Given the age of the mobo, I doubt they even think
of releasing a new BIOS for that old thing. 

Anyway, I found a card with a Marvel chip instead of ASMedia.  It also
says in the description that it is PCIe v2.0.  I'm hoping it will work. 

I need to read up more on lspci.  I mostly use the -k option to show
kernel drivers in use for each chip thing.  I've never used the -t
option.  Gonna go play with that a bit. 

Dale

:-)  :-) 

P. S.  I had started saving up for my new rig again.  Tank on my toilet
cracked and started leaking.  Pardon the pun, the money I had saved up,
got flushed.  :-(  Got a new toilet tho.  I keep playing with the lid. 
It closes itself.  O_O 


Re: [gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread Mark Knecht
On Mon, May 20, 2024 at 12:09 PM Dale  wrote:
>

> First, I thought cards were backward compatible?  You could stick a 3.0
> into a 2.0 slot and it would just run as a 2.0 and vice versa.  I know
> the mobo is 2.0.  It does recognize the drive but seems to nuke the
> ethernet somehow.  I looked, there is no switches on the card.  I don't
> see a way to adjust how it works or anything.
>


You've gotten a number of good answers so I won't duplicate any
of that, but as someone who worked designing PCI and PCI Express
hardware I make a couple of observations:

1) A hardware spec can be backward compatible but if BIOS
doesn't, or didn't at the time, do everything correctly, then a
PCI Express chip mounted on an adapter card and misprogrammed
by BIOS can cause a lot of problems.

2) To me, this problem smells of the sort of thing we used to
see when BIOS (or potentially the OS) didn't handle PCI
Bridges correctly.

The way a lot of this Wide PCI Express to multiple slow
interfaces work is by embedding a PCI Express Bridge
inside the chip and then branching out to independant
PCI Express (or just PCI) narrow devices inside the chip
and behind the bridge.

You can see a representation of this stuff using the
commands:

lspci
lspci -t -v (or -vvv)

The numbers you see are the PCI device number BIOS
has given each device. If a device number has a dot
something value then these are subdevices inside the
chip. When you see the depth getting large and you
start to see sub-busses you are actually getting there
through a bridge.

The problem is a lot of old BIOS's didn't handle bridges
correctly, and a lot of bridges didn't work correctly, and
the PCI Bridge specs were changing along the way.

If you look at the tree structure with the card out and card
in the machine then you may find out that there is a
problem, such as the network controller not showing up.

As the network controller is likely in the motherboard
chipset it is possible that a PCI Express network adapter
will do better, but that's sort of hunt and peck.

Best wishes, good luck and happy hunting,
Mark


Re: [gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread Dale
mad.scientist.at.la...@tutanota.com wrote:
> You probably need to adjust the bios, possibly starting with the fail safe or 
> optimized defaults and then changing what you need to after everything is 
> basically working.
>

I tried it and same thing.  It was a good thought tho.  I tend to run
the defaults, except disabling the splash screen thing, but still, it
could have helped. 

I noticed a new message right after the BIOS post and Grub loading.  It
says, typing by hand from a video. 

Warning: Have option ROM can not be invoke (Vendor ID: 1B21h, Deivce ID:

Typo is theirs.  It should be device I think.  Also, very last bit is
under a thing the monitor puts on the screen right after it powers up. 
It never shows what's under it.  I think it is translated from another
language.  I looked up the ID and it is the vendor for the chip on the
SATA card, ASMedia.  So, pretty sure that is related to the SATA card. 
After that message, it usually lists all the drives it sees.  It doesn't
list anything but the drive with the OS on it.  My main rig does the
same.  It's only when the kernel loads and Gentoo starts booting using
its driver that the drives connected to the card are seen.  I have to
make sure to put my DVD drive and OS drive on the mobo itself.  I also
put the drive with /home on the mobo.  The other data drives that are
not needed until I login and decrypt them are connected to the SATA
cards.  It's just how it works with this mobo, maybe all of them. 

Anyway, BIOS reset didn't help.  Maybe that error above will give
someone a clue.  Google isn't much help either.  :/

Dale

:-)  :-) 



Re: [gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread mad . scientist . at . large
You probably need to adjust the bios, possibly starting with the fail safe or 
optimized defaults and then changing what you need to after everything is 
basically working.


May 20, 2024, 14:26 by :

> For card specs I always do a web search with the model number, though you may 
> have to put it in a slot to read that info.  Most of the cards I buy come 
> from ebay, used, so I'm always looking up the specs.  
>
> If it's from a server looking up the part number from one of the labels 
> should work.  
>
> For the ones I decide to buy I always get the manuals and latest firmware, 
> also via a search on the manufacturers site or on the web in general.  Most  
> companies are good about keeping even the information on obsolete cards 
> available but some are terrible about that.
>
> May 20, 2024, 13:28 by k...@aspodata.se:
>
>> Dale:
>> ...
>>
>>> First, I thought cards were backward compatible?  You could stick a 3.0
>>> into a 2.0 slot and it would just run as a 2.0 and vice versa.  I know
>>> the mobo is 2.0.  It does recognize the drive but seems to nuke the
>>> ethernet somehow.  I looked, there is no switches on the card.  I don't
>>> see a way to adjust how it works or anything.
>>>
>> ...
>>
>>  From first section of 
>> https://en.wikipedia.org/wiki/PCI_Express#PCI_Express_3.0
>>
>>  PCI Express 3.0 Base specification revision 3.0 was made available in
>>  November 2010, after multiple delays. In August 2007, PCI-SIG announced
>>  that PCI Express 3.0 would carry a bit rate of 8 gigatransfers per second
>>  (GT/s), and that it would be backward compatible with existing PCI
>>  Express implementations.
>>
>>  Though in https://en.wikipedia.org/wiki/PCI_Express#Comparison_table
>>  they are said to have different encodings.
>>
>>  Unfortunately the specs (https://pcisig.com/specifications) are only
>>  available for members.
>>
>> Regards,
>> /Karl Hammar
>>




Re: [gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread mad . scientist . at . large
For card specs I always do a web search with the model number, though you may 
have to put it in a slot to read that info.  Most of the cards I buy come from 
ebay, used, so I'm always looking up the specs.  

If it's from a server looking up the part number from one of the labels should 
work.  

For the ones I decide to buy I always get the manuals and latest firmware, also 
via a search on the manufacturers site or on the web in general.  Most  
companies are good about keeping even the information on obsolete cards 
available but some are terrible about that.

May 20, 2024, 13:28 by k...@aspodata.se:

> Dale:
> ...
>
>> First, I thought cards were backward compatible?  You could stick a 3.0
>> into a 2.0 slot and it would just run as a 2.0 and vice versa.  I know
>> the mobo is 2.0.  It does recognize the drive but seems to nuke the
>> ethernet somehow.  I looked, there is no switches on the card.  I don't
>> see a way to adjust how it works or anything.
>>
> ...
>
>  From first section of 
> https://en.wikipedia.org/wiki/PCI_Express#PCI_Express_3.0
>
>  PCI Express 3.0 Base specification revision 3.0 was made available in
>  November 2010, after multiple delays. In August 2007, PCI-SIG announced
>  that PCI Express 3.0 would carry a bit rate of 8 gigatransfers per second
>  (GT/s), and that it would be backward compatible with existing PCI
>  Express implementations.
>
>  Though in https://en.wikipedia.org/wiki/PCI_Express#Comparison_table
>  they are said to have different encodings.
>
>  Unfortunately the specs (https://pcisig.com/specifications) are only
>  available for members.
>
> Regards,
> /Karl Hammar
>




Re: [gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread Dale
k...@aspodata.se wrote:
> Dale:
> ...
>> First, I thought cards were backward compatible?  You could stick a 3.0
>> into a 2.0 slot and it would just run as a 2.0 and vice versa.  I know
>> the mobo is 2.0.  It does recognize the drive but seems to nuke the
>> ethernet somehow.  I looked, there is no switches on the card.  I don't
>> see a way to adjust how it works or anything.
> ...
>
>  From first section of 
> https://en.wikipedia.org/wiki/PCI_Express#PCI_Express_3.0
>
>   PCI Express 3.0 Base specification revision 3.0 was made available in
>   November 2010, after multiple delays. In August 2007, PCI-SIG announced
>   that PCI Express 3.0 would carry a bit rate of 8 gigatransfers per second
>   (GT/s), and that it would be backward compatible with existing PCI
>   Express implementations.
>
>  Though in https://en.wikipedia.org/wiki/PCI_Express#Comparison_table
>  they are said to have different encodings.
>
>  Unfortunately the specs (https://pcisig.com/specifications) are only
>  available for members.
>
> Regards,
> /Karl Hammar

That's what I was thinking to, being backward compatible.  I might add,
when I did cat /proc/partitions, it listed the drive plugged into the
card.  The card seems to have worked.  Thing is, no matter what slot I
put the SATA card into, it would kill my builtin network.  When I tried
to bring it up, it said the network didn't exist.  At first I thought it
was a shared slot or something.  It did the same thing in every slot
tho.  Also, when I removed the SATA card, the network came up on the
next boot up.  That SATA card is doing something bad. 

You, or anyone, have any idea why that card would kill my network?  I
suspect the card itself is fine.  It did see the drive.  I just need the
internet to work since it may be used in a NAS rig. 

I been searching, ebay and Amazon.  I found a couple cards on Amazon
that specify PCIe v2.0.  I couldn't find any with 8 ports or more on
Ebay that didn't say 3.0.  The ones on Amazon specify in the description
that they are v2.0.  That is what I usually get.  On the card, it
doesn't have anything but PCIe wrote on it or nothing at all.  It seems
if it isn't marked, it is v2.0 or maybe v1.0 if one can find one.  If it
is v3.0, it is marked that way.  Anyone seen any cards that disagrees
with that? 

I hope someone has a clue to make this card work.  I checked the BIOS
too, couldn't find anything in there.  Might try a ethernet card and
disable the onboard network.  See if that makes the network come up at
least.  I have another card just like this one already on the way.  I
may have two cards that won't let my network work when installed.  :/  
I may also have to buy those cards off Amazon that specify v2.0. 

Open to ideas. 

Dale

:-)  :-) 



Re: [gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread karl
Dale:
...
> First, I thought cards were backward compatible?  You could stick a 3.0
> into a 2.0 slot and it would just run as a 2.0 and vice versa.  I know
> the mobo is 2.0.  It does recognize the drive but seems to nuke the
> ethernet somehow.  I looked, there is no switches on the card.  I don't
> see a way to adjust how it works or anything.
...

 From first section of https://en.wikipedia.org/wiki/PCI_Express#PCI_Express_3.0

  PCI Express 3.0 Base specification revision 3.0 was made available in
  November 2010, after multiple delays. In August 2007, PCI-SIG announced
  that PCI Express 3.0 would carry a bit rate of 8 gigatransfers per second
  (GT/s), and that it would be backward compatible with existing PCI
  Express implementations.

 Though in https://en.wikipedia.org/wiki/PCI_Express#Comparison_table
 they are said to have different encodings.

 Unfortunately the specs (https://pcisig.com/specifications) are only
 available for members.

Regards,
/Karl Hammar





[gentoo-user] PCIe version 2, 3 etc and how to know which a card is.

2024-05-20 Thread Dale
Howdy,

I bought a extra PCIe SATA expansion card.  I mostly wanted a extra.  I
have a 10 port in my main rig and thought I was buying one like that
one, in case it breaks.  When I put it in the old NAS box rig to test,
my ethernet wouldn't work.  I tried a different slot but same thing.  I
found it odd that it would recognize the hard drive plugged into the
card tho.  o_O  I shutdown the rig and pulled the card.  I was checking
the card and connector on the mobo when I noticed the card said 3.0
right where it plugs into the mobo.  Ooops. 

First, I thought cards were backward compatible?  You could stick a 3.0
into a 2.0 slot and it would just run as a 2.0 and vice versa.  I know
the mobo is 2.0.  It does recognize the drive but seems to nuke the
ethernet somehow.  I looked, there is no switches on the card.  I don't
see a way to adjust how it works or anything.

Second, what is the best way to know, from the card itself, what version
PCIe it is?  If it just says PCIe or PCIe with x1, x4, x16 or something
for those that include that info, can one assume it is 2.0?  It seems
the ones that are 3.0 are marked as such.  I don't want to buy another
card and get another one that won't work in either the NAS box or my
current main rig. At least I have cards for the new rig if I need one. 
Although I was planning to buy a x4 or x8 card with lots of ports.  I
was hoping for a speed improvement with the extra 'lanes' I think they
called.  I could use those m.2 to SATA thingys too. 

I already found pics that help me identify PCI, PCIe, x1, x2, x4,x8 and
x16 slots.  Basically, the longer it is, the larger the number.  So, I
got that.  I can't find a way to look at a card or a picture of a card
and know if it is v2.0, v3.0 or v4.0 if those exist.  I'm looking for
some guidance.  Sadly, some don't include that info in the description
of the card either. 

Thanks for any tips or tricks to know which is which. 

Dale

:-)  :-)