*data = atomisp_css2_hw_load_32(addr);
 }
 
-static int hmm_get_mmu_base_addr(unsigned int *mmu_base_addr)
+static int hmm_get_mmu_base_addr(struct device *dev, unsigned int *mmu_base_addr)
 {
        if (!sh_mmu_mrfld.get_pd_base) {
-               dev_err(atomisp_dev, "get mmu base address failed.\n");
+               dev_err(dev, "get mmu base address failed.\n");
                return -EINVAL;
        }
 
        int ret;
        int err;
 
-       ret = hmm_get_mmu_base_addr(&mmu_base_addr);
+       ret = hmm_get_mmu_base_addr(isp->dev, &mmu_base_addr);
        if (ret)
                return ret;
 
        unsigned int mmu_base_addr;
        int ret;
 
-       ret = hmm_get_mmu_base_addr(&mmu_base_addr);
+       ret = hmm_get_mmu_base_addr(isp->dev, &mmu_base_addr);
        if (ret) {
                dev_err(isp->dev, "get base address error.\n");
                return -EINVAL;
        [IA_CSS_ACC_STANDALONE] =       "Stand-alone acceleration",
 };
 
-int atomisp_css_dump_blob_infor(void)
+int atomisp_css_dump_blob_infor(struct atomisp_device *isp)
 {
        struct ia_css_blob_descr *bd = sh_css_blob_info;
        unsigned int i, nm = sh_css_num_binaries;
        for (i = 0; i < sh_css_num_binaries - NUM_OF_SPS; i++) {
                switch (bd[i].header.type) {
                case ia_css_isp_firmware:
-                       dev_dbg(atomisp_dev,
-                               "Num%2d type %s (%s), binary id is %2d, name is %s\n",
+                       dev_dbg(isp->dev, "Num%2d type %s (%s), binary id is %2d, name is %s\n",
                                i + NUM_OF_SPS,
                                fw_type_name[bd[i].header.type],
                                fw_acc_type_name[bd[i].header.info.isp.type],
                                bd[i].name);
                        break;
                default:
-                       dev_dbg(atomisp_dev,
-                               "Num%2d type %s, name is %s\n",
+                       dev_dbg(isp->dev, "Num%2d type %s, name is %s\n",
                                i + NUM_OF_SPS, fw_type_name[bd[i].header.type],
                                bd[i].name);
                }
 
 
        if (opt & OPTION_VALID) {
                if (opt & OPTION_BIN_LIST) {
-                       ret = atomisp_css_dump_blob_infor();
+                       ret = atomisp_css_dump_blob_infor(isp);
                        if (ret) {
-                               dev_err(atomisp_dev, "%s dump blob infor err[ret:%d]\n",
+                               dev_err(isp->dev, "%s dump blob infor err[ret:%d]\n",
                                        __func__, ret);
                                goto opt_err;
                        }
                                atomisp_css_debug_dump_isp_binary();
                        } else {
                                ret = -EPERM;
-                               dev_err(atomisp_dev, "%s dump running bin err[ret:%d]\n",
+                               dev_err(isp->dev, "%s dump running bin err[ret:%d]\n",
                                        __func__, ret);
                                goto opt_err;
                        }
                        hmm_show_mem_stat(__func__, __LINE__);
        } else {
                ret = -EINVAL;
-               dev_err(atomisp_dev, "%s dump nothing[ret=%d]\n", __func__,
-                       ret);
+               dev_err(isp->dev, "%s dump nothing[ret=%d]\n", __func__, ret);
        }
 
 opt_err:
 
        ret = iunit_drvfs_create_files(iunit_debug.drv);
        if (ret) {
-               dev_err(atomisp_dev, "drvfs_create_files error: %d\n", ret);
+               dev_err(isp->dev, "drvfs_create_files error: %d\n", ret);
                iunit_drvfs_remove_files(iunit_debug.drv);
        }