>>> I executed bootutil64e from Intel Ethernet Connections Boot Utility (
>>> https://downloadcenter.intel.com/download/19186 ) under Ubuntu, here is the
>>> output:
>>> 
>>>   Intel(R) Ethernet Flash Firmware Utility
>>>   BootUtil version 1.6.13.0
>>>   Copyright (C) 2003-2016 Intel Corporation
>>> 
>>>   Type BootUtil -? for help
>>> 
>>>   Port Network Address Location Series  WOL Flash Firmware                
>>> Version
>>>   ==== =============== ======== ======= === ============================= 
>>> =======
>>>     1   D017C2201F59     0:31.6 Gigabit N/A FLASH Not Present
>>> 
>>> 
>>> This made me think: if BootUtil reports that "FLASH Not Present", could it
>>> mean that NVM is not used at all and its contents is random?  If this is the
>>> case, shouldn't e1000e detect this and not test the checksum?



>> The flash and NVM are two separate items.  The flash enables things
>> like PXE booting and iSCSI whereas the NVM stores things like the
>> Network Address.

Nevertheless, it looks like someone in 2011 managed to use BootUtil to fix the 
NVM:

https://thesorcerer.wordpress.com/2011/07/01/guide-intel-82573l-gigabit-ethernet-with-ubuntu-11-04-and-fix-pxe-e05/

However, taking into account the disclaimer in the end, i do not feel like 
trying this right away.

- Alexey.

On 26 Jul 2016, at 10:08, Alexey Muranov <alexey.mura...@gmail.com> wrote:

> Alexander,
> 
> thanks for all these details.
> 
> Yes, i am mostly interested in fixing it in a permanent fashion.  Ideally i 
> would like to figure out the root cause and to find a simple procedure to 
> make ASUS B8430UA work with Linux, to put it somewhere on a wiki or 
> StackExchange.  (I also do not feel like trying to return another laptop.)  
> If i could find some documentation to demonstrate to ASUS that their system 
> is not conform and thus to convince them to take care of it on a higher 
> level, this might also be a solution.
> 
> I tried toggling "Boot > Launch PXE OpROM policy" in EFI Setup, and also 
> "Advanced > Network Stack Configuration > Network Stack > Ipv4 PXE Support", 
> but still "The NVM Checksum Is Not Valid".
> 
> As i wrote before, the first time ASUS support didn't seem to understand the 
> problem, the second time they replied that they have no tools for fixing it.  
> I shall try again.
> 
> - Alexey.
> 
> On 25 Jul 2016, at 18:26, Alexander Duyck <alexander.du...@gmail.com> wrote:
> 
>> The flash and NVM are two separate items.  The flash enables things
>> like PXE booting and iSCSI whereas the NVM stores things like the
>> Network Address.
>> 
>> One workaround that you might be able to use would be to just modify
>> your driver to skip over the loop that actually invokes the NVM check.
>> If you download the e1000e driver from e1000.sf.net, or have a kernel
>> build you can modify you could then modify the following lines so that
>> the checksum validation is skipped:
>>       /* systems with ASPM and others may see the checksum fail on the first
>>        * attempt. Let's give it a few tries
>>        */
>>       for (i = 0;; i++) {
>>               if (e1000_validate_nvm_checksum(&adapter->hw) >= 0)
>>                       break;
>>               if (i == 2) {
>>                       dev_err(&pdev->dev, "The NVM Checksum Is Not Valid\n");
>>                       err = -EIO;
>>                       goto err_eeprom;
>>               }
>>       }
>> 
>> Basically all that would need to happen is to add a 0 or false between
>> the two semicolons in the for loop.  Doing that should be enough to
>> force checksum validation to be skipped.
>> 
>> As far as fixing this in a more permanent fashion what would need to
>> happen is the NVM image would need to be update on the adapter so that
>> the NVM checksum gets rewritten.  That was why I had originally
>> suggested checking with the manufacturer on this as they should be
>> responsible for maintaining that on your system.  One thing you might
>> try doing is toggling the PXE boot settings in your BIOS to see if
>> that has any effects on the issue as I believe the NVM has to be
>> changed in such a case in order to advertise the functionality to the
>> system.
>> 
>> - Alex
>> 
>> On Sat, Jul 23, 2016 at 10:17 AM, Alexey Muranov
>> <alexey.mura...@gmail.com> wrote:
>>> I think i might have new information about my problem with I219-V under
>>> Linux, where e1000e reports "The NVM Checksum Is Not Valid".
>>> 
>>> I executed bootutil64e from Intel Ethernet Connections Boot Utility (
>>> https://downloadcenter.intel.com/download/19186 ) under Ubuntu, here is the
>>> output:
>>> 
>>>   Intel(R) Ethernet Flash Firmware Utility
>>>   BootUtil version 1.6.13.0
>>>   Copyright (C) 2003-2016 Intel Corporation
>>> 
>>>   Type BootUtil -? for help
>>> 
>>>   Port Network Address Location Series  WOL Flash Firmware                
>>> Version
>>>   ==== =============== ======== ======= === ============================= 
>>> =======
>>>     1   D017C2201F59     0:31.6 Gigabit N/A FLASH Not Present
>>> 
>>> 
>>> This made me think: if BootUtil reports that "FLASH Not Present", could it
>>> mean that NVM is not used at all and its contents is random?  If this is the
>>> case, shouldn't e1000e detect this and not test the checksum?
>>> 
>>> "BootUtil is a utility that can be used to program the PCI option ROM on the
>>> flash memory of supported Intel PCI and PCI-Express-based network adapters,
>>> and to update configurations." (
>>> https://downloadmirror.intel.com/19186/eng/bootutil.txt )
>>> It does not seem to be designed for "on-board" (OEM) Ethernet controllers,
>>> like I219-V.  Thus i do not feel like trying to manipulate the NVM with it.
>>> It is stated here
>>> https://thesorcerer.wordpress.com/2011/07/01/guide-intel-82573l-gigabit-ethernet-with-ubuntu-11-04-and-fix-pxe-e05/
>>> in Disclaimer in the last paragraph that where is no sure way to predict the
>>> interactions with others on-board components, like USB or SOUND controllers.
>>> Here in Comment 5 it is explicitly advised against running ibautil in a
>>> similar case:
>>> https://bugzilla.redhat.com/show_bug.cgi?id=459202#c5 (Comment 5)
>>> IBAUTIL is one of the predecessors of BootUtil.
>>> 
>>> Thus i do not dare trying to flash the NVM of I219 with BootUtil for PCI
>>> network adapters, but i would like to know what "FLASH Not Present" means in
>>> my case.
>>> 
>>> Thanks,
>>> 
>>> - Alexey.
>>> 
>>> 
>>> On 23 Jul 2016, at 13:15, Alexey Muranov <alexey.mura...@gmail.com> wrote:
>>> 
>>>> I have exchanged my laptop for a new one.   The online store accepted to 
>>>> exchange it because besides Ethernet under Linux, i also had problems with 
>>>> keyboard backlight under Windows.
>>>> 
>>>> The new one has no problems with keyboard backlight, but the issue with 
>>>> Ethernet is the same: under Linux i get "The NVM Checksum Is Not Valid."
>>>> 
>>>> Previously, ASUS customer support responded to me that they have not tools 
>>>> for fixing the NVM.
>>>> 
>>>> Now it looks like the NVM might not be exactly "corrupted," since i have 
>>>> the same issue after exchange.
>>>> 
>>>> Could this me a sign of incompatibility of e1000e with Intel Ethernet 
>>>> Connection I219-V?
>>>> 
>>>> Could you, please, give me some details about this checksum verification?  
>>>> Is the expected value of the checksum the same for all Ethernet 
>>>> controllers, or does the driver know about expected checksums for all 
>>>> supported models?  Or is the checksum expected value stored in the NVM?
>>>> 
>>>> - Alexey.
>>>> 
>>>> On 20 Jul 2016, at 21:21, Rustad, Mark D <mark.d.rus...@intel.com> wrote:
>>>> 
>>>>> Alexey Muranov <alexey.mura...@gmail.com> wrote:
>>>>> 
>>>>>> I wrote to Asus (my laptop maker), and they responded that they can only 
>>>>>> help with setting up the original hardware and software, and they cannot 
>>>>>> help if i have installed Linux, because the laptop was sold with 
>>>>>> Windows.  I wrote to them again explaining that it looks like there is a 
>>>>>> hardware problem.  I am waiting for an answer, but taking into account 
>>>>>> that Ethernet works under Windows 7, i imagine they can keep refusing to 
>>>>>> take care of my problem.
>>>>> 
>>>>> Possibly, unless you can get the issue escalated to a higher level of 
>>>>> support somehow. It is not a surprise that the "front line" can only deal 
>>>>> with Windows.
>>>>> 
>>>>> If they can provide a tool to modify the MAC address in the NVM, you may 
>>>>> be able to use such a tool to correct the checksum by setting a different 
>>>>> MAC address, and then setting the original MAC address back. That would 
>>>>> only work if the tool they provide properly calculates the checksum, but 
>>>>> there is at least a possibility that it would.
>>>>> 
>>>>>> Could you recommend me by any chance some tests to run under Windows and 
>>>>>> some Intel Ethernet Connection documentation to demonstrate to Asus that 
>>>>>> i have a hardware problem?
>>>>> 
>>>>> You probably won't find anything wrong in that way. The Windows driver 
>>>>> doesn't check the checksum, so if it works properly under Windows, it is 
>>>>> very likely that the only thing wrong is the checksum itself. I doubt 
>>>>> very much that there is a true hardware problem - just an incorrect 
>>>>> checksum.
>>>>> 
>>>>> Correcting the NVM checksum is the best solution, but modifying your 
>>>>> system's NVM is something best done by your vendor or by tools and 
>>>>> directions provided by your vendor. The potential for bricking the laptop 
>>>>> is the reason to be very careful with NVM issues.
>>>>> 
>>>>> If you are able and willing, something that can be tried is to modify the 
>>>>> driver to not error out on a bad checksum. If that works, it would tend 
>>>>> to confirm that the only problem is the checksum itself. There are all 
>>>>> kinds of issues with doing that so I am not strongly advocating doing 
>>>>> that but only offering it as something to try if you understand what you 
>>>>> are getting into when modifying drivers.
>>>>> 
>>>>> --
>>>>> Mark Rustad, Networking Division, Intel Corporation
>>>> 
>>> 
>>> 
>>> ------------------------------------------------------------------------------
>>> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
>>> patterns at an interface-level. Reveals which users, apps, and protocols are
>>> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
>>> J-Flow, sFlow and other flows. Make informed decisions using capacity 
>>> planning
>>> reports.http://sdm.link/zohodev2dev
>>> _______________________________________________
>>> E1000-devel mailing list
>>> E1000-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/e1000-devel
>>> To learn more about Intel&#174; Ethernet, visit 
>>> http://communities.intel.com/community/wired
> 


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to