On 10/12/2024 08:41, Raj Kumar Bhagat wrote: > + > + time_left = wait_for_completion_timeout(&ab_ahb->userpd_ready, > + ATH12K_USERPD_READY_TIMEOUT); > + if (!time_left) { > + ath12k_err(ab, "UserPD ready wait timed out\n"); > + ret = -ETIMEDOUT; > + goto err_fw2; > + } > + > + qcom_smem_state_update_bits(ab_ahb->spawn_state, BIT(ab_ahb->spawn_bit), 0); > + > + ath12k_info(ab, "UserPD%d is now UP\n", ab_ahb->userpd_id); Don't bug users with success messages. Your driver is supposed to be silent on success. > + > +err_fw2: > + release_firmware(fw2); > +err_fw: > + release_firmware(fw); > + return ret; > +} > + > static void ath12k_ahb_init_qmi_ce_config(struct ath12k_base *ab) > { > struct ath12k_qmi_ce_cfg *cfg = &ab->qmi.ce_cfg; > @@ -557,6 +694,7 @@ static const struct ath12k_hif_ops ath12k_ahb_hif_ops_ipq5332 = { > .irq_enable = ath12k_ahb_ext_irq_enable, > .irq_disable = ath12k_ahb_ext_irq_disable, > .map_service_to_pipe = ath12k_ahb_map_service_to_pipe, > + .power_up = ath12k_ahb_power_up, > }; > > static irqreturn_t ath12k_userpd_irq_handler(int irq, void *data) > diff --git a/drivers/net/wireless/ath/ath12k/ahb.h b/drivers/net/wireless/ath/ath12k/ahb.h > index 0999e2bbe970..0dbbbfd45eab 100644 > --- a/drivers/net/wireless/ath/ath12k/ahb.h > +++ b/drivers/net/wireless/ath/ath12k/ahb.h > @@ -19,7 +19,15 @@ > #define ATH12K_PCI_IRQ_CE0_OFFSET 3 > #define ATH12K_ROOTPD_READY_TIMEOUT (5 * HZ) > #define ATH12K_RPROC_AFTER_POWERUP QCOM_SSR_AFTER_POWERUP > - Why? You just added this line in previous commits. > +#define ATH12K_AHB_FW_PREFIX "q6_fw" > +#define ATH12K_AHB_FW_SUFFIX ".mdt" Best regards, Krzysztof