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