diff --git a/drivers/bus/mhi/core/mhi_init.c b/drivers/bus/mhi/core/mhi_init.c index a06b4485fc28..3958e2f01c82 100644 --- a/drivers/bus/mhi/core/mhi_init.c +++ b/drivers/bus/mhi/core/mhi_init.c @@ -325,10 +325,19 @@ static const struct attribute_group mhi_sysfs_group = { void mhi_create_sysfs(struct mhi_controller *mhi_cntrl) { - sysfs_create_group(&mhi_cntrl->mhi_dev->dev.kobj, &mhi_sysfs_group); - if (mhi_cntrl->mhi_tsync) - sysfs_create_group(&mhi_cntrl->mhi_dev->dev.kobj, + int ret; + + ret = sysfs_create_group(&mhi_cntrl->mhi_dev->dev.kobj, + &mhi_sysfs_group); + if (ret) + MHI_CNTRL_LOG("Failed to create mhi_sysfs_group"); + + if (mhi_cntrl->mhi_tsync) { + ret = sysfs_create_group(&mhi_cntrl->mhi_dev->dev.kobj, &mhi_tsync_group); + if (ret) + MHI_CNTRL_LOG("Failed to create mhi_tsync_group"); + } } void mhi_destroy_sysfs(struct mhi_controller *mhi_cntrl) diff --git a/drivers/bus/mhi/core/mhi_main.c b/drivers/bus/mhi/core/mhi_main.c index 8b1e877c9f79..4c7c9b30f456 100644 --- a/drivers/bus/mhi/core/mhi_main.c +++ b/drivers/bus/mhi/core/mhi_main.c @@ -1717,16 +1717,18 @@ irqreturn_t mhi_intvec_handlr(int irq_number, void *dev) struct mhi_controller *mhi_cntrl = dev; u32 in_reset = -1; + int ret = 0; /* wake up any events waiting for state change */ MHI_VERB("Enter\n"); if (unlikely(mhi_cntrl->initiate_mhi_reset)) { - mhi_read_reg_field(mhi_cntrl, mhi_cntrl->regs, MHICTRL, + ret = mhi_read_reg_field(mhi_cntrl, mhi_cntrl->regs, MHICTRL, MHICTRL_RESET_MASK, MHICTRL_RESET_SHIFT, &in_reset); + mhi_cntrl->initiate_mhi_reset = !!in_reset; } wake_up_all(&mhi_cntrl->state_event); - MHI_VERB("Exit\n"); + MHI_VERB("Exit: ret %d\n", ret); if (MHI_IN_MISSION_MODE(mhi_cntrl->ee)) queue_work(mhi_cntrl->wq, &mhi_cntrl->special_work);