Lines Matching defs:base
161 int ufshc_send_uic_cmd(uintptr_t base, uic_cmd_t *cmd)
166 if (base == 0 || cmd == NULL)
170 data = mmio_read_32(base + HCS);
180 mmio_write_32(base + IS, ~0);
181 mmio_write_32(base + UCMDARG1, cmd->arg1);
182 mmio_write_32(base + UCMDARG2, cmd->arg2);
183 mmio_write_32(base + UCMDARG3, cmd->arg3);
184 mmio_write_32(base + UICCMD, cmd->op);
192 return mmio_read_32(base + UCMDARG2) & CONFIG_RESULT_CODE_MASK;
197 uintptr_t base;
206 base = ufs_params.reg_base;
213 result = ufshc_send_uic_cmd(base, &cmd);
224 *val = mmio_read_32(base + UCMDARG3);
230 uintptr_t base;
236 base = ufs_params.reg_base;
243 result = ufshc_send_uic_cmd(base, &cmd);
257 static int ufshc_hce_enable(uintptr_t base)
263 mmio_write_32(base + HCE, HCE_ENABLE);
267 data = mmio_read_32(base + HCE);
280 static int ufshc_hce_disable(uintptr_t base)
286 mmio_write_32(base + HCE, HCE_DISABLE);
289 data = mmio_read_32(base + HCE);
304 static int ufshc_reset(uintptr_t base)
310 if (mmio_read_32(base + HCE) & HCE_ENABLE) {
311 result = ufshc_hce_disable(base);
318 result = ufshc_hce_enable(base);
331 mmio_write_32(base + IE, data);
336 static int ufshc_dme_link_startup(uintptr_t base)
342 return ufshc_send_uic_cmd(base, &cmd);
345 static int ufshc_link_startup(uintptr_t base)
351 result = ufshc_dme_link_startup(base);
354 result = ufshc_reset(base);
360 assert(mmio_read_32(base + HCS) & HCS_DP);
361 data = mmio_read_32(base + IS);
363 mmio_write_32(base + IS, UFS_INT_ULSS);
367 mmio_write_32(base + IS, UFS_INT_UE);
370 mmio_read_32(base + UECPA);
387 uintptr_t base;
397 base = ufs_params.desc_base;
399 memset((void *)base, 0, UFS_DESC_SIZE);
401 utrd->header = base;