ssbi               71 drivers/mfd/ssbi.c 	int (*read)(struct ssbi *, u16 addr, u8 *buf, int len);
ssbi               72 drivers/mfd/ssbi.c 	int (*write)(struct ssbi *, u16 addr, const u8 *buf, int len);
ssbi               75 drivers/mfd/ssbi.c static inline u32 ssbi_readl(struct ssbi *ssbi, u32 reg)
ssbi               77 drivers/mfd/ssbi.c 	return readl(ssbi->base + reg);
ssbi               80 drivers/mfd/ssbi.c static inline void ssbi_writel(struct ssbi *ssbi, u32 val, u32 reg)
ssbi               82 drivers/mfd/ssbi.c 	writel(val, ssbi->base + reg);
ssbi               94 drivers/mfd/ssbi.c static int ssbi_wait_mask(struct ssbi *ssbi, u32 set_mask, u32 clr_mask)
ssbi              100 drivers/mfd/ssbi.c 		val = ssbi_readl(ssbi, SSBI2_STATUS);
ssbi              110 drivers/mfd/ssbi.c ssbi_read_bytes(struct ssbi *ssbi, u16 addr, u8 *buf, int len)
ssbi              115 drivers/mfd/ssbi.c 	if (ssbi->controller_type == MSM_SBI_CTRL_SSBI2) {
ssbi              116 drivers/mfd/ssbi.c 		u32 mode2 = ssbi_readl(ssbi, SSBI2_MODE2);
ssbi              118 drivers/mfd/ssbi.c 		ssbi_writel(ssbi, mode2, SSBI2_MODE2);
ssbi              122 drivers/mfd/ssbi.c 		ret = ssbi_wait_mask(ssbi, SSBI_STATUS_READY, 0);
ssbi              126 drivers/mfd/ssbi.c 		ssbi_writel(ssbi, cmd, SSBI2_CMD);
ssbi              127 drivers/mfd/ssbi.c 		ret = ssbi_wait_mask(ssbi, SSBI_STATUS_RD_READY, 0);
ssbi              130 drivers/mfd/ssbi.c 		*buf++ = ssbi_readl(ssbi, SSBI2_RD) & 0xff;
ssbi              139 drivers/mfd/ssbi.c ssbi_write_bytes(struct ssbi *ssbi, u16 addr, const u8 *buf, int len)
ssbi              143 drivers/mfd/ssbi.c 	if (ssbi->controller_type == MSM_SBI_CTRL_SSBI2) {
ssbi              144 drivers/mfd/ssbi.c 		u32 mode2 = ssbi_readl(ssbi, SSBI2_MODE2);
ssbi              146 drivers/mfd/ssbi.c 		ssbi_writel(ssbi, mode2, SSBI2_MODE2);
ssbi              150 drivers/mfd/ssbi.c 		ret = ssbi_wait_mask(ssbi, SSBI_STATUS_READY, 0);
ssbi              154 drivers/mfd/ssbi.c 		ssbi_writel(ssbi, ((addr & 0xff) << 16) | *buf, SSBI2_CMD);
ssbi              155 drivers/mfd/ssbi.c 		ret = ssbi_wait_mask(ssbi, 0, SSBI_STATUS_MCHN_BUSY);
ssbi              171 drivers/mfd/ssbi.c ssbi_pa_transfer(struct ssbi *ssbi, u32 cmd, u8 *data)
ssbi              176 drivers/mfd/ssbi.c 	ssbi_writel(ssbi, cmd, SSBI_PA_CMD);
ssbi              179 drivers/mfd/ssbi.c 		rd_status = ssbi_readl(ssbi, SSBI_PA_RD_STATUS);
ssbi              196 drivers/mfd/ssbi.c ssbi_pa_read_bytes(struct ssbi *ssbi, u16 addr, u8 *buf, int len)
ssbi              204 drivers/mfd/ssbi.c 		ret = ssbi_pa_transfer(ssbi, cmd, buf);
ssbi              216 drivers/mfd/ssbi.c ssbi_pa_write_bytes(struct ssbi *ssbi, u16 addr, const u8 *buf, int len)
ssbi              223 drivers/mfd/ssbi.c 		ret = ssbi_pa_transfer(ssbi, cmd, NULL);
ssbi              236 drivers/mfd/ssbi.c 	struct ssbi *ssbi = dev_get_drvdata(dev);
ssbi              240 drivers/mfd/ssbi.c 	spin_lock_irqsave(&ssbi->lock, flags);
ssbi              241 drivers/mfd/ssbi.c 	ret = ssbi->read(ssbi, addr, buf, len);
ssbi              242 drivers/mfd/ssbi.c 	spin_unlock_irqrestore(&ssbi->lock, flags);
ssbi              250 drivers/mfd/ssbi.c 	struct ssbi *ssbi = dev_get_drvdata(dev);
ssbi              254 drivers/mfd/ssbi.c 	spin_lock_irqsave(&ssbi->lock, flags);
ssbi              255 drivers/mfd/ssbi.c 	ret = ssbi->write(ssbi, addr, buf, len);
ssbi              256 drivers/mfd/ssbi.c 	spin_unlock_irqrestore(&ssbi->lock, flags);
ssbi              266 drivers/mfd/ssbi.c 	struct ssbi *ssbi;
ssbi              269 drivers/mfd/ssbi.c 	ssbi = devm_kzalloc(&pdev->dev, sizeof(*ssbi), GFP_KERNEL);
ssbi              270 drivers/mfd/ssbi.c 	if (!ssbi)
ssbi              274 drivers/mfd/ssbi.c 	ssbi->base = devm_ioremap_resource(&pdev->dev, mem_res);
ssbi              275 drivers/mfd/ssbi.c 	if (IS_ERR(ssbi->base))
ssbi              276 drivers/mfd/ssbi.c 		return PTR_ERR(ssbi->base);
ssbi              278 drivers/mfd/ssbi.c 	platform_set_drvdata(pdev, ssbi);
ssbi              287 drivers/mfd/ssbi.c 		ssbi->controller_type = MSM_SBI_CTRL_SSBI;
ssbi              289 drivers/mfd/ssbi.c 		ssbi->controller_type = MSM_SBI_CTRL_SSBI2;
ssbi              291 drivers/mfd/ssbi.c 		ssbi->controller_type = MSM_SBI_CTRL_PMIC_ARBITER;
ssbi              297 drivers/mfd/ssbi.c 	if (ssbi->controller_type == MSM_SBI_CTRL_PMIC_ARBITER) {
ssbi              298 drivers/mfd/ssbi.c 		ssbi->read = ssbi_pa_read_bytes;
ssbi              299 drivers/mfd/ssbi.c 		ssbi->write = ssbi_pa_write_bytes;
ssbi              301 drivers/mfd/ssbi.c 		ssbi->read = ssbi_read_bytes;
ssbi              302 drivers/mfd/ssbi.c 		ssbi->write = ssbi_write_bytes;
ssbi              305 drivers/mfd/ssbi.c 	spin_lock_init(&ssbi->lock);
ssbi              493 drivers/pinctrl/qcom/pinctrl-ipq8064.c 	FUNCTION(ssbi),
ssbi              550 drivers/pinctrl/qcom/pinctrl-ipq8064.c 	PINGROUP(10, gsbi4, spdif, sata, ssbi, mdio, spmi, NA, NA, NA, NA),
ssbi              551 drivers/pinctrl/qcom/pinctrl-ipq8064.c 	PINGROUP(11, gsbi4, pcie2_prsnt, pcie1_prsnt, pcie3_prsnt, ssbi, mdio, spmi, NA, NA, NA),