Lines Matching refs:dwsmscc
67 struct dw_spi_mscc *dwsmscc = dwsmmio->priv; in dw_spi_mscc_set_cs() local
76 writel(sw_mode, dwsmscc->spi_mst + MSCC_SPI_MST_SW_MODE); in dw_spi_mscc_set_cs()
86 struct dw_spi_mscc *dwsmscc; in dw_spi_mscc_init() local
88 dwsmscc = devm_kzalloc(&pdev->dev, sizeof(*dwsmscc), GFP_KERNEL); in dw_spi_mscc_init()
89 if (!dwsmscc) in dw_spi_mscc_init()
92 dwsmscc->spi_mst = devm_platform_ioremap_resource(pdev, 1); in dw_spi_mscc_init()
93 if (IS_ERR(dwsmscc->spi_mst)) { in dw_spi_mscc_init()
95 return PTR_ERR(dwsmscc->spi_mst); in dw_spi_mscc_init()
98 dwsmscc->syscon = syscon_regmap_lookup_by_compatible(cpu_syscon); in dw_spi_mscc_init()
99 if (IS_ERR(dwsmscc->syscon)) in dw_spi_mscc_init()
100 return PTR_ERR(dwsmscc->syscon); in dw_spi_mscc_init()
103 writel(0, dwsmscc->spi_mst + MSCC_SPI_MST_SW_MODE); in dw_spi_mscc_init()
106 regmap_update_bits(dwsmscc->syscon, MSCC_CPU_SYSTEM_CTRL_GENERAL_CTRL, in dw_spi_mscc_init()
111 dwsmmio->priv = dwsmscc; in dw_spi_mscc_init()
140 struct dw_spi_mscc *dwsmscc = dwsmmio->priv; in dw_spi_sparx5_set_cs() local
145 regmap_write(dwsmscc->syscon, SPARX5_FORCE_ENA, 1); in dw_spi_sparx5_set_cs()
147 regmap_write(dwsmscc->syscon, SPARX5_FORCE_VAL, ~BIT(cs)); in dw_spi_sparx5_set_cs()
152 regmap_write(dwsmscc->syscon, SPARX5_FORCE_VAL, ~0); in dw_spi_sparx5_set_cs()
156 regmap_write(dwsmscc->syscon, SPARX5_FORCE_ENA, 0); in dw_spi_sparx5_set_cs()
167 struct dw_spi_mscc *dwsmscc; in dw_spi_mscc_sparx5_init() local
174 dwsmscc = devm_kzalloc(dev, sizeof(*dwsmscc), GFP_KERNEL); in dw_spi_mscc_sparx5_init()
175 if (!dwsmscc) in dw_spi_mscc_sparx5_init()
178 dwsmscc->syscon = in dw_spi_mscc_sparx5_init()
180 if (IS_ERR(dwsmscc->syscon)) { in dw_spi_mscc_sparx5_init()
182 return PTR_ERR(dwsmscc->syscon); in dw_spi_mscc_sparx5_init()
186 dwsmmio->priv = dwsmscc; in dw_spi_mscc_sparx5_init()