<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">We have tens of thousands of systems and tens of data centers across multiple continents.  We can’t “just switch to ipxe”.  The pxelinux environment has a massive
 amount of inertia and we can’t just toss a new network bootloader into the stack without massive amounts of disruption to the environment.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">iPXE is almost certainly superior to pxelinux for the very reasons we’re using it for  Windows images.  But Windows imaging is a tiny fraction of the network
 installation we do.  The vast, VAST majority is Linux and ESX installs, which all work just fine with pxelinux.  “If it ain’t broke, don’t fix it”.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Courier New";color:#1F497D">----<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Courier New";color:#1F497D">Paul Krizak              office: AF-250D<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Courier New";color:#1F497D">Staff IT Engineer, UCM   desk: 858-651-2467<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Courier New";color:#1F497D">Qualcomm, Inc            cell: 512-791-0686<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> Andreas Fink [mailto:afink@list.fink.org]
<br>
<b>Sent:</b> Wednesday, February 03, 2016 12:02 PM<br>
<b>To:</b> Krizak, Paul<br>
<b>Cc:</b> Christian Nilsson; Doose, Michael; ipxe-devel@lists.ipxe.org<br>
<b>Subject:</b> Re: [ipxe-devel] Request for Network support for HP Elitebook 745 G3 (Broadcom NetXtreme Gigabit Ethernet Plus)<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">why not simply booting ipxe directly (instead of pxelinux) and duplicate similar entries for your linux boot? at the end its a kernel, a initrd and some command line parameters for linux. You can do all this in ipxe.<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">Am 03.02.2016 um 20:59 schrieb Krizak, Paul <<a href="mailto:pkrizak@qualcomm.com">pkrizak@qualcomm.com</a>>:<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">The build process we use is, (from src dir)<br>
<br>
1. make<br>
2. Edit /tmp/menu.ipxe.  Example:<br>
<br>
#!ipxe<br>
set use-cached 1<br>
dhcp net0<br>
kernel <a href="http://sdimg01.qualcomm.com/osd/wimboot">http://sdimg01.qualcomm.com/osd/wimboot</a><br>
initrd <a href="http://sdimg01.qualcomm.com/osd/sccmfiles/BOOTMGR.EXE">http://sdimg01.qualcomm.com/osd/sccmfiles/BOOTMGR.EXE</a>  BOOTMGR.EXE<br>
initrd <a href="http://sdimg01.qualcomm.com/osd/sccmfiles/BCD">http://sdimg01.qualcomm.com/osd/sccmfiles/BCD</a>      BCD<br>
initrd <a href="http://sdimg01.qualcomm.com/osd/sccmfiles/BOOT.SDI">http://sdimg01.qualcomm.com/osd/sccmfiles/BOOT.SDI</a> BOOT.SDI<br>
initrd <a href="http://sdimg01.qualcomm.com/osd/sccmfiles/BOOT.WIM">http://sdimg01.qualcomm.com/osd/sccmfiles/BOOT.WIM</a> BOOT.WIM<br>
boot<br>
<br>
3. make bin/ipxe.kkpxe EMBED=/tmp/menu.ipxe<br>
4. cp bin/ipxe.kkpxe /path/to/tftp/root/ipxe-sdimg01.kkpxe<br>
<br>
The pxelinux menu entry looks like this:<br>
<br>
LABEL Windows Imaging sdimg01<br>
 MENU LABEL Windows Imaging - sdimg01<br>
 PXE targets/windows/ipxe/ipxe-sdimg01.kkpxe<br>
<br>
I followed this same process after editing tg3.c.  The first "make" did indeed rebuild the ipxe core due to tg3.c being updated.  The kkpxe build also rebuilt embedded.c and generated a new ipxe.kkpxe binary.  However, this new binary still does not appear
 to recognize the NIC.<br>
<br>
We can try the UNDI-only build, but we'll have to go back and re-qualify a boatload of hardware that currently works fine with the kkpxe solution.  It would be a lot easier for us if we could get kkpxe to work.<br>
<br>
----<br>
Paul Krizak              office: AF-250D<br>
Staff IT Engineer, UCM   desk: 858-651-2467<br>
Qualcomm, Inc            cell: 512-791-0686<br>
<br>
<br>
-----Original Message-----<br>
From: Christian Nilsson [<a href="mailto:nikize@gmail.com">mailto:nikize@gmail.com</a>]
<br>
Sent: Wednesday, February 03, 2016 11:49 AM<br>
To: Krizak, Paul<br>
Cc: Doose, Michael; <a href="mailto:ipxe-devel@lists.ipxe.org">ipxe-devel@lists.ipxe.org</a><br>
Subject: Re: [ipxe-devel] Request for Network support for HP Elitebook 745 G3 (Broadcom NetXtreme Gigabit Ethernet Plus)<br>
<br>
On Wed, Feb 3, 2016 at 8:34 PM, Krizak, Paul <<a href="mailto:pkrizak@qualcomm.com">pkrizak@qualcomm.com</a>> wrote:<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">I am fairly certain I'm using the latest version:<br>
<br>
--- /usr2/pkrizak/git/ipxe<br>
[pkrizak@melchior]$ git remote -v show<br>
origin  <a href="git://git.ipxe.org/ipxe.git">git://git.ipxe.org/ipxe.git</a> (fetch)<br>
origin  <a href="git://git.ipxe.org/ipxe.git">git://git.ipxe.org/ipxe.git</a> (push)<br>
<br>
--- /usr2/pkrizak/git/ipxe<br>
[pkrizak@melchior]$ git pull<br>
Already up-to-date.<br>
<br>
--- /usr2/pkrizak/git/ipxe<br>
[pkrizak@melchior]$ git rev-parse HEAD<br>
d0bfd830e4e5ddd1015dda66833a99b068b6a519<o:p></o:p></p>
</blockquote>
<p class="MsoNormal"><br>
Yes that's the latest one, goodie ;)<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><br>
If you're referring to the build number in some of the screenshots earlier in this thread -- you're right, that was the older build.  We actually did build with the newer version and got the same results (but did not post newer screencaps that show the newer
 build version).<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">Why kkpxe?<o:p></o:p></p>
</blockquote>
</blockquote>
<p class="MsoNormal"><br>
We have a standard infrastructure based on pxelinux, so we are chain-loading iPXE specifically for Windows installs.  Linux and ESX installs go through our standard pxelinux stuff.  But it all has to live on the same network, so pxelinux is the "primary" bootloader.<br>
<br>
I did not develop the ipxe setup for Windows -- it was handed to me in this state.  I don't know why we use kkpxe versus other types of bootloaders, except for "that's how it was set up".  Is there a better way to get HTTP-based image downloads to work without
 needing kkpxe?<o:p></o:p></p>
</blockquote>
<p class="MsoNormal"><br>
<br>
Ok yes, use undionly.kpxe (single k) that should work for all nics<br>
that are chained (unless The underlaying UNDI implementation is buggy)<br>
<br>
Having pxelinux in the boot path is sometimes causing an issue so you<br>
should try without it, for example by building the .usb version<br>
instead and booting directly from a usb stick.<br>
<br>
<a href="http://forum.ipxe.org/showthread.php?tid=6989">http://forum.ipxe.org/showthread.php?tid=6989</a><br>
I'm guessing here, but kkpxe might actually be part of your issue.<br>
<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><br>
The key feature of ipxe that we're taking advantage of is its ability to use HTTP to retrieve a disk image, rather than TFTP.  With Windows installs, we have to download a multi-hundred-MB image, which takes FOREVER over TFTP. Over HTTP it is much faster and
 more reliable (since it uses TCP instead of UDP).<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">I'm quite sure I have added that to a build myself.<o:p></o:p></p>
</blockquote>
</blockquote>
<p class="MsoNormal"><br>
Maybe it's still sitting in a feature branch and needs to be merged to master?  It's definitely not in the code at the master branch.<o:p></o:p></p>
</blockquote>
<p class="MsoNormal"><br>
<br>
It was a one time build and was never sent upstream. (I'm just a iPXE<br>
user like yourself)<br>
<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
I edited tg3.c and added the PCI_ROM macro, then recompiled.  Same behavior as before.  And I double-checked the build number, and it's the newest one (d0bf...)<br>
<br>
<o:p></o:p></p>
</blockquote>
<p class="MsoNormal"><br>
<br>
What did you build? please try: make bin/14e41687.pxe DEBUG=tg3<br>
Or if you chain from pxelinux you might want make bin/14e41687.lkrn<br>
DEBUG=tg3 instead<br>
<br>
undionly versions will never include specific nic versions, so it<br>
won't make any difference.<br>
<br>
<br>
<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">----<br>
Paul Krizak              office: AF-250D<br>
Staff IT Engineer, UCM   desk: 858-651-2467<br>
Qualcomm, Inc            cell: 512-791-0686<br>
<br>
<br>
-----Original Message-----<br>
From: Christian Nilsson [<a href="mailto:nikize@gmail.com">mailto:nikize@gmail.com</a>]<br>
Sent: Wednesday, February 03, 2016 11:07 AM<br>
To: Doose, Michael; Krizak, Paul<br>
Cc: <a href="mailto:ipxe-devel@lists.ipxe.org">ipxe-devel@lists.ipxe.org</a><br>
Subject: Re: [ipxe-devel] Request for Network support for HP Elitebook 745 G3 (Broadcom NetXtreme Gigabit Ethernet Plus)<br>
<br>
Hi,<br>
Sorry about 14e4-1687 not being included, let me return to that further down...<br>
<br>
On Tue, Feb 2, 2016 at 10:07 PM, Doose, Michael <<a href="mailto:mdoose@qualcomm.com">mdoose@qualcomm.com</a>> wrote:<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">Christian,<br>
<br>
Thanks so much for the response, I apologize for not better explaining our situation. I hope the information below helps make things more clear. I work on the Windows side and have a Unix engineer helping with the updates on the pxe/ipxe side.<br>
<br>
We are now using iPXE 1.0.0+ (8f01). I have reached out to have the unit folks check the niclist.pl for the Broadcom NIC.<o:p></o:p></p>
</blockquote>
<p class="MsoNormal"><br>
That is very old!<br>
commit 8f0173b5c8ac6de9e9fa8115e37357c2aeb88101<br>
Date:   Mon Dec 9 15:32:42 2013 +0000<br>
<br>
Please use latest git master, cloning from<br>
<a href="https://git.ipxe.org/ipxe.git">https://git.ipxe.org/ipxe.git</a> is recommended<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><br>
The error warning received was the following which referenced Legacy: "iPXE initializing devices...WARNING: Using legacy NIC wrapper on 00:00:00:00:00:00"<br>
<br>
On all our other systems we see: "iPXE initializing devices...ok"<br>
<br>
We are using .kkpxe with WIMBOOT and BOOTMGR.EXE, no EFI stuff. We are also chain loading from SYSLINUX PXE to iPXE<o:p></o:p></p>
</blockquote>
<p class="MsoNormal"><br>
Why kkpxe?, and what's your boot path/steps up to the above "Using<br>
legacy NIC wrapper" message?<br>
For example is it loaded from USB or is pxelinux involved somewhere etc.<br>
Are you using ipxe.* or undionly.*<br>
if you use undionly.kpxe (note not kkpxe) then ipxe will use the<br>
BIOS/Firmware drivers, you could in that case try to upgrade BIOS.<br>
if you use ipxe.pxe (don't use kpxe when using this variant) then it<br>
will only use ipxes native drivers, since none exist that won't work,<br>
but it shouldn't try to detect a non existing nic.<br>
Or build bin/14e41687.pxe (see below for info about adding support)<br>
Another alternative would be to test with .usb version on a USB stick:<br>
<a href="http://ipxe.org/download#using_a_boot_cd-rom_or_usb_key">http://ipxe.org/download#using_a_boot_cd-rom_or_usb_key</a><br>
<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><br>
In BIOS we have configured legacy mode:<br>
Configure Legacy Support and Secure boot : "Legacy Support Enable and Secure Boot Disable"<br>
<br>
-Mike<o:p></o:p></p>
</blockquote>
<p class="MsoNormal"><br>
Now about The missing 14e4-1687, I'm quite sure I have added that to a<br>
build myself.<br>
You could try to add it to tg3.c and see if it works<br>
<br>
PCI_ROM(0x14e4, 0x1687, "14e4-1687", "14e4-1687", 0),<br>
or patch at: <a href="http://ur1.ca/oh6r6">http://ur1.ca/oh6r6</a><br>
<br>
If it does not work then build with debugging enabled and see if that<br>
gives anything:<br>
make bin/14e41687.pxe DEBUG=tg3<br>
This will enable the DBG statements in the tg3.c file<br>
for even more debug output use DEBUG=tg3,tg3_hw,tg3_phy<br>
<br>
If it works, it would be appriciated if you could run thru the<br>
testlist at <a href="http://ipxe.org/dev/driver">http://ipxe.org/dev/driver</a><br>
If everything passes then we can add it to the main repo (it will<br>
probably be added if it works to boot with since it's better then<br>
nothing, but the more tested the better)<br>
<br>
/Christian<br>
<br>
<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><br>
-----Original Message-----<br>
From: Christian Nilsson [<a href="mailto:nikize@gmail.com">mailto:nikize@gmail.com</a>]<br>
Sent: Tuesday, February 02, 2016 11:17 AM<br>
To: Doose, Michael <<a href="mailto:mdoose@qualcomm.com">mdoose@qualcomm.com</a>><br>
Cc: <a href="mailto:ipxe-devel@lists.ipxe.org">ipxe-devel@lists.ipxe.org</a><br>
Subject: Re: [ipxe-devel] Request for Network support for HP Elitebook 745 G3 (Broadcom NetXtreme Gigabit Ethernet Plus)<br>
<br>
On Tue, Feb 2, 2016 at 7:48 PM, Doose, Michael <<a href="mailto:mdoose@qualcomm.com">mdoose@qualcomm.com</a>> wrote:<br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal">Hey team,<br>
<br>
I pulled down the latest build this morning to try and add support for<br>
the new HP Elitebook 745 G3 (AMD) based notebook, but it is still<br>
defaulting to the Legacy and failing with all zeroes as the Mac Address.<br>
<br>
This unit runs a “Broadcom NetXtreme Gigabit Ethernet Plus” LAN<br>
Adapter. Is there anything you can suggest to try and add support for this unit?<br>
<br>
Thank you!<br>
<br>
Misc Hardware Info:<br>
<br>
Hardware IDs:<br>
PCI\VEN_14E4&DEV_1687<o:p></o:p></p>
</blockquote>
<p class="MsoNormal"><br>
Hi,<br>
<br>
The 14e4-1687 have native supported in ipxe and should work, the first thing to check in cases like this is the niclist that can be generated by niclist.pl in the util directory.<br>
<br>
What do you mean by Legacy? Assuming you are using the latest git master, what are your build command and which ipxe file are you using?<br>
legacy might mean undionly.kpxe which do not have any native drivers in it. you need ipxe.pxe or ipxe.efi depending on platform, you could also build 14e41687.pxe/.efi to only support the specific nic.<br>
<br>
Your issues might also be related to buggy HP firmware:<br>
<a href="http://lists.ipxe.org/pipermail/ipxe-devel/2015-November/004476.html">http://lists.ipxe.org/pipermail/ipxe-devel/2015-November/004476.html</a><br>
<br>
Hope it helps, otherwise you can follow some of the steps described in the above email thread and see if that gets you any further.<br>
<br>
/Christian<o:p></o:p></p>
</blockquote>
</blockquote>
<p class="MsoNormal">_______________________________________________<br>
ipxe-devel mailing list<br>
<a href="mailto:ipxe-devel@lists.ipxe.org">ipxe-devel@lists.ipxe.org</a><br>
<a href="https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel">https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel</a><o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Courier New"">Andreas Fink</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Courier New"">DataCell ehf, Backbone ehf, Cajutel Inc, Alisanus GmbH</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Courier New"">------------------------------------------------------------------</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Courier New"">c/o Alisanus GmbH Clarastreasse 3, 4058 Basel, Switzerland</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Courier New"">E-Mail:
<a href="mailto:andreas@fink.org">andreas@fink.org</a> <a href="https://www.fink.org">
https://www.fink.org</a></span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Courier New"">Mobile: +41-78-6677333 Office: +41 61 6666330</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Courier New"">Skype: andreasfink    Jabber/XMPP:
<a href="mailto:andreas@fink.org">andreas@fink.org</a> ICQ: 8239353</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Courier New"">------------------------------------------------------------------</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</div>
</body>
</html>