public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Kay Sievers <kay.sievers@vrfy.org>
To: David Woodhouse <dwmw2@infradead.org>
Cc: Tigran Aivazian <tigran@aivazian.fsnet.co.uk>,
	Valdis.Kletnieks@vt.edu,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org, jonathan@jonmasters.org,
	Shaohua Li <shaohua.li@intel.com>,
	greg@kroah.com
Subject: Re: Intel Microcode loader, tg3 driver, and the -rc8-mmotd New World Order firmware...
Date: Thu, 03 Jul 2008 12:22:34 +0200	[thread overview]
Message-ID: <1215080554.9721.62.camel@linux.site> (raw)
In-Reply-To: <1215077028.10393.497.camel@pmac.infradead.org>

On Thu, 2008-07-03 at 10:23 +0100, David Woodhouse wrote:
> On Thu, 2008-07-03 at 07:44 +0100, Tigran Aivazian wrote:
> > On Thu, 3 Jul 2008 Valdis.Kletnieks@vt.edu wrote:
> > 
> > > On Thu, 03 Jul 2008 07:17:16 BST, Tigran Aivazian said:
> > >> Hi Valdis,
> > >>
> > >> On Wed, 2 Jul 2008 Valdis.Kletnieks@vt.edu wrote:
> > >>
> > >>> I built the -rc8-mmotd kernel, and built it with 'CONFIG_FIRMWARE_IN_KERNEL
> > > =n'.
> > >>> Lo and behold, the microcode.ko was now doing a request_firmware for
> > >>> 'intel-ucode/06-0f-06' (which makes sense, the Core2 Duo in this laptop is
> > >>> family 6, model 15, stepping 6).  However, what I had in /lib/firmware was
> > >>> the Intel-distributed 'microcode.dat' with updates for all the CPUs (which
> > >>> used to work in times past).
> > >>>
> > >>> What's the magic incantation to take the microcode.dat and create something
> > >>> that the firmware driver is willing to use, or is this all borked up and
> > >>> I need to do a major rethink or fix my config?
> > >>
> > >> that's because it expects the Intel-supplied microcode data and you are
> > >> using the old style microcode.dat data.
> > >
> > > I fed it the stuff I downloaded today from this URL:
> > >
> > > http://downloadcenter.intel.com/filter_results.aspx?strTypes=all&ProductID=2643&OSFullName=Linux*〈=eng&strOSs=39&submit=Go!
> > >
> > > which gets me a microcode-20080401.dat that does the same thing.  Is there
> > > some *other* Intel-supplied microcode data I should be getting instead?
> > 
> > Oh, sorry, I assumed that Intel distribute the data in the format that 
> > driver expects.
> 
> I think the kernel _does_ manage to extract just the part it wants from
> the data, but it expects the data in binary form. Drop the attached
> files in /lib/udev/microcode.sh and /etc/udev/rules.d/51-microcode.rules
> respectively. (There's probably a better way to handle this kind of
> thing by putting hooks in firmware.sh rather than using a special rule
> which overrides it?)
> 
> The recent firmware changes haven't modified this. The important change
> seems to have been here (in 2006):
> 
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=a30a6a2c

This commit states:
  "so we don't need the application 'microcode_ctl' to assist".
Seems the kernel code extracts the right section, in the all-in-one
file, for the actual CPU:
  while ((offset = get_next_ucode_from_buffer(&mc, buf, size, offset))

So, maybe a:
  # rewrite firmware file name to all-in-one Intel CPU microcode data file
  SUBSYSTEM=="firmware", ENV{FIRMWARE}=="intel-ucode/*", ENV{FIRMWARE}="intel-ucode/microcode.dat"
would be enough?

Thanks,
Kay


  parent reply	other threads:[~2008-07-03 12:43 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-03  1:32 Intel Microcode loader, tg3 driver, and the -rc8-mmotd New World Order firmware Valdis.Kletnieks
2008-07-03  1:43 ` Andrew Morton
2008-07-03  6:17 ` Tigran Aivazian
2008-07-03  6:35   ` Valdis.Kletnieks
2008-07-03  6:44     ` Tigran Aivazian
2008-07-03  9:23       ` David Woodhouse
2008-07-03 10:17         ` Valdis.Kletnieks
2008-07-03 10:30           ` David Woodhouse
2008-07-03 11:34             ` Valdis.Kletnieks
2008-07-03 12:21               ` David Woodhouse
2008-07-03 12:41                 ` Kay Sievers
2008-07-03 12:45                   ` David Woodhouse
2008-07-03 13:03                     ` Kay Sievers
2008-07-03 13:26                       ` David Woodhouse
2008-07-03 13:54                       ` Valdis.Kletnieks
2008-07-03 15:23                         ` David Woodhouse
2008-07-03 13:48                 ` Valdis.Kletnieks
2008-07-03 10:22         ` Kay Sievers [this message]
2008-07-03 10:42           ` David Woodhouse
2008-07-03 11:32             ` Kay Sievers
2008-07-03  9:24       ` Giacomo A. Catenazzi
2008-07-03 13:56         ` Arjan van de Ven
2008-07-03 15:54           ` David Woodhouse
2008-07-03 16:22             ` Giacomo A. Catenazzi

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=1215080554.9721.62.camel@linux.site \
    --to=kay.sievers@vrfy.org \
    --cc=Valdis.Kletnieks@vt.edu \
    --cc=akpm@linux-foundation.org \
    --cc=dwmw2@infradead.org \
    --cc=greg@kroah.com \
    --cc=jonathan@jonmasters.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=shaohua.li@intel.com \
    --cc=tigran@aivazian.fsnet.co.uk \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox