> Loading a firmware file should not be mandatory, as devices > could work with an eeprom firmware, if available. > > Yet, using the eeprom firmware could lead into unpredictable > results, so the best is to warn about that. As there is no proof of an EEPROM being involved in any of that, but strong evidence that all these devices actually have an embedded firmware ROM, I propose changing that to "ROM" instead. > + bool warn_firmware_not_loaded = false; > unsigned int chip_id, xtal_trim; > - unsigned int fw_required; > + bool fw_required = true; To me, this is getting too ugly. All these per-model special flags set somewhere in the code. I propose removing BOTH these flags. Review of the SiLabs code revealed: 1. ALL of the tuner models this driver supports have a firmware patch from SiLabs available. 2. NONE of them seems to require it. At least all the SiLabs drivers allow disabling the download. So my proposal is: 1. Add firmware download support to all tuner models (this means adding some new firmware file names) 2. When a firmware file is not available, log an info (not warning) message and proceed. None of the above boolean flags are needed then. The dont_load_firmware flag from the config should of course be kept as it is. > + dev_warn(&client->dev, "firmware file '%s' not found. Using firmware from eeprom.\n", Aside from using dev_info instead and changing the text to "ROM firmware will be used.", this would also be a duplicate message, as firmware_request() also logs a message when a requested firmware file is not found. So I propose also changing the firmware_request() call to request_firmware_nowarn() instead to suppress the message from the firmware loader. Best Regards, -Robert Schlabbach