Lines Matching +full:8 +full:dev
32 static int b53_mmap_read8(struct b53_device *dev, u8 page, u8 reg, u8 *val) in b53_mmap_read8() argument
34 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read8()
37 *val = readb(regs + (page << 8) + reg); in b53_mmap_read8()
42 static int b53_mmap_read16(struct b53_device *dev, u8 page, u8 reg, u16 *val) in b53_mmap_read16() argument
44 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read16()
50 if (dev->pdata && dev->pdata->big_endian) in b53_mmap_read16()
51 *val = ioread16be(regs + (page << 8) + reg); in b53_mmap_read16()
53 *val = readw(regs + (page << 8) + reg); in b53_mmap_read16()
58 static int b53_mmap_read32(struct b53_device *dev, u8 page, u8 reg, u32 *val) in b53_mmap_read32() argument
60 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read32()
66 if (dev->pdata && dev->pdata->big_endian) in b53_mmap_read32()
67 *val = ioread32be(regs + (page << 8) + reg); in b53_mmap_read32()
69 *val = readl(regs + (page << 8) + reg); in b53_mmap_read32()
74 static int b53_mmap_read48(struct b53_device *dev, u8 page, u8 reg, u64 *val) in b53_mmap_read48() argument
76 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read48()
86 if (dev->pdata && dev->pdata->big_endian) { in b53_mmap_read48()
87 lo = ioread16be(regs + (page << 8) + reg); in b53_mmap_read48()
88 hi = ioread32be(regs + (page << 8) + reg + 2); in b53_mmap_read48()
90 lo = readw(regs + (page << 8) + reg); in b53_mmap_read48()
91 hi = readl(regs + (page << 8) + reg + 2); in b53_mmap_read48()
99 if (dev->pdata && dev->pdata->big_endian) { in b53_mmap_read48()
100 lo = ioread32be(regs + (page << 8) + reg); in b53_mmap_read48()
101 hi = ioread16be(regs + (page << 8) + reg + 4); in b53_mmap_read48()
103 lo = readl(regs + (page << 8) + reg); in b53_mmap_read48()
104 hi = readw(regs + (page << 8) + reg + 4); in b53_mmap_read48()
113 static int b53_mmap_read64(struct b53_device *dev, u8 page, u8 reg, u64 *val) in b53_mmap_read64() argument
115 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read64()
122 if (dev->pdata && dev->pdata->big_endian) { in b53_mmap_read64()
123 lo = ioread32be(regs + (page << 8) + reg); in b53_mmap_read64()
124 hi = ioread32be(regs + (page << 8) + reg + 4); in b53_mmap_read64()
126 lo = readl(regs + (page << 8) + reg); in b53_mmap_read64()
127 hi = readl(regs + (page << 8) + reg + 4); in b53_mmap_read64()
135 static int b53_mmap_write8(struct b53_device *dev, u8 page, u8 reg, u8 value) in b53_mmap_write8() argument
137 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_write8()
140 writeb(value, regs + (page << 8) + reg); in b53_mmap_write8()
145 static int b53_mmap_write16(struct b53_device *dev, u8 page, u8 reg, in b53_mmap_write16() argument
148 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_write16()
154 if (dev->pdata && dev->pdata->big_endian) in b53_mmap_write16()
155 iowrite16be(value, regs + (page << 8) + reg); in b53_mmap_write16()
157 writew(value, regs + (page << 8) + reg); in b53_mmap_write16()
162 static int b53_mmap_write32(struct b53_device *dev, u8 page, u8 reg, in b53_mmap_write32() argument
165 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_write32()
171 if (dev->pdata && dev->pdata->big_endian) in b53_mmap_write32()
172 iowrite32be(value, regs + (page << 8) + reg); in b53_mmap_write32()
174 writel(value, regs + (page << 8) + reg); in b53_mmap_write32()
179 static int b53_mmap_write48(struct b53_device *dev, u8 page, u8 reg, in b53_mmap_write48() argument
189 b53_mmap_write16(dev, page, reg, lo); in b53_mmap_write48()
190 b53_mmap_write32(dev, page, reg + 2, hi); in b53_mmap_write48()
195 b53_mmap_write32(dev, page, reg, lo); in b53_mmap_write48()
196 b53_mmap_write16(dev, page, reg + 4, hi); in b53_mmap_write48()
202 static int b53_mmap_write64(struct b53_device *dev, u8 page, u8 reg, in b53_mmap_write64() argument
213 b53_mmap_write32(dev, page, reg, lo); in b53_mmap_write64()
214 b53_mmap_write32(dev, page, reg + 4, hi); in b53_mmap_write64()
235 struct device_node *np = pdev->dev.of_node; in b53_mmap_probe_of()
237 struct device *dev = &pdev->dev; in b53_mmap_probe_of() local
245 pdata = devm_kzalloc(dev, sizeof(struct b53_platform_data), in b53_mmap_probe_of()
256 dev_err(dev, "no ports child node found\n"); in b53_mmap_probe_of()
278 struct device_node *np = pdev->dev.of_node; in b53_mmap_probe()
279 struct b53_platform_data *pdata = pdev->dev.platform_data; in b53_mmap_probe()
281 struct b53_device *dev; in b53_mmap_probe() local
287 dev_err(&pdev->dev, "OF probe error\n"); in b53_mmap_probe()
295 priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); in b53_mmap_probe()
301 dev = b53_switch_alloc(&pdev->dev, &b53_mmap_ops, priv); in b53_mmap_probe()
302 if (!dev) in b53_mmap_probe()
305 dev->pdata = pdata; in b53_mmap_probe()
307 platform_set_drvdata(pdev, dev); in b53_mmap_probe()
309 return b53_switch_register(dev); in b53_mmap_probe()
314 struct b53_device *dev = platform_get_drvdata(pdev); in b53_mmap_remove() local
316 if (dev) in b53_mmap_remove()
317 b53_switch_remove(dev); in b53_mmap_remove()
324 struct b53_device *dev = platform_get_drvdata(pdev); in b53_mmap_shutdown() local
326 if (dev) in b53_mmap_shutdown()
327 b53_switch_shutdown(dev); in b53_mmap_shutdown()