mtk                70 drivers/gpio/gpio-mt7621.c 	struct mtk *mtk = gpiochip_get_data(gc);
mtk                73 drivers/gpio/gpio-mt7621.c 	gc->write_reg(mtk->base + offset, val);
mtk                80 drivers/gpio/gpio-mt7621.c 	struct mtk *mtk = gpiochip_get_data(gc);
mtk                83 drivers/gpio/gpio-mt7621.c 	return gc->read_reg(mtk->base + offset);
mtk               213 drivers/gpio/gpio-mt7621.c 	struct mtk *mtk = dev_get_drvdata(dev);
mtk               218 drivers/gpio/gpio-mt7621.c 	rg = &mtk->gc_map[bank];
mtk               225 drivers/gpio/gpio-mt7621.c 	dat = mtk->base + GPIO_REG_DATA + (rg->bank * GPIO_BANK_STRIDE);
mtk               226 drivers/gpio/gpio-mt7621.c 	set = mtk->base + GPIO_REG_DSET + (rg->bank * GPIO_BANK_STRIDE);
mtk               227 drivers/gpio/gpio-mt7621.c 	ctrl = mtk->base + GPIO_REG_DCLR + (rg->bank * GPIO_BANK_STRIDE);
mtk               228 drivers/gpio/gpio-mt7621.c 	diro = mtk->base + GPIO_REG_CTRL + (rg->bank * GPIO_BANK_STRIDE);
mtk               251 drivers/gpio/gpio-mt7621.c 	if (mtk->gpio_irq) {
mtk               259 drivers/gpio/gpio-mt7621.c 		ret = devm_request_irq(dev, mtk->gpio_irq,
mtk               265 drivers/gpio/gpio-mt7621.c 				mtk->gpio_irq, ret);
mtk               279 drivers/gpio/gpio-mt7621.c 	ret = devm_gpiochip_add_data(dev, &rg->chip, mtk);
mtk               299 drivers/gpio/gpio-mt7621.c 	struct mtk *mtk;
mtk               303 drivers/gpio/gpio-mt7621.c 	mtk = devm_kzalloc(dev, sizeof(*mtk), GFP_KERNEL);
mtk               304 drivers/gpio/gpio-mt7621.c 	if (!mtk)
mtk               307 drivers/gpio/gpio-mt7621.c 	mtk->base = devm_platform_ioremap_resource(pdev, 0);
mtk               308 drivers/gpio/gpio-mt7621.c 	if (IS_ERR(mtk->base))
mtk               309 drivers/gpio/gpio-mt7621.c 		return PTR_ERR(mtk->base);
mtk               311 drivers/gpio/gpio-mt7621.c 	mtk->gpio_irq = irq_of_parse_and_map(np, 0);
mtk               312 drivers/gpio/gpio-mt7621.c 	mtk->dev = dev;
mtk               313 drivers/gpio/gpio-mt7621.c 	platform_set_drvdata(pdev, mtk);
mtk               563 drivers/usb/host/xhci-mtk-sch.c int xhci_mtk_sch_init(struct xhci_hcd_mtk *mtk)
mtk               565 drivers/usb/host/xhci-mtk-sch.c 	struct xhci_hcd *xhci = hcd_to_xhci(mtk->hcd);
mtk               580 drivers/usb/host/xhci-mtk-sch.c 	mtk->sch_array = sch_array;
mtk               586 drivers/usb/host/xhci-mtk-sch.c void xhci_mtk_sch_exit(struct xhci_hcd_mtk *mtk)
mtk               588 drivers/usb/host/xhci-mtk-sch.c 	kfree(mtk->sch_array);
mtk               595 drivers/usb/host/xhci-mtk-sch.c 	struct xhci_hcd_mtk *mtk = hcd_to_mtk(hcd);
mtk               612 drivers/usb/host/xhci-mtk-sch.c 	sch_array = mtk->sch_array;
mtk               668 drivers/usb/host/xhci-mtk-sch.c 	struct xhci_hcd_mtk *mtk = hcd_to_mtk(hcd);
mtk               680 drivers/usb/host/xhci-mtk-sch.c 	sch_array = mtk->sch_array;
mtk                76 drivers/usb/host/xhci-mtk.c static int xhci_mtk_host_enable(struct xhci_hcd_mtk *mtk)
mtk                78 drivers/usb/host/xhci-mtk.c 	struct mu3c_ippc_regs __iomem *ippc = mtk->ippc_regs;
mtk                84 drivers/usb/host/xhci-mtk.c 	if (!mtk->has_ippc)
mtk                93 drivers/usb/host/xhci-mtk.c 	for (i = 0; i < mtk->num_u3_ports; i++) {
mtk                94 drivers/usb/host/xhci-mtk.c 		if ((0x1 << i) & mtk->u3p_dis_msk) {
mtk               106 drivers/usb/host/xhci-mtk.c 	for (i = 0; i < mtk->num_u2_ports; i++) {
mtk               120 drivers/usb/host/xhci-mtk.c 	if (mtk->num_u3_ports > u3_ports_disabed)
mtk               126 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "clocks are not stable (0x%x)\n", value);
mtk               133 drivers/usb/host/xhci-mtk.c static int xhci_mtk_host_disable(struct xhci_hcd_mtk *mtk)
mtk               135 drivers/usb/host/xhci-mtk.c 	struct mu3c_ippc_regs __iomem *ippc = mtk->ippc_regs;
mtk               140 drivers/usb/host/xhci-mtk.c 	if (!mtk->has_ippc)
mtk               144 drivers/usb/host/xhci-mtk.c 	for (i = 0; i < mtk->num_u3_ports; i++) {
mtk               145 drivers/usb/host/xhci-mtk.c 		if ((0x1 << i) & mtk->u3p_dis_msk)
mtk               154 drivers/usb/host/xhci-mtk.c 	for (i = 0; i < mtk->num_u2_ports; i++) {
mtk               169 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "ip sleep failed!!!\n");
mtk               175 drivers/usb/host/xhci-mtk.c static int xhci_mtk_ssusb_config(struct xhci_hcd_mtk *mtk)
mtk               177 drivers/usb/host/xhci-mtk.c 	struct mu3c_ippc_regs __iomem *ippc = mtk->ippc_regs;
mtk               180 drivers/usb/host/xhci-mtk.c 	if (!mtk->has_ippc)
mtk               201 drivers/usb/host/xhci-mtk.c 	mtk->num_u3_ports = CAP_U3_PORT_NUM(value);
mtk               202 drivers/usb/host/xhci-mtk.c 	mtk->num_u2_ports = CAP_U2_PORT_NUM(value);
mtk               203 drivers/usb/host/xhci-mtk.c 	dev_dbg(mtk->dev, "%s u2p:%d, u3p:%d\n", __func__,
mtk               204 drivers/usb/host/xhci-mtk.c 			mtk->num_u2_ports, mtk->num_u3_ports);
mtk               206 drivers/usb/host/xhci-mtk.c 	return xhci_mtk_host_enable(mtk);
mtk               209 drivers/usb/host/xhci-mtk.c static int xhci_mtk_clks_get(struct xhci_hcd_mtk *mtk)
mtk               211 drivers/usb/host/xhci-mtk.c 	struct device *dev = mtk->dev;
mtk               213 drivers/usb/host/xhci-mtk.c 	mtk->sys_clk = devm_clk_get(dev, "sys_ck");
mtk               214 drivers/usb/host/xhci-mtk.c 	if (IS_ERR(mtk->sys_clk)) {
mtk               216 drivers/usb/host/xhci-mtk.c 		return PTR_ERR(mtk->sys_clk);
mtk               219 drivers/usb/host/xhci-mtk.c 	mtk->xhci_clk = devm_clk_get_optional(dev, "xhci_ck");
mtk               220 drivers/usb/host/xhci-mtk.c 	if (IS_ERR(mtk->xhci_clk))
mtk               221 drivers/usb/host/xhci-mtk.c 		return PTR_ERR(mtk->xhci_clk);
mtk               223 drivers/usb/host/xhci-mtk.c 	mtk->ref_clk = devm_clk_get_optional(dev, "ref_ck");
mtk               224 drivers/usb/host/xhci-mtk.c 	if (IS_ERR(mtk->ref_clk))
mtk               225 drivers/usb/host/xhci-mtk.c 		return PTR_ERR(mtk->ref_clk);
mtk               227 drivers/usb/host/xhci-mtk.c 	mtk->mcu_clk = devm_clk_get_optional(dev, "mcu_ck");
mtk               228 drivers/usb/host/xhci-mtk.c 	if (IS_ERR(mtk->mcu_clk))
mtk               229 drivers/usb/host/xhci-mtk.c 		return PTR_ERR(mtk->mcu_clk);
mtk               231 drivers/usb/host/xhci-mtk.c 	mtk->dma_clk = devm_clk_get_optional(dev, "dma_ck");
mtk               232 drivers/usb/host/xhci-mtk.c 	return PTR_ERR_OR_ZERO(mtk->dma_clk);
mtk               235 drivers/usb/host/xhci-mtk.c static int xhci_mtk_clks_enable(struct xhci_hcd_mtk *mtk)
mtk               239 drivers/usb/host/xhci-mtk.c 	ret = clk_prepare_enable(mtk->ref_clk);
mtk               241 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "failed to enable ref_clk\n");
mtk               245 drivers/usb/host/xhci-mtk.c 	ret = clk_prepare_enable(mtk->sys_clk);
mtk               247 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "failed to enable sys_clk\n");
mtk               251 drivers/usb/host/xhci-mtk.c 	ret = clk_prepare_enable(mtk->xhci_clk);
mtk               253 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "failed to enable xhci_clk\n");
mtk               257 drivers/usb/host/xhci-mtk.c 	ret = clk_prepare_enable(mtk->mcu_clk);
mtk               259 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "failed to enable mcu_clk\n");
mtk               263 drivers/usb/host/xhci-mtk.c 	ret = clk_prepare_enable(mtk->dma_clk);
mtk               265 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "failed to enable dma_clk\n");
mtk               272 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->mcu_clk);
mtk               274 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->xhci_clk);
mtk               276 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->sys_clk);
mtk               278 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->ref_clk);
mtk               283 drivers/usb/host/xhci-mtk.c static void xhci_mtk_clks_disable(struct xhci_hcd_mtk *mtk)
mtk               285 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->dma_clk);
mtk               286 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->mcu_clk);
mtk               287 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->xhci_clk);
mtk               288 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->sys_clk);
mtk               289 drivers/usb/host/xhci-mtk.c 	clk_disable_unprepare(mtk->ref_clk);
mtk               293 drivers/usb/host/xhci-mtk.c static void usb_wakeup_ip_sleep_set(struct xhci_hcd_mtk *mtk, bool enable)
mtk               297 drivers/usb/host/xhci-mtk.c 	switch (mtk->uwk_vers) {
mtk               299 drivers/usb/host/xhci-mtk.c 		reg = mtk->uwk_reg_base + PERI_WK_CTRL1;
mtk               304 drivers/usb/host/xhci-mtk.c 		reg = mtk->uwk_reg_base + PERI_SSUSB_SPM_CTRL;
mtk               311 drivers/usb/host/xhci-mtk.c 	regmap_update_bits(mtk->uwk, reg, msk, val);
mtk               314 drivers/usb/host/xhci-mtk.c static int usb_wakeup_of_property_parse(struct xhci_hcd_mtk *mtk,
mtk               321 drivers/usb/host/xhci-mtk.c 	mtk->uwk_en = of_property_read_bool(dn, "wakeup-source");
mtk               322 drivers/usb/host/xhci-mtk.c 	if (!mtk->uwk_en)
mtk               330 drivers/usb/host/xhci-mtk.c 	mtk->uwk_reg_base = args.args[0];
mtk               331 drivers/usb/host/xhci-mtk.c 	mtk->uwk_vers = args.args[1];
mtk               332 drivers/usb/host/xhci-mtk.c 	mtk->uwk = syscon_node_to_regmap(args.np);
mtk               334 drivers/usb/host/xhci-mtk.c 	dev_info(mtk->dev, "uwk - reg:0x%x, version:%d\n",
mtk               335 drivers/usb/host/xhci-mtk.c 			mtk->uwk_reg_base, mtk->uwk_vers);
mtk               337 drivers/usb/host/xhci-mtk.c 	return PTR_ERR_OR_ZERO(mtk->uwk);
mtk               341 drivers/usb/host/xhci-mtk.c static void usb_wakeup_set(struct xhci_hcd_mtk *mtk, bool enable)
mtk               343 drivers/usb/host/xhci-mtk.c 	if (mtk->uwk_en)
mtk               344 drivers/usb/host/xhci-mtk.c 		usb_wakeup_ip_sleep_set(mtk, enable);
mtk               354 drivers/usb/host/xhci-mtk.c static int xhci_mtk_ldos_enable(struct xhci_hcd_mtk *mtk)
mtk               358 drivers/usb/host/xhci-mtk.c 	ret = regulator_enable(mtk->vbus);
mtk               360 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "failed to enable vbus\n");
mtk               364 drivers/usb/host/xhci-mtk.c 	ret = regulator_enable(mtk->vusb33);
mtk               366 drivers/usb/host/xhci-mtk.c 		dev_err(mtk->dev, "failed to enable vusb33\n");
mtk               367 drivers/usb/host/xhci-mtk.c 		regulator_disable(mtk->vbus);
mtk               373 drivers/usb/host/xhci-mtk.c static void xhci_mtk_ldos_disable(struct xhci_hcd_mtk *mtk)
mtk               375 drivers/usb/host/xhci-mtk.c 	regulator_disable(mtk->vbus);
mtk               376 drivers/usb/host/xhci-mtk.c 	regulator_disable(mtk->vusb33);
mtk               382 drivers/usb/host/xhci-mtk.c 	struct xhci_hcd_mtk *mtk = hcd_to_mtk(hcd);
mtk               396 drivers/usb/host/xhci-mtk.c 	if (mtk->lpm_support)
mtk               403 drivers/usb/host/xhci-mtk.c 	struct xhci_hcd_mtk *mtk = hcd_to_mtk(hcd);
mtk               407 drivers/usb/host/xhci-mtk.c 		ret = xhci_mtk_ssusb_config(mtk);
mtk               417 drivers/usb/host/xhci-mtk.c 		ret = xhci_mtk_sch_init(mtk);
mtk               429 drivers/usb/host/xhci-mtk.c 	struct xhci_hcd_mtk *mtk;
mtk               441 drivers/usb/host/xhci-mtk.c 	mtk = devm_kzalloc(dev, sizeof(*mtk), GFP_KERNEL);
mtk               442 drivers/usb/host/xhci-mtk.c 	if (!mtk)
mtk               445 drivers/usb/host/xhci-mtk.c 	mtk->dev = dev;
mtk               446 drivers/usb/host/xhci-mtk.c 	mtk->vbus = devm_regulator_get(dev, "vbus");
mtk               447 drivers/usb/host/xhci-mtk.c 	if (IS_ERR(mtk->vbus)) {
mtk               449 drivers/usb/host/xhci-mtk.c 		return PTR_ERR(mtk->vbus);
mtk               452 drivers/usb/host/xhci-mtk.c 	mtk->vusb33 = devm_regulator_get(dev, "vusb33");
mtk               453 drivers/usb/host/xhci-mtk.c 	if (IS_ERR(mtk->vusb33)) {
mtk               455 drivers/usb/host/xhci-mtk.c 		return PTR_ERR(mtk->vusb33);
mtk               458 drivers/usb/host/xhci-mtk.c 	ret = xhci_mtk_clks_get(mtk);
mtk               462 drivers/usb/host/xhci-mtk.c 	mtk->lpm_support = of_property_read_bool(node, "usb3-lpm-capable");
mtk               465 drivers/usb/host/xhci-mtk.c 			     &mtk->u3p_dis_msk);
mtk               467 drivers/usb/host/xhci-mtk.c 	ret = usb_wakeup_of_property_parse(mtk, node);
mtk               477 drivers/usb/host/xhci-mtk.c 	ret = xhci_mtk_ldos_enable(mtk);
mtk               481 drivers/usb/host/xhci-mtk.c 	ret = xhci_mtk_clks_enable(mtk);
mtk               506 drivers/usb/host/xhci-mtk.c 	mtk->hcd = platform_get_drvdata(pdev);
mtk               507 drivers/usb/host/xhci-mtk.c 	platform_set_drvdata(pdev, mtk);
mtk               520 drivers/usb/host/xhci-mtk.c 		mtk->ippc_regs = devm_ioremap_resource(dev, res);
mtk               521 drivers/usb/host/xhci-mtk.c 		if (IS_ERR(mtk->ippc_regs)) {
mtk               522 drivers/usb/host/xhci-mtk.c 			ret = PTR_ERR(mtk->ippc_regs);
mtk               525 drivers/usb/host/xhci-mtk.c 		mtk->has_ippc = true;
mtk               527 drivers/usb/host/xhci-mtk.c 		mtk->has_ippc = false;
mtk               567 drivers/usb/host/xhci-mtk.c 	xhci_mtk_sch_exit(mtk);
mtk               577 drivers/usb/host/xhci-mtk.c 	xhci_mtk_clks_disable(mtk);
mtk               580 drivers/usb/host/xhci-mtk.c 	xhci_mtk_ldos_disable(mtk);
mtk               590 drivers/usb/host/xhci-mtk.c 	struct xhci_hcd_mtk *mtk = platform_get_drvdata(dev);
mtk               591 drivers/usb/host/xhci-mtk.c 	struct usb_hcd	*hcd = mtk->hcd;
mtk               602 drivers/usb/host/xhci-mtk.c 	xhci_mtk_sch_exit(mtk);
mtk               603 drivers/usb/host/xhci-mtk.c 	xhci_mtk_clks_disable(mtk);
mtk               604 drivers/usb/host/xhci-mtk.c 	xhci_mtk_ldos_disable(mtk);
mtk               620 drivers/usb/host/xhci-mtk.c 	struct xhci_hcd_mtk *mtk = dev_get_drvdata(dev);
mtk               621 drivers/usb/host/xhci-mtk.c 	struct usb_hcd *hcd = mtk->hcd;
mtk               630 drivers/usb/host/xhci-mtk.c 	xhci_mtk_host_disable(mtk);
mtk               631 drivers/usb/host/xhci-mtk.c 	xhci_mtk_clks_disable(mtk);
mtk               632 drivers/usb/host/xhci-mtk.c 	usb_wakeup_set(mtk, true);
mtk               638 drivers/usb/host/xhci-mtk.c 	struct xhci_hcd_mtk *mtk = dev_get_drvdata(dev);
mtk               639 drivers/usb/host/xhci-mtk.c 	struct usb_hcd *hcd = mtk->hcd;
mtk               642 drivers/usb/host/xhci-mtk.c 	usb_wakeup_set(mtk, false);
mtk               643 drivers/usb/host/xhci-mtk.c 	xhci_mtk_clks_enable(mtk);
mtk               644 drivers/usb/host/xhci-mtk.c 	xhci_mtk_host_enable(mtk);
mtk               163 drivers/usb/host/xhci-mtk.h int xhci_mtk_sch_init(struct xhci_hcd_mtk *mtk);
mtk               164 drivers/usb/host/xhci-mtk.h void xhci_mtk_sch_exit(struct xhci_hcd_mtk *mtk);