> -----Original Message----- > From: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> > Sent: Thursday, March 10, 2022 12:55 AM > To: Manish Chopra <manishc@xxxxxxxxxxx> > Cc: Paul Menzel <pmenzel@xxxxxxxxxxxxx>; kuba@xxxxxxxxxx; > netdev@xxxxxxxxxxxxxxx; Ariel Elior <aelior@xxxxxxxxxxx>; Alok Prasad > <palok@xxxxxxxxxxx>; Prabhakar Kushwaha <pkushwaha@xxxxxxxxxxx>; > David S. Miller <davem@xxxxxxxxxxxxx>; Greg KH > <gregkh@xxxxxxxxxxxxxxxxxxx>; stable@xxxxxxxxxxxxxxx; > it+netdev@xxxxxxxxxxxxx; regressions@xxxxxxxxxxxxxxx > Subject: Re: [EXT] Re: [PATCH v2 net-next 1/2] bnx2x: Utilize firmware > 7.13.21.0 > > On Wed, Mar 9, 2022 at 11:22 AM Manish Chopra <manishc@xxxxxxxxxxx> > wrote: > > > > This move was intentional, as follow up driver flow > > [bnx2x_compare_fw_ver()] needs to know which exact FW version (newer > > or older fw version which will be decided at run time now) the function is > supposed to be run with in order to compare against already loaded FW on > the adapter to decide on function probe/init failure (as opposed to earlier > where driver was always stick to the one specific/fixed firmware version). So > for that reason I chose the right place to invoke the bnx2x_init_firmware() > during the probe early instead of later stage. > > .. but since that fundamentally DOES NOT WORK, we'll clearly have to revert > that change. > > Firmware loading cannot happen early in boot. End of story. You need to delay > firmware loading until the device is actually opened. > > Linus Hello Linus, This has not changed anything functionally from driver/device perspective, FW is still being loaded only when device is opened. bnx2x_init_firmware() [I guess, perhaps the name is misleading] just request_firmware() to prepare the metadata to be used when device will be opened. Thanks, Manish