mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* e1000 driver hangs during probe
@ 2017-03-09 21:18 Uwe Kleine-König
  2017-03-10  4:04 ` Andrey Smirnov
  0 siblings, 1 reply; 6+ messages in thread
From: Uwe Kleine-König @ 2017-03-09 21:18 UTC (permalink / raw)
  To: barebox; +Cc: Andrey Smirnov

Hello,

I work with an i.MX6 based hardware that has an i210 pcie device with
barebox 2016.11.0 (but there didn't happen anything relevant since them
if I'm not mistaken). When enabling all necessary things to make the
e1000 bind, the driver seems to hang. The problem is the following code
in e1000_get_hw_eeprom_semaphore():

        /* Get the FW semaphore. */
        timeout = hw->eeprom.word_size + 1;
        while (timeout) {
                swsm = e1000_read_reg(hw, E1000_SWSM);
                swsm |= E1000_SWSM_SWESMBI;
                e1000_write_reg(hw, E1000_SWSM, swsm);
                /* if we managed to set the bit we got the semaphore. */
                swsm = e1000_read_reg(hw, E1000_SWSM);
                if (swsm & E1000_SWSM_SWESMBI)
                        break;

                udelay(50);
                timeout--;
        }

together with the fact that hw->eeprom.word_size is either 0x200000 or
0x400000. (I saw both values already in three runs) This value is setup
in e1000_init_eeprom_params() in the hw->mac_type == e1000_igb case.

When waiting log enough the code finally terminates with a failure.

In my case there is an 8Mb-Flash equipped on NVM_* that isn't programmed
yet. (M25PE80, Page size: 256 bytes, Subsector erase: 4KB, Sector erase: 64KB,
Bulk erase: 8Mb)

Is someone able to shed some light on where the problem is?

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-03-10 13:10 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-09 21:18 e1000 driver hangs during probe Uwe Kleine-König
2017-03-10  4:04 ` Andrey Smirnov
2017-03-10  9:10   ` Uwe Kleine-König
2017-03-10  9:13     ` Uwe Kleine-König
2017-03-10  9:20     ` Lucas Stach
2017-03-10 13:09       ` Andrey Smirnov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox