Lines Matching refs:gs

388 	struct tegra_hte_soc *gs;
405 gs = gc->data;
406 if (!gs || !gs->prov_data)
423 if (gs->prov_data->type == HTE_TEGRA_TYPE_GPIO && !args) {
424 line_id = desc->attr.line_id - gpio_device_get_base(gs->gdev);
425 map = gs->prov_data->map;
426 map_sz = gs->prov_data->map_sz;
427 } else if (gs->prov_data->type == HTE_TEGRA_TYPE_GPIO && args) {
429 map = gs->prov_data->sec_map;
430 map_sz = gs->prov_data->sec_map_sz;
460 struct tegra_hte_soc *gs;
467 gs = chip->data;
480 spin_lock(&gs->sl[slice].s_lock);
482 if (test_bit(HTE_SUSPEND, &gs->sl[slice].flags)) {
483 spin_unlock(&gs->sl[slice].s_lock);
488 val = tegra_hte_readl(gs, reg);
493 tegra_hte_writel(gs, reg, val);
495 spin_unlock(&gs->sl[slice].s_lock);
523 struct tegra_hte_soc *gs;
529 gs = chip->data;
532 if (gs->prov_data->type == HTE_TEGRA_TYPE_GPIO) {
541 gs->line_data[line_id].data = attr->line_data;
542 gs->line_data[line_id].flags = attr->edge_flags;
551 struct tegra_hte_soc *gs;
558 gs = chip->data;
561 if (gs->prov_data->type == HTE_TEGRA_TYPE_GPIO) {
563 gs->line_data[line_id].flags);
567 gs->line_data[line_id].data = NULL;
568 gs->line_data[line_id].flags = 0;
588 static int tegra_hte_get_level(struct tegra_hte_soc *gs, u32 line_id)
592 if (gs->prov_data->type == HTE_TEGRA_TYPE_GPIO) {
593 desc = gs->line_data[line_id].data;
601 static void tegra_hte_read_fifo(struct tegra_hte_soc *gs)
607 while ((tegra_hte_readl(gs, HTE_TESTATUS) >>
610 tsh = tegra_hte_readl(gs, HTE_TETSCH);
611 tsl = tegra_hte_readl(gs, HTE_TETSCL);
614 src = tegra_hte_readl(gs, HTE_TESRC);
618 pv = tegra_hte_readl(gs, HTE_TEPCV);
619 cv = tegra_hte_readl(gs, HTE_TECCV);
625 el.raw_level = tegra_hte_get_level(gs, line_id);
626 hte_push_ts_ns(gs->chip, line_id, &el);
629 tegra_hte_writel(gs, HTE_TECMD, HTE_TECMD_CMD_POP);
635 struct tegra_hte_soc *gs = dev_id;
638 tegra_hte_read_fifo(gs);
674 struct tegra_hte_soc *gs = dev_get_drvdata(&pdev->dev);
676 tegra_hte_writel(gs, HTE_TECTRL, 0);
818 struct tegra_hte_soc *gs = dev_get_drvdata(dev);
819 u32 slices = gs->chip->nlines / NV_LINES_IN_SLICE;
822 tegra_hte_writel(gs, HTE_TECTRL, gs->conf_rval);
825 spin_lock(&gs->sl[i].s_lock);
826 tegra_hte_writel(gs,
828 gs->sl[i].r_val);
829 clear_bit(HTE_SUSPEND, &gs->sl[i].flags);
830 spin_unlock(&gs->sl[i].s_lock);
839 struct tegra_hte_soc *gs = dev_get_drvdata(dev);
840 u32 slices = gs->chip->nlines / NV_LINES_IN_SLICE;
843 gs->conf_rval = tegra_hte_readl(gs, HTE_TECTRL);
845 spin_lock(&gs->sl[i].s_lock);
846 gs->sl[i].r_val = tegra_hte_readl(gs,
848 set_bit(HTE_SUSPEND, &gs->sl[i].flags);
849 spin_unlock(&gs->sl[i].s_lock);