* Finding when a chip was supported in the kernel
@ 2016-02-15 14:44 Rob Groner
2016-02-15 15:06 ` Carlo Caione
0 siblings, 1 reply; 7+ messages in thread
From: Rob Groner @ 2016-02-15 14:44 UTC (permalink / raw)
To: kernelnewbies
Is there some specific place/way I can find the specific kernel version when support for an arbitrary chip was added? An example is the Intel 82574 Ethernet chip. I'm finding that google is failing me for finding the specific kernel of inclusion. This comes up somewhat often here at work (having to determine how far back our Linux support goes), so I'm trying to find the best way to determine this.
Thank you.
Rob Groner
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20160215/78e78341/attachment.html
^ permalink raw reply [flat|nested] 7+ messages in thread
* Finding when a chip was supported in the kernel
2016-02-15 14:44 Finding when a chip was supported in the kernel Rob Groner
@ 2016-02-15 15:06 ` Carlo Caione
2016-02-15 15:43 ` Bjørn Mork
0 siblings, 1 reply; 7+ messages in thread
From: Carlo Caione @ 2016-02-15 15:06 UTC (permalink / raw)
To: kernelnewbies
On Mon, Feb 15, 2016 at 3:44 PM, Rob Groner <rgroner@rtd.com> wrote:
>
>
> Is there some specific place/way I can find the specific kernel version when
> support for an arbitrary chip was added? An example is the Intel 82574
> Ethernet chip. I?m finding that google is failing me for finding the
> specific kernel of inclusion. This comes up somewhat often here at work
> (having to determine how far back our Linux support goes), so I?m trying to
> find the best way to determine this.
git log --reverse $driver
git describe --contains $SHA
--
Carlo Caione
^ permalink raw reply [flat|nested] 7+ messages in thread
* Finding when a chip was supported in the kernel
2016-02-15 15:06 ` Carlo Caione
@ 2016-02-15 15:43 ` Bjørn Mork
2016-02-15 16:06 ` Rob Groner
0 siblings, 1 reply; 7+ messages in thread
From: Bjørn Mork @ 2016-02-15 15:43 UTC (permalink / raw)
To: kernelnewbies
Carlo Caione <carlo@caione.org> writes:
> On Mon, Feb 15, 2016 at 3:44 PM, Rob Groner <rgroner@rtd.com> wrote:
>>
>>
>> Is there some specific place/way I can find the specific kernel version when
>> support for an arbitrary chip was added? An example is the Intel 82574
>> Ethernet chip. I?m finding that google is failing me for finding the
>> specific kernel of inclusion. This comes up somewhat often here at work
>> (having to determine how far back our Linux support goes), so I?m trying to
>> find the best way to determine this.
>
> git log --reverse $driver
I often find it easier to use git blame for such stuff, looking at the
dates of code related to the chip/feature in question. At least in cases
like this where a single driver supports a number of different chips.
You'll have to verify the results with "git show" of course, in case
everything was refactored.
The 82574 is a good example (since the authors made it easy with that
comment):
1st attempt returns a code refactoring commit:
bjorn at nemi:/usr/local/src/git/linux$ git log --reverse drivers/net/ethernet/intel/e1000e/82571.c
commit dee1ad47f2ee75f5146d83ca757c1b7861c34c3b
Author: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Thu Apr 7 07:42:33 2011 -0700
intel: Move the Intel wired LAN drivers
Moves the Intel wired LAN drivers into drivers/net/ethernet/intel/ and
the necessary Kconfig and Makefile changes.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2nd attempt returns the commit adding the driver, but that specific chip
wasn't supported (a fact which might not be easy to sport using this
method):
bjorn at nemi:/usr/local/src/git/linux$ git log --reverse dee1ad47f2ee^ -- drivers/net/e1000e/82571.c
commit bc7f75fa97884d41efbfde1397b621fefb2550b4
Author: Auke Kok <auke-jan.h.kok@intel.com>
Date: Mon Sep 17 12:30:59 2007 -0700
[E1000E]: New pci-express e1000 driver (currently for ICH9 devices only)
This driver implements support for the ICH9 on-board LAN ethernet
device. The device is similar to ICH8.
The driver encompasses code to support 82571/2/3, es2lan and ICH8
devices as well, but those device IDs are disabled and will be
"lifted" from the e1000 driver over one at a time once this driver
receives some more live time.
So you still don't know when the 82574 support was added....
git blame on the other hand, gives you this immediately:
bjorn at nemi:/usr/local/src/git/linux$ git blame drivers/net/ethernet/intel/e1000e/82571.c
e78b80b1079e1 drivers/net/ethernet/intel/e1000e/82571.c (David Ertman 2014-02-04 01:56:06 +0000 1) /* Intel PRO/1000 Linux driver
[..]
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 21)
e921eb1ac411a drivers/net/ethernet/intel/e1000e/82571.c (Bruce Allan 2012-11-28 09:28:37 +0000 22) /* 82571EB Gigabit Ethernet Controller
1605927fcee41 drivers/net/e1000e/82571.c (Bruce Allan 2008-11-21 16:51:06 -0800 23) * 82571EB Gigabit Ethernet Controller (Copper)
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 24) * 82571EB Gigabit Ethernet Controller (Fiber)
ad68076e07fa0 drivers/net/e1000e/82571.c (Bruce Allan 2008-03-28 09:15:03 -0700 25) * 82571EB Dual Port Gigabit Mezzanine Adapter
ad68076e07fa0 drivers/net/e1000e/82571.c (Bruce Allan 2008-03-28 09:15:03 -0700 26) * 82571EB Quad Port Gigabit Mezzanine Adapter
ad68076e07fa0 drivers/net/e1000e/82571.c (Bruce Allan 2008-03-28 09:15:03 -0700 27) * 82571PT Gigabit PT Quad Port Server ExpressMo
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 28) * 82572EI Gigabit Ethernet Controller (Copper)
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 29) * 82572EI Gigabit Ethernet Controller (Fiber)
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 30) * 82572EI Gigabit Ethernet Controller
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 31) * 82573V Gigabit Ethernet Controller (Copper)
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 32) * 82573E Gigabit Ethernet Controller (Copper)
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 33) * 82573L Gigabit Ethernet Controller
4662e82b2cb41 drivers/net/e1000e/82571.c (Bruce Allan 2008-08-26 18:37:06 -0700 34) * 82574L Gigabit Network Connection
8c81c9c315b7e drivers/net/e1000e/82571.c (Alexander Duyck 2009-03-19 01:12:27 +0000 35) * 82583V Gigabit Network Connection
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 36) */
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 37)
bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17 12:30:59 -0700 38) #include "e1000.h"
And you can verify by looking at the commit:
bjorn at nemi:/usr/local/src/git/linux$ git show 4662e82b2cb41
commit 4662e82b2cb41c60826e50474dd86dd5c6372b0c
Author: Bruce Allan <bruce.w.allan@intel.com>
Date: Tue Aug 26 18:37:06 2008 -0700
e1000e: add support for new 82574L part
This new part has the same feature set as previous parts with the addition
of MSI-X support.
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
[etc]
I'll admit that this example was extremely easy. Most of the time you'll
have to figure out the relevant commits by looking at code lines related
to that chip. But it's still easier to look at git blame than the log
if the support was added to an existing driver.
Bj?rn
^ permalink raw reply [flat|nested] 7+ messages in thread
* Finding when a chip was supported in the kernel
2016-02-15 15:43 ` Bjørn Mork
@ 2016-02-15 16:06 ` Rob Groner
2016-02-15 17:04 ` Bjørn Mork
2016-02-16 3:37 ` Valdis.Kletnieks at vt.edu
0 siblings, 2 replies; 7+ messages in thread
From: Rob Groner @ 2016-02-15 16:06 UTC (permalink / raw)
To: kernelnewbies
> -----Original Message-----
> From: Bj?rn Mork [mailto:bjorn at mork.no]
> Sent: Monday, February 15, 2016 10:44 AM
> To: Carlo Caione <carlo@caione.org>
> Cc: Rob Groner <rgroner@RTD.com>; kernelnewbies at kernelnewbies.org
> Subject: Re: Finding when a chip was supported in the kernel
>
> Carlo Caione <carlo@caione.org> writes:
>
> > On Mon, Feb 15, 2016 at 3:44 PM, Rob Groner <rgroner@rtd.com> wrote:
> >>
<snip>
>
> git blame on the other hand, gives you this immediately:
>
> bjorn at nemi:/usr/local/src/git/linux$ git blame
> drivers/net/ethernet/intel/e1000e/82571.c
> e78b80b1079e1 drivers/net/ethernet/intel/e1000e/82571.c (David Ertman
> 2014-02-04 01:56:06 +0000 1) /* Intel PRO/1000 Linux driver
> [..]
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 21)
> e921eb1ac411a drivers/net/ethernet/intel/e1000e/82571.c (Bruce Allan
> 2012-11-28 09:28:37 +0000 22) /* 82571EB Gigabit Ethernet Controller
> 1605927fcee41 drivers/net/e1000e/82571.c (Bruce Allan 2008-11-
> 21 16:51:06 -0800 23) * 82571EB Gigabit Ethernet Controller (Copper)
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 24) * 82571EB Gigabit Ethernet Controller (Fiber)
> ad68076e07fa0 drivers/net/e1000e/82571.c (Bruce Allan 2008-03-
> 28 09:15:03 -0700 25) * 82571EB Dual Port Gigabit Mezzanine Adapter
> ad68076e07fa0 drivers/net/e1000e/82571.c (Bruce Allan 2008-03-
> 28 09:15:03 -0700 26) * 82571EB Quad Port Gigabit Mezzanine Adapter
> ad68076e07fa0 drivers/net/e1000e/82571.c (Bruce Allan 2008-03-
> 28 09:15:03 -0700 27) * 82571PT Gigabit PT Quad Port Server ExpressMo
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 28) * 82572EI Gigabit Ethernet Controller (Copper)
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 29) * 82572EI Gigabit Ethernet Controller (Fiber)
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 30) * 82572EI Gigabit Ethernet Controller
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 31) * 82573V Gigabit Ethernet Controller (Copper)
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 32) * 82573E Gigabit Ethernet Controller (Copper)
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 33) * 82573L Gigabit Ethernet Controller
> 4662e82b2cb41 drivers/net/e1000e/82571.c (Bruce Allan 2008-08-
> 26 18:37:06 -0700 34) * 82574L Gigabit Network Connection
> 8c81c9c315b7e drivers/net/e1000e/82571.c (Alexander Duyck 2009-
> 03-19 01:12:27 +0000 35) * 82583V Gigabit Network Connection
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 36) */
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 37)
> bc7f75fa97884 drivers/net/e1000e/82571.c (Auke Kok 2007-09-17
> 12:30:59 -0700 38) #include "e1000.h"
>
>
>
> And you can verify by looking at the commit:
>
>
> bjorn at nemi:/usr/local/src/git/linux$ git show 4662e82b2cb41 commit
> 4662e82b2cb41c60826e50474dd86dd5c6372b0c
> Author: Bruce Allan <bruce.w.allan@intel.com>
> Date: Tue Aug 26 18:37:06 2008 -0700
>
> e1000e: add support for new 82574L part
>
> This new part has the same feature set as previous parts with the addition
> of MSI-X support.
>
> Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
>
> [etc]
>
>
>
> I'll admit that this example was extremely easy. Most of the time you'll have
> to figure out the relevant commits by looking at code lines related to that
> chip. But it's still easier to look at git blame than the log if the support was
> added to an existing driver.
>
Hmm...I don't think I share the idea that it was extremely easy. :) But it is something I can try at least, assuming I can get at least as far as figuring out which driver file a particular chip gets its support from. With Intel chips, that IS pretty easy.
Using the blame I see that it gives a date and a commit reference. How do I then correlate that to the kernel version where it first showed up? I'm assuming there's a git command for showing that.
Rob
^ permalink raw reply [flat|nested] 7+ messages in thread
* Finding when a chip was supported in the kernel
2016-02-15 16:06 ` Rob Groner
@ 2016-02-15 17:04 ` Bjørn Mork
2016-02-15 17:12 ` Rob Groner
2016-02-16 3:37 ` Valdis.Kletnieks at vt.edu
1 sibling, 1 reply; 7+ messages in thread
From: Bjørn Mork @ 2016-02-15 17:04 UTC (permalink / raw)
To: kernelnewbies
Rob Groner <rgroner@RTD.com> writes:
> Hmm...I don't think I share the idea that it was extremely easy. :)
OK :)
> But it is something I can try at least, assuming I can get at least as
> far as figuring out which driver file a particular chip gets its
> support from. With Intel chips, that IS pretty easy.
>
> Using the blame I see that it gives a date and a commit reference.
> How do I then correlate that to the kernel version where it first
> showed up? I'm assuming there's a git command for showing that.
That was the other command Carlo gave, which I failed to quote. Sorry
about that. Carlo wrote:
> git describe --contains $SHA
e.g
bjorn at nemi:/usr/local/src/git/linux$ git describe --contains 4662e82b2cb41
v2.6.28-rc1~717^2~323
Bj?rn
^ permalink raw reply [flat|nested] 7+ messages in thread
* Finding when a chip was supported in the kernel
2016-02-15 17:04 ` Bjørn Mork
@ 2016-02-15 17:12 ` Rob Groner
0 siblings, 0 replies; 7+ messages in thread
From: Rob Groner @ 2016-02-15 17:12 UTC (permalink / raw)
To: kernelnewbies
> -----Original Message-----
> From: Bj?rn Mork [mailto:bjorn at mork.no]
> Sent: Monday, February 15, 2016 12:05 PM
> To: Rob Groner <rgroner@RTD.com>
> Cc: Carlo Caione <carlo@caione.org>; kernelnewbies at kernelnewbies.org
> Subject: Re: Finding when a chip was supported in the kernel
>
> Rob Groner <rgroner@RTD.com> writes:
>
> > Hmm...I don't think I share the idea that it was extremely easy. :)
>
> OK :)
>
> > But it is something I can try at least, assuming I can get at least as
> > far as figuring out which driver file a particular chip gets its
> > support from. With Intel chips, that IS pretty easy.
> >
> > Using the blame I see that it gives a date and a commit reference.
> > How do I then correlate that to the kernel version where it first
> > showed up? I'm assuming there's a git command for showing that.
>
> That was the other command Carlo gave, which I failed to quote. Sorry about
> that. Carlo wrote:
>
> > git describe --contains $SHA
>
> e.g
>
> bjorn at nemi:/usr/local/src/git/linux$ git describe --contains 4662e82b2cb41
> v2.6.28-rc1~717^2~323
>
Great, thank you!
Rob
^ permalink raw reply [flat|nested] 7+ messages in thread
* Finding when a chip was supported in the kernel
2016-02-15 16:06 ` Rob Groner
2016-02-15 17:04 ` Bjørn Mork
@ 2016-02-16 3:37 ` Valdis.Kletnieks at vt.edu
1 sibling, 0 replies; 7+ messages in thread
From: Valdis.Kletnieks at vt.edu @ 2016-02-16 3:37 UTC (permalink / raw)
To: kernelnewbies
On Mon, 15 Feb 2016 16:06:54 +0000, Rob Groner said:
> > bjorn at nemi:/usr/local/src/git/linux$ git show 4662e82b2cb41
> > commit 4662e82b2cb41c60826e50474dd86dd5c6372b0c
> > Author: Bruce Allan <bruce.w.allan@intel.com>
> > Date: Tue Aug 26 18:37:06 2008 -0700
> Using the blame I see that it gives a date and a commit reference. How do I
> then correlate that to the kernel version where it first showed up? I'm
> assuming there's a git command for showing that.
git tag --contains 4662e82b2cb41
should do the job for you.
Note: They're sorted lexically, not in release order - so v3.21 through v3.29
are hiding between v3.2 and v3.3,
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 848 bytes
Desc: not available
Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20160215/07a2da84/attachment.bin
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-02-16 3:37 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-15 14:44 Finding when a chip was supported in the kernel Rob Groner
2016-02-15 15:06 ` Carlo Caione
2016-02-15 15:43 ` Bjørn Mork
2016-02-15 16:06 ` Rob Groner
2016-02-15 17:04 ` Bjørn Mork
2016-02-15 17:12 ` Rob Groner
2016-02-16 3:37 ` Valdis.Kletnieks at vt.edu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).