Lines Matching refs:tegra
210 static inline u32 fpci_readl(struct tegra_xusb *tegra, unsigned int offset) in fpci_readl() argument
212 return readl(tegra->fpci_base + offset); in fpci_readl()
215 static inline void fpci_writel(struct tegra_xusb *tegra, u32 value, in fpci_writel() argument
218 writel(value, tegra->fpci_base + offset); in fpci_writel()
221 static inline u32 ipfs_readl(struct tegra_xusb *tegra, unsigned int offset) in ipfs_readl() argument
223 return readl(tegra->ipfs_base + offset); in ipfs_readl()
226 static inline void ipfs_writel(struct tegra_xusb *tegra, u32 value, in ipfs_writel() argument
229 writel(value, tegra->ipfs_base + offset); in ipfs_writel()
232 static u32 csb_readl(struct tegra_xusb *tegra, unsigned int offset) in csb_readl() argument
237 fpci_writel(tegra, page, XUSB_CFG_ARU_C11_CSBRANGE); in csb_readl()
239 return fpci_readl(tegra, XUSB_CFG_CSB_BASE_ADDR + ofs); in csb_readl()
242 static void csb_writel(struct tegra_xusb *tegra, u32 value, in csb_writel() argument
248 fpci_writel(tegra, page, XUSB_CFG_ARU_C11_CSBRANGE); in csb_writel()
249 fpci_writel(tegra, value, XUSB_CFG_CSB_BASE_ADDR + ofs); in csb_writel()
252 static int tegra_xusb_set_ss_clk(struct tegra_xusb *tegra, in tegra_xusb_set_ss_clk() argument
256 struct clk *clk = tegra->ss_src_clk; in tegra_xusb_set_ss_clk()
270 new_parent_rate = clk_get_rate(tegra->pll_u_480m); in tegra_xusb_set_ss_clk()
277 err = clk_set_parent(clk, tegra->pll_u_480m); in tegra_xusb_set_ss_clk()
293 err = clk_set_parent(clk, tegra->clk_m); in tegra_xusb_set_ss_clk()
304 dev_err(tegra->dev, "Invalid SS rate: %lu Hz\n", rate); in tegra_xusb_set_ss_clk()
309 dev_err(tegra->dev, "SS clock doesn't match requested rate\n"); in tegra_xusb_set_ss_clk()
403 static int tegra_xusb_mbox_send(struct tegra_xusb *tegra, in tegra_xusb_mbox_send() argument
414 value = fpci_readl(tegra, XUSB_CFG_ARU_MBOX_OWNER); in tegra_xusb_mbox_send()
416 dev_err(tegra->dev, "mailbox is busy\n"); in tegra_xusb_mbox_send()
420 fpci_writel(tegra, MBOX_OWNER_SW, XUSB_CFG_ARU_MBOX_OWNER); in tegra_xusb_mbox_send()
422 value = fpci_readl(tegra, XUSB_CFG_ARU_MBOX_OWNER); in tegra_xusb_mbox_send()
424 dev_err(tegra->dev, "failed to acquire mailbox\n"); in tegra_xusb_mbox_send()
432 fpci_writel(tegra, value, XUSB_CFG_ARU_MBOX_DATA_IN); in tegra_xusb_mbox_send()
434 value = fpci_readl(tegra, XUSB_CFG_ARU_MBOX_CMD); in tegra_xusb_mbox_send()
436 fpci_writel(tegra, value, XUSB_CFG_ARU_MBOX_CMD); in tegra_xusb_mbox_send()
442 value = fpci_readl(tegra, XUSB_CFG_ARU_MBOX_OWNER); in tegra_xusb_mbox_send()
450 value = fpci_readl(tegra, XUSB_CFG_ARU_MBOX_OWNER); in tegra_xusb_mbox_send()
461 struct tegra_xusb *tegra = data; in tegra_xusb_mbox_irq() local
465 value = fpci_readl(tegra, XUSB_CFG_ARU_SMI_INTR); in tegra_xusb_mbox_irq()
466 fpci_writel(tegra, value, XUSB_CFG_ARU_SMI_INTR); in tegra_xusb_mbox_irq()
469 dev_err(tegra->dev, "controller firmware hang\n"); in tegra_xusb_mbox_irq()
474 static void tegra_xusb_mbox_handle(struct tegra_xusb *tegra, in tegra_xusb_mbox_handle() argument
477 struct tegra_xusb_padctl *padctl = tegra->padctl; in tegra_xusb_mbox_handle()
478 const struct tegra_xusb_soc *soc = tegra->soc; in tegra_xusb_mbox_handle()
479 struct device *dev = tegra->dev; in tegra_xusb_mbox_handle()
491 rsp.data = clk_get_rate(tegra->falcon_clk) / 1000; in tegra_xusb_mbox_handle()
501 if (tegra->soc->scale_ss_clock) { in tegra_xusb_mbox_handle()
502 err = tegra_xusb_set_ss_clk(tegra, msg->data * 1000); in tegra_xusb_mbox_handle()
508 rsp.data = clk_get_rate(tegra->ss_src_clk) / 1000; in tegra_xusb_mbox_handle()
603 err = tegra_xusb_mbox_send(tegra, &rsp); in tegra_xusb_mbox_handle()
611 struct tegra_xusb *tegra = data; in tegra_xusb_mbox_thread() local
615 mutex_lock(&tegra->lock); in tegra_xusb_mbox_thread()
617 value = fpci_readl(tegra, XUSB_CFG_ARU_MBOX_DATA_OUT); in tegra_xusb_mbox_thread()
620 value = fpci_readl(tegra, XUSB_CFG_ARU_MBOX_CMD); in tegra_xusb_mbox_thread()
622 fpci_writel(tegra, value, XUSB_CFG_ARU_MBOX_CMD); in tegra_xusb_mbox_thread()
626 fpci_writel(tegra, MBOX_OWNER_NONE, XUSB_CFG_ARU_MBOX_OWNER); in tegra_xusb_mbox_thread()
628 tegra_xusb_mbox_handle(tegra, &msg); in tegra_xusb_mbox_thread()
630 mutex_unlock(&tegra->lock); in tegra_xusb_mbox_thread()
634 static void tegra_xusb_ipfs_config(struct tegra_xusb *tegra, in tegra_xusb_ipfs_config() argument
639 value = ipfs_readl(tegra, IPFS_XUSB_HOST_CONFIGURATION_0); in tegra_xusb_ipfs_config()
641 ipfs_writel(tegra, value, IPFS_XUSB_HOST_CONFIGURATION_0); in tegra_xusb_ipfs_config()
646 value = fpci_readl(tegra, XUSB_CFG_4); in tegra_xusb_ipfs_config()
649 fpci_writel(tegra, value, XUSB_CFG_4); in tegra_xusb_ipfs_config()
654 value = fpci_readl(tegra, XUSB_CFG_1); in tegra_xusb_ipfs_config()
656 fpci_writel(tegra, value, XUSB_CFG_1); in tegra_xusb_ipfs_config()
659 value = ipfs_readl(tegra, IPFS_XUSB_HOST_INTR_MASK_0); in tegra_xusb_ipfs_config()
661 ipfs_writel(tegra, value, IPFS_XUSB_HOST_INTR_MASK_0); in tegra_xusb_ipfs_config()
664 ipfs_writel(tegra, 0x80, IPFS_XUSB_HOST_CLKGATE_HYSTERESIS_0); in tegra_xusb_ipfs_config()
667 static int tegra_xusb_clk_enable(struct tegra_xusb *tegra) in tegra_xusb_clk_enable() argument
671 err = clk_prepare_enable(tegra->pll_e); in tegra_xusb_clk_enable()
675 err = clk_prepare_enable(tegra->host_clk); in tegra_xusb_clk_enable()
679 err = clk_prepare_enable(tegra->ss_clk); in tegra_xusb_clk_enable()
683 err = clk_prepare_enable(tegra->falcon_clk); in tegra_xusb_clk_enable()
687 err = clk_prepare_enable(tegra->fs_src_clk); in tegra_xusb_clk_enable()
691 err = clk_prepare_enable(tegra->hs_src_clk); in tegra_xusb_clk_enable()
695 if (tegra->soc->scale_ss_clock) { in tegra_xusb_clk_enable()
696 err = tegra_xusb_set_ss_clk(tegra, TEGRA_XHCI_SS_HIGH_SPEED); in tegra_xusb_clk_enable()
704 clk_disable_unprepare(tegra->hs_src_clk); in tegra_xusb_clk_enable()
706 clk_disable_unprepare(tegra->fs_src_clk); in tegra_xusb_clk_enable()
708 clk_disable_unprepare(tegra->falcon_clk); in tegra_xusb_clk_enable()
710 clk_disable_unprepare(tegra->ss_clk); in tegra_xusb_clk_enable()
712 clk_disable_unprepare(tegra->host_clk); in tegra_xusb_clk_enable()
714 clk_disable_unprepare(tegra->pll_e); in tegra_xusb_clk_enable()
718 static void tegra_xusb_clk_disable(struct tegra_xusb *tegra) in tegra_xusb_clk_disable() argument
720 clk_disable_unprepare(tegra->pll_e); in tegra_xusb_clk_disable()
721 clk_disable_unprepare(tegra->host_clk); in tegra_xusb_clk_disable()
722 clk_disable_unprepare(tegra->ss_clk); in tegra_xusb_clk_disable()
723 clk_disable_unprepare(tegra->falcon_clk); in tegra_xusb_clk_disable()
724 clk_disable_unprepare(tegra->fs_src_clk); in tegra_xusb_clk_disable()
725 clk_disable_unprepare(tegra->hs_src_clk); in tegra_xusb_clk_disable()
728 static int tegra_xusb_phy_enable(struct tegra_xusb *tegra) in tegra_xusb_phy_enable() argument
733 for (i = 0; i < tegra->num_phys; i++) { in tegra_xusb_phy_enable()
734 err = phy_init(tegra->phys[i]); in tegra_xusb_phy_enable()
738 err = phy_power_on(tegra->phys[i]); in tegra_xusb_phy_enable()
740 phy_exit(tegra->phys[i]); in tegra_xusb_phy_enable()
749 phy_power_off(tegra->phys[i]); in tegra_xusb_phy_enable()
750 phy_exit(tegra->phys[i]); in tegra_xusb_phy_enable()
756 static void tegra_xusb_phy_disable(struct tegra_xusb *tegra) in tegra_xusb_phy_disable() argument
760 for (i = 0; i < tegra->num_phys; i++) { in tegra_xusb_phy_disable()
761 phy_power_off(tegra->phys[i]); in tegra_xusb_phy_disable()
762 phy_exit(tegra->phys[i]); in tegra_xusb_phy_disable()
768 struct tegra_xusb *tegra = dev_get_drvdata(dev); in tegra_xusb_runtime_suspend() local
770 tegra_xusb_phy_disable(tegra); in tegra_xusb_runtime_suspend()
771 regulator_bulk_disable(tegra->soc->num_supplies, tegra->supplies); in tegra_xusb_runtime_suspend()
772 tegra_xusb_clk_disable(tegra); in tegra_xusb_runtime_suspend()
779 struct tegra_xusb *tegra = dev_get_drvdata(dev); in tegra_xusb_runtime_resume() local
782 err = tegra_xusb_clk_enable(tegra); in tegra_xusb_runtime_resume()
788 err = regulator_bulk_enable(tegra->soc->num_supplies, tegra->supplies); in tegra_xusb_runtime_resume()
794 err = tegra_xusb_phy_enable(tegra); in tegra_xusb_runtime_resume()
803 regulator_bulk_disable(tegra->soc->num_supplies, tegra->supplies); in tegra_xusb_runtime_resume()
805 tegra_xusb_clk_disable(tegra); in tegra_xusb_runtime_resume()
809 static int tegra_xusb_load_firmware(struct tegra_xusb *tegra) in tegra_xusb_load_firmware() argument
813 struct device *dev = tegra->dev; in tegra_xusb_load_firmware()
822 err = request_firmware(&fw, tegra->soc->firmware, tegra->dev); in tegra_xusb_load_firmware()
824 dev_err(tegra->dev, "failed to request firmware: %d\n", err); in tegra_xusb_load_firmware()
830 tegra->fw.size = le32_to_cpu(header->fwimg_len); in tegra_xusb_load_firmware()
832 tegra->fw.virt = dma_alloc_coherent(tegra->dev, tegra->fw.size, in tegra_xusb_load_firmware()
833 &tegra->fw.phys, GFP_KERNEL); in tegra_xusb_load_firmware()
834 if (!tegra->fw.virt) { in tegra_xusb_load_firmware()
835 dev_err(tegra->dev, "failed to allocate memory for firmware\n"); in tegra_xusb_load_firmware()
840 header = (struct tegra_xusb_fw_header *)tegra->fw.virt; in tegra_xusb_load_firmware()
841 memcpy(tegra->fw.virt, fw->data, tegra->fw.size); in tegra_xusb_load_firmware()
844 if (csb_readl(tegra, XUSB_CSB_MP_ILOAD_BASE_LO) != 0) { in tegra_xusb_load_firmware()
846 csb_readl(tegra, XUSB_FALC_CPUCTL)); in tegra_xusb_load_firmware()
851 csb_writel(tegra, tegra->fw.size, XUSB_CSB_MP_ILOAD_ATTR); in tegra_xusb_load_firmware()
857 address = tegra->fw.phys + sizeof(*header); in tegra_xusb_load_firmware()
858 csb_writel(tegra, address >> 32, XUSB_CSB_MP_ILOAD_BASE_HI); in tegra_xusb_load_firmware()
859 csb_writel(tegra, address, XUSB_CSB_MP_ILOAD_BASE_LO); in tegra_xusb_load_firmware()
862 csb_writel(tegra, APMAP_BOOTPATH, XUSB_CSB_MP_APMAP); in tegra_xusb_load_firmware()
865 csb_writel(tegra, L2IMEMOP_INVALIDATE_ALL, XUSB_CSB_MP_L2IMEMOP_TRIG); in tegra_xusb_load_firmware()
881 csb_writel(tegra, value, XUSB_CSB_MP_L2IMEMOP_SIZE); in tegra_xusb_load_firmware()
884 csb_writel(tegra, L2IMEMOP_LOAD_LOCKED_RESULT, in tegra_xusb_load_firmware()
888 csb_writel(tegra, code_size_blocks, XUSB_FALC_IMFILLCTL); in tegra_xusb_load_firmware()
894 csb_writel(tegra, value, XUSB_FALC_IMFILLRNG1); in tegra_xusb_load_firmware()
896 csb_writel(tegra, 0, XUSB_FALC_DMACTL); in tegra_xusb_load_firmware()
900 csb_writel(tegra, le32_to_cpu(header->boot_codetag), in tegra_xusb_load_firmware()
906 csb_writel(tegra, CPUCTL_STARTCPU, XUSB_FALC_CPUCTL); in tegra_xusb_load_firmware()
909 if (csb_readl(tegra, XUSB_FALC_CPUCTL) == CPUCTL_STATE_STOPPED) in tegra_xusb_load_firmware()
915 if (csb_readl(tegra, XUSB_FALC_CPUCTL) != CPUCTL_STATE_STOPPED) { in tegra_xusb_load_firmware()
917 csb_readl(tegra, XUSB_FALC_CPUCTL)); in tegra_xusb_load_firmware()
935 struct tegra_xusb *tegra; in tegra_xusb_probe() local
943 tegra = devm_kzalloc(&pdev->dev, sizeof(*tegra), GFP_KERNEL); in tegra_xusb_probe()
944 if (!tegra) in tegra_xusb_probe()
947 tegra->soc = of_device_get_match_data(&pdev->dev); in tegra_xusb_probe()
948 mutex_init(&tegra->lock); in tegra_xusb_probe()
949 tegra->dev = &pdev->dev; in tegra_xusb_probe()
952 tegra->regs = devm_ioremap_resource(&pdev->dev, regs); in tegra_xusb_probe()
953 if (IS_ERR(tegra->regs)) in tegra_xusb_probe()
954 return PTR_ERR(tegra->regs); in tegra_xusb_probe()
957 tegra->fpci_base = devm_ioremap_resource(&pdev->dev, res); in tegra_xusb_probe()
958 if (IS_ERR(tegra->fpci_base)) in tegra_xusb_probe()
959 return PTR_ERR(tegra->fpci_base); in tegra_xusb_probe()
962 tegra->ipfs_base = devm_ioremap_resource(&pdev->dev, res); in tegra_xusb_probe()
963 if (IS_ERR(tegra->ipfs_base)) in tegra_xusb_probe()
964 return PTR_ERR(tegra->ipfs_base); in tegra_xusb_probe()
966 tegra->xhci_irq = platform_get_irq(pdev, 0); in tegra_xusb_probe()
967 if (tegra->xhci_irq < 0) in tegra_xusb_probe()
968 return tegra->xhci_irq; in tegra_xusb_probe()
970 tegra->mbox_irq = platform_get_irq(pdev, 1); in tegra_xusb_probe()
971 if (tegra->mbox_irq < 0) in tegra_xusb_probe()
972 return tegra->mbox_irq; in tegra_xusb_probe()
974 tegra->padctl = tegra_xusb_padctl_get(&pdev->dev); in tegra_xusb_probe()
975 if (IS_ERR(tegra->padctl)) in tegra_xusb_probe()
976 return PTR_ERR(tegra->padctl); in tegra_xusb_probe()
978 tegra->host_clk = devm_clk_get(&pdev->dev, "xusb_host"); in tegra_xusb_probe()
979 if (IS_ERR(tegra->host_clk)) { in tegra_xusb_probe()
980 err = PTR_ERR(tegra->host_clk); in tegra_xusb_probe()
985 tegra->falcon_clk = devm_clk_get(&pdev->dev, "xusb_falcon_src"); in tegra_xusb_probe()
986 if (IS_ERR(tegra->falcon_clk)) { in tegra_xusb_probe()
987 err = PTR_ERR(tegra->falcon_clk); in tegra_xusb_probe()
992 tegra->ss_clk = devm_clk_get(&pdev->dev, "xusb_ss"); in tegra_xusb_probe()
993 if (IS_ERR(tegra->ss_clk)) { in tegra_xusb_probe()
994 err = PTR_ERR(tegra->ss_clk); in tegra_xusb_probe()
999 tegra->ss_src_clk = devm_clk_get(&pdev->dev, "xusb_ss_src"); in tegra_xusb_probe()
1000 if (IS_ERR(tegra->ss_src_clk)) { in tegra_xusb_probe()
1001 err = PTR_ERR(tegra->ss_src_clk); in tegra_xusb_probe()
1006 tegra->hs_src_clk = devm_clk_get(&pdev->dev, "xusb_hs_src"); in tegra_xusb_probe()
1007 if (IS_ERR(tegra->hs_src_clk)) { in tegra_xusb_probe()
1008 err = PTR_ERR(tegra->hs_src_clk); in tegra_xusb_probe()
1013 tegra->fs_src_clk = devm_clk_get(&pdev->dev, "xusb_fs_src"); in tegra_xusb_probe()
1014 if (IS_ERR(tegra->fs_src_clk)) { in tegra_xusb_probe()
1015 err = PTR_ERR(tegra->fs_src_clk); in tegra_xusb_probe()
1020 tegra->pll_u_480m = devm_clk_get(&pdev->dev, "pll_u_480m"); in tegra_xusb_probe()
1021 if (IS_ERR(tegra->pll_u_480m)) { in tegra_xusb_probe()
1022 err = PTR_ERR(tegra->pll_u_480m); in tegra_xusb_probe()
1027 tegra->clk_m = devm_clk_get(&pdev->dev, "clk_m"); in tegra_xusb_probe()
1028 if (IS_ERR(tegra->clk_m)) { in tegra_xusb_probe()
1029 err = PTR_ERR(tegra->clk_m); in tegra_xusb_probe()
1034 tegra->pll_e = devm_clk_get(&pdev->dev, "pll_e"); in tegra_xusb_probe()
1035 if (IS_ERR(tegra->pll_e)) { in tegra_xusb_probe()
1036 err = PTR_ERR(tegra->pll_e); in tegra_xusb_probe()
1042 tegra->host_rst = devm_reset_control_get(&pdev->dev, in tegra_xusb_probe()
1044 if (IS_ERR(tegra->host_rst)) { in tegra_xusb_probe()
1045 err = PTR_ERR(tegra->host_rst); in tegra_xusb_probe()
1051 tegra->ss_rst = devm_reset_control_get(&pdev->dev, "xusb_ss"); in tegra_xusb_probe()
1052 if (IS_ERR(tegra->ss_rst)) { in tegra_xusb_probe()
1053 err = PTR_ERR(tegra->ss_rst); in tegra_xusb_probe()
1060 tegra->ss_clk, in tegra_xusb_probe()
1061 tegra->ss_rst); in tegra_xusb_probe()
1069 tegra->host_clk, in tegra_xusb_probe()
1070 tegra->host_rst); in tegra_xusb_probe()
1078 tegra->supplies = devm_kcalloc(&pdev->dev, tegra->soc->num_supplies, in tegra_xusb_probe()
1079 sizeof(*tegra->supplies), GFP_KERNEL); in tegra_xusb_probe()
1080 if (!tegra->supplies) { in tegra_xusb_probe()
1085 for (i = 0; i < tegra->soc->num_supplies; i++) in tegra_xusb_probe()
1086 tegra->supplies[i].supply = tegra->soc->supply_names[i]; in tegra_xusb_probe()
1088 err = devm_regulator_bulk_get(&pdev->dev, tegra->soc->num_supplies, in tegra_xusb_probe()
1089 tegra->supplies); in tegra_xusb_probe()
1095 for (i = 0; i < tegra->soc->num_types; i++) in tegra_xusb_probe()
1096 tegra->num_phys += tegra->soc->phy_types[i].num; in tegra_xusb_probe()
1098 tegra->phys = devm_kcalloc(&pdev->dev, tegra->num_phys, in tegra_xusb_probe()
1099 sizeof(*tegra->phys), GFP_KERNEL); in tegra_xusb_probe()
1100 if (!tegra->phys) { in tegra_xusb_probe()
1105 for (i = 0, k = 0; i < tegra->soc->num_types; i++) { in tegra_xusb_probe()
1108 for (j = 0; j < tegra->soc->phy_types[i].num; j++) { in tegra_xusb_probe()
1110 tegra->soc->phy_types[i].name, j); in tegra_xusb_probe()
1121 tegra->phys[k++] = phy; in tegra_xusb_probe()
1125 tegra->hcd = usb_create_hcd(&tegra_xhci_hc_driver, &pdev->dev, in tegra_xusb_probe()
1127 if (!tegra->hcd) { in tegra_xusb_probe()
1136 platform_set_drvdata(pdev, tegra); in tegra_xusb_probe()
1149 tegra_xusb_ipfs_config(tegra, regs); in tegra_xusb_probe()
1151 err = tegra_xusb_load_firmware(tegra); in tegra_xusb_probe()
1157 tegra->hcd->regs = tegra->regs; in tegra_xusb_probe()
1158 tegra->hcd->rsrc_start = regs->start; in tegra_xusb_probe()
1159 tegra->hcd->rsrc_len = resource_size(regs); in tegra_xusb_probe()
1161 err = usb_add_hcd(tegra->hcd, tegra->xhci_irq, IRQF_SHARED); in tegra_xusb_probe()
1167 device_wakeup_enable(tegra->hcd->self.controller); in tegra_xusb_probe()
1169 xhci = hcd_to_xhci(tegra->hcd); in tegra_xusb_probe()
1174 tegra->hcd); in tegra_xusb_probe()
1181 err = usb_add_hcd(xhci->shared_hcd, tegra->xhci_irq, IRQF_SHARED); in tegra_xusb_probe()
1187 mutex_lock(&tegra->lock); in tegra_xusb_probe()
1193 err = tegra_xusb_mbox_send(tegra, &msg); in tegra_xusb_probe()
1196 mutex_unlock(&tegra->lock); in tegra_xusb_probe()
1200 mutex_unlock(&tegra->lock); in tegra_xusb_probe()
1202 err = devm_request_threaded_irq(&pdev->dev, tegra->mbox_irq, in tegra_xusb_probe()
1205 dev_name(&pdev->dev), tegra); in tegra_xusb_probe()
1218 usb_remove_hcd(tegra->hcd); in tegra_xusb_probe()
1224 usb_put_hcd(tegra->hcd); in tegra_xusb_probe()
1232 tegra_xusb_padctl_put(tegra->padctl); in tegra_xusb_probe()
1238 struct tegra_xusb *tegra = platform_get_drvdata(pdev); in tegra_xusb_remove() local
1239 struct xhci_hcd *xhci = hcd_to_xhci(tegra->hcd); in tegra_xusb_remove()
1243 usb_remove_hcd(tegra->hcd); in tegra_xusb_remove()
1244 usb_put_hcd(tegra->hcd); in tegra_xusb_remove()
1246 dma_free_coherent(&pdev->dev, tegra->fw.size, tegra->fw.virt, in tegra_xusb_remove()
1247 tegra->fw.phys); in tegra_xusb_remove()
1252 tegra_xusb_padctl_put(tegra->padctl); in tegra_xusb_remove()
1260 struct tegra_xusb *tegra = dev_get_drvdata(dev); in tegra_xusb_suspend() local
1261 struct xhci_hcd *xhci = hcd_to_xhci(tegra->hcd); in tegra_xusb_suspend()
1270 struct tegra_xusb *tegra = dev_get_drvdata(dev); in tegra_xusb_resume() local
1271 struct xhci_hcd *xhci = hcd_to_xhci(tegra->hcd); in tegra_xusb_resume()