Wright Feng <wright.feng@xxxxxxxxxxx> writes: > For legacy chips w/o CLM blob files, kernel with user helper function > enables returns -EAGAIN when we request_firmware() for blob file: > "request_firmware() -> _request_firmware() -> fw_load_from_user_helper() > -> _request_firmware_load() -> retval=-EAGAIN" > We should do one more retry Who says that we should do one more retry? > and continue brcmf_c_process_clm_blob if getting -EAGAIN from > request_firmware function. > > Signed-off-by: Wright Feng <wright.feng@xxxxxxxxxxx> [...] > @@ -180,11 +183,18 @@ static int brcmf_c_process_clm_blob(struct brcmf_if *ifp) > return err; > } > > - err = request_firmware(&clm, clm_name, dev); > + do { > + err = request_firmware(&clm, clm_name, dev); > + } while (err == -EAGAIN && retries++ < CLM_LOAD_RETRIES); This looks like a REALLY ugly workaround, please think three times before submitting something like this. And if you still decide to submit it, put a good effort on the commit log to explain why the hack would be acceptable. Have you investigated why you are getting the -EGAIN, user space not ready during boot or something like that? -- Kalle Valo