Lines Matching +full:8 +full:dev

33 static int b53_mmap_read8(struct b53_device *dev, u8 page, u8 reg, u8 *val)  in b53_mmap_read8()  argument
35 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read8()
38 *val = readb(regs + (page << 8) + reg); in b53_mmap_read8()
43 static int b53_mmap_read16(struct b53_device *dev, u8 page, u8 reg, u16 *val) in b53_mmap_read16() argument
45 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read16()
51 if (dev->pdata && dev->pdata->big_endian) in b53_mmap_read16()
52 *val = ioread16be(regs + (page << 8) + reg); in b53_mmap_read16()
54 *val = readw(regs + (page << 8) + reg); in b53_mmap_read16()
59 static int b53_mmap_read32(struct b53_device *dev, u8 page, u8 reg, u32 *val) in b53_mmap_read32() argument
61 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read32()
67 if (dev->pdata && dev->pdata->big_endian) in b53_mmap_read32()
68 *val = ioread32be(regs + (page << 8) + reg); in b53_mmap_read32()
70 *val = readl(regs + (page << 8) + reg); in b53_mmap_read32()
75 static int b53_mmap_read48(struct b53_device *dev, u8 page, u8 reg, u64 *val) in b53_mmap_read48() argument
77 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read48()
87 if (dev->pdata && dev->pdata->big_endian) { in b53_mmap_read48()
88 lo = ioread16be(regs + (page << 8) + reg); in b53_mmap_read48()
89 hi = ioread32be(regs + (page << 8) + reg + 2); in b53_mmap_read48()
91 lo = readw(regs + (page << 8) + reg); in b53_mmap_read48()
92 hi = readl(regs + (page << 8) + reg + 2); in b53_mmap_read48()
100 if (dev->pdata && dev->pdata->big_endian) { in b53_mmap_read48()
101 lo = ioread32be(regs + (page << 8) + reg); in b53_mmap_read48()
102 hi = ioread16be(regs + (page << 8) + reg + 4); in b53_mmap_read48()
104 lo = readl(regs + (page << 8) + reg); in b53_mmap_read48()
105 hi = readw(regs + (page << 8) + reg + 4); in b53_mmap_read48()
114 static int b53_mmap_read64(struct b53_device *dev, u8 page, u8 reg, u64 *val) in b53_mmap_read64() argument
116 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_read64()
123 if (dev->pdata && dev->pdata->big_endian) { in b53_mmap_read64()
124 lo = ioread32be(regs + (page << 8) + reg); in b53_mmap_read64()
125 hi = ioread32be(regs + (page << 8) + reg + 4); in b53_mmap_read64()
127 lo = readl(regs + (page << 8) + reg); in b53_mmap_read64()
128 hi = readl(regs + (page << 8) + reg + 4); in b53_mmap_read64()
136 static int b53_mmap_write8(struct b53_device *dev, u8 page, u8 reg, u8 value) in b53_mmap_write8() argument
138 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_write8()
141 writeb(value, regs + (page << 8) + reg); in b53_mmap_write8()
146 static int b53_mmap_write16(struct b53_device *dev, u8 page, u8 reg, in b53_mmap_write16() argument
149 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_write16()
155 if (dev->pdata && dev->pdata->big_endian) in b53_mmap_write16()
156 iowrite16be(value, regs + (page << 8) + reg); in b53_mmap_write16()
158 writew(value, regs + (page << 8) + reg); in b53_mmap_write16()
163 static int b53_mmap_write32(struct b53_device *dev, u8 page, u8 reg, in b53_mmap_write32() argument
166 struct b53_mmap_priv *priv = dev->priv; in b53_mmap_write32()
172 if (dev->pdata && dev->pdata->big_endian) in b53_mmap_write32()
173 iowrite32be(value, regs + (page << 8) + reg); in b53_mmap_write32()
175 writel(value, regs + (page << 8) + reg); in b53_mmap_write32()
180 static int b53_mmap_write48(struct b53_device *dev, u8 page, u8 reg, in b53_mmap_write48() argument
190 b53_mmap_write16(dev, page, reg, lo); in b53_mmap_write48()
191 b53_mmap_write32(dev, page, reg + 2, hi); in b53_mmap_write48()
196 b53_mmap_write32(dev, page, reg, lo); in b53_mmap_write48()
197 b53_mmap_write16(dev, page, reg + 4, hi); in b53_mmap_write48()
203 static int b53_mmap_write64(struct b53_device *dev, u8 page, u8 reg, in b53_mmap_write64() argument
214 b53_mmap_write32(dev, page, reg, lo); in b53_mmap_write64()
215 b53_mmap_write32(dev, page, reg + 4, hi); in b53_mmap_write64()
220 static int b53_mmap_phy_read16(struct b53_device *dev, int addr, int reg, in b53_mmap_phy_read16() argument
226 static int b53_mmap_phy_write16(struct b53_device *dev, int addr, int reg, in b53_mmap_phy_write16() argument
250 struct device_node *np = pdev->dev.of_node; in b53_mmap_probe_of()
252 struct device *dev = &pdev->dev; in b53_mmap_probe_of() local
260 pdata = devm_kzalloc(dev, sizeof(struct b53_platform_data), in b53_mmap_probe_of()
266 pdata->chip_id = (u32)(unsigned long)device_get_match_data(dev); in b53_mmap_probe_of()
271 dev_err(dev, "no ports child node found\n"); in b53_mmap_probe_of()
293 struct device_node *np = pdev->dev.of_node; in b53_mmap_probe()
294 struct b53_platform_data *pdata = pdev->dev.platform_data; in b53_mmap_probe()
296 struct b53_device *dev; in b53_mmap_probe() local
302 dev_err(&pdev->dev, "OF probe error\n"); in b53_mmap_probe()
310 priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL); in b53_mmap_probe()
316 dev = b53_switch_alloc(&pdev->dev, &b53_mmap_ops, priv); in b53_mmap_probe()
317 if (!dev) in b53_mmap_probe()
320 dev->pdata = pdata; in b53_mmap_probe()
322 platform_set_drvdata(pdev, dev); in b53_mmap_probe()
324 return b53_switch_register(dev); in b53_mmap_probe()
329 struct b53_device *dev = platform_get_drvdata(pdev); in b53_mmap_remove() local
331 if (dev) in b53_mmap_remove()
332 b53_switch_remove(dev); in b53_mmap_remove()
339 struct b53_device *dev = platform_get_drvdata(pdev); in b53_mmap_shutdown() local
341 if (dev) in b53_mmap_shutdown()
342 b53_switch_shutdown(dev); in b53_mmap_shutdown()