• Home
  • Raw
  • Download

Lines Matching +full:0 +full:xe89

55 #define RSB_CTRL	0x0	/* Global control */
56 #define RSB_CCR 0x4 /* Clock control */
57 #define RSB_INTE 0x8 /* Interrupt controls */
58 #define RSB_INTS 0xc /* Interrupt status */
59 #define RSB_ADDR 0x10 /* Address to send with read/write command */
60 #define RSB_DATA 0x1c /* Data to read/write */
61 #define RSB_LCR 0x24 /* Line control */
62 #define RSB_DMCR 0x28 /* Device mode (init) control */
63 #define RSB_CMD 0x2c /* RSB Command */
64 #define RSB_DAR 0x30 /* Device address / runtime address */
70 #define RSB_CTRL_SOFT_RST BIT(0)
73 #define RSB_CCR_SDA_OUT_DELAY(v) (((v) & 0x7) << 8)
74 #define RSB_CCR_MAX_CLK_DIV 0xff
79 #define RSB_INTS_TRANS_ERR_DATA_BIT(v) (((v) >> 8) & 0xf)
83 #define RSB_INTS_TRANS_OVER BIT(0)
91 #define RSB_LCR_SDA_CTL_EN BIT(0)
95 #define RSB_DMCR_MODE_DATA (0x7c << 16)
96 #define RSB_DMCR_MODE_REG (0x3e << 8)
97 #define RSB_DMCR_DEV_ADDR 0x00
100 #define RSB_CMD_RD8 0x8b
101 #define RSB_CMD_RD16 0x9c
102 #define RSB_CMD_RD32 0xa6
103 #define RSB_CMD_WR8 0x4e
104 #define RSB_CMD_WR16 0x59
105 #define RSB_CMD_WR32 0x63
106 #define RSB_CMD_STRA 0xe8
109 #define RSB_DAR_RTA(v) (((v) & 0xff) << 16)
110 #define RSB_DAR_DA(v) ((v) & 0xffff)
152 irq = of_irq_get(dev->of_node, 0); in sunxi_rsb_device_probe()
156 if (irq < 0) in sunxi_rsb_device_probe()
157 irq = 0; in sunxi_rsb_device_probe()
163 if (ret < 0) in sunxi_rsb_device_probe()
219 if (err < 0) { in sunxi_rsb_device_create()
251 return 0; in sunxi_rsb_remove_devices()
326 return 0; in _sunxi_rsb_run_xfer()
363 *buf = readl(rsb->regs + RSB_DATA) & GENMASK(len * 8 - 1, 0); in sunxi_rsb_read()
420 if (reg > 0xff) in regmap_sunxi_rsb_reg_read()
510 int ret = 0; in sunxi_rsb_init_device_mode()
532 * 0x17, 0x2d, 0x3a, 0x4e, 0x59, 0x63, 0x74, 0x8b,
533 * 0x9c, 0xa6, 0xb1, 0xc5, 0xd2, 0xe8, 0xff
537 * use 0x2d for the primary PMIC, 0x3a for the secondary PMIC if
538 * there is one, and 0x45 for peripheral ICs.
546 { 0x3a3, 0x2d }, /* Primary PMIC: AXP223, AXP809, AXP81X, ... */
547 { 0x745, 0x3a }, /* Secondary PMIC: AXP806, ... */
548 { 0xe89, 0x4e }, /* Peripheral IC: AC100, ... */
555 for (i = 0; i < ARRAY_SIZE(sunxi_rsb_addr_maps); i++) in sunxi_rsb_get_rtaddr()
559 return 0; /* 0 is an invalid runtime address */ in sunxi_rsb_get_rtaddr()
629 return 0; in of_rsb_register_devices()
663 r = platform_get_resource(pdev, IORESOURCE_MEM, 0); in sunxi_rsb_probe()
668 irq = platform_get_irq(pdev, 0); in sunxi_rsb_probe()
669 if (irq < 0) in sunxi_rsb_probe()
729 ret = devm_request_irq(dev, irq, sunxi_rsb_irq, 0, RSB_CTRL_NAME, rsb); in sunxi_rsb_probe()
743 return 0; in sunxi_rsb_probe()
762 return 0; in sunxi_rsb_remove()
790 return 0; in sunxi_rsb_init()