e1000: fix usage of multiple nics

When using multiple e1000 network interface netboot would fail if we
try to boot from the first interface.

During first e1000 device initialization, m_e1k.m_baseaddr_u64 (static
variable) is set to read/write pci registers. Later the second device
does process. When first e1000 driver tries netboot, it has an
assumption that m_e1k.m_baseaddr_u64 is correct, which is not the
case.

Ensure reinitialization for m_e1k.m_baseaddr_u64 when open interface
of device is called.

Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>
Reviewed-by: Thomas Huth <thuth@linux.vnet.ibm.com>
version: update to 20140415

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>