/kernel/linux/linux-5.10/drivers/i2c/busses/ |
H A D | i2c-pxa.c | 24 #include <linux/i2c.h> 34 #include <linux/platform_data/i2c-pxa.h> 112 * 7 GCD 1 (Disables i2c unit response to general call messages as a slave) 114 * 5 SCLE 1 (Enables the i2c clock output for master mode (drives SCL) 206 { .compatible = "mrvl,pxa-i2c", .data = (void *)REGS_PXA2XX }, 209 { .compatible = "marvell,armada-3700-i2c", .data = (void *)REGS_A3700 }, 215 { "pxa2xx-i2c", REGS_PXA2XX }, 217 { "ce4100-i2c", REGS_CE4100 }, 218 { "pxa910-i2c", REGS_PXA910 }, 219 { "armada-3700-i2c", REGS_A370 353 i2c_pxa_show_state(struct pxa_i2c *i2c, int lno, const char *fname) i2c_pxa_show_state() argument 361 i2c_pxa_scream_blue_murder(struct pxa_i2c *i2c, const char *why) i2c_pxa_scream_blue_murder() argument 392 i2c_pxa_is_slavemode(struct pxa_i2c *i2c) i2c_pxa_is_slavemode() argument 397 i2c_pxa_abort(struct pxa_i2c *i2c) i2c_pxa_abort() argument 424 i2c_pxa_wait_bus_not_busy(struct pxa_i2c *i2c) i2c_pxa_wait_bus_not_busy() argument 449 i2c_pxa_wait_master(struct pxa_i2c *i2c) i2c_pxa_wait_master() argument 484 i2c_pxa_set_master(struct pxa_i2c *i2c) i2c_pxa_set_master() argument 502 i2c_pxa_wait_slave(struct pxa_i2c *i2c) i2c_pxa_wait_slave() argument 535 i2c_pxa_set_slave(struct pxa_i2c *i2c, int errcode) i2c_pxa_set_slave() argument 569 i2c_pxa_do_reset(struct pxa_i2c *i2c) i2c_pxa_do_reset() argument 591 i2c_pxa_enable(struct pxa_i2c *i2c) i2c_pxa_enable() argument 598 i2c_pxa_reset(struct pxa_i2c *i2c) i2c_pxa_reset() argument 614 i2c_pxa_slave_txempty(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_txempty() argument 630 i2c_pxa_slave_rxfull(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_rxfull() argument 640 i2c_pxa_slave_start(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_start() argument 686 i2c_pxa_slave_stop(struct pxa_i2c *i2c) i2c_pxa_slave_stop() argument 707 struct pxa_i2c *i2c = slave->adapter->algo_data; i2c_pxa_slave_reg() local 725 struct pxa_i2c *i2c = slave->adapter->algo_data; i2c_pxa_slave_unreg() local 737 i2c_pxa_slave_txempty(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_txempty() argument 747 i2c_pxa_slave_rxfull(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_rxfull() argument 752 i2c_pxa_slave_start(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_start() argument 781 i2c_pxa_slave_stop(struct pxa_i2c *i2c) i2c_pxa_slave_stop() argument 792 i2c_pxa_start_message(struct pxa_i2c *i2c) i2c_pxa_start_message() argument 809 i2c_pxa_stop_message(struct pxa_i2c *i2c) i2c_pxa_stop_message() argument 825 i2c_pxa_send_mastercode(struct pxa_i2c *i2c) i2c_pxa_send_mastercode() argument 850 i2c_pxa_master_complete(struct pxa_i2c *i2c, int ret) i2c_pxa_master_complete() argument 862 i2c_pxa_irq_txempty(struct pxa_i2c *i2c, u32 isr) i2c_pxa_irq_txempty() argument 969 i2c_pxa_irq_rxfull(struct pxa_i2c *i2c, u32 isr) i2c_pxa_irq_rxfull() argument 1000 struct pxa_i2c *i2c = dev_id; i2c_pxa_handler() local 1050 i2c_pxa_do_xfer(struct pxa_i2c *i2c, struct i2c_msg *msg, int num) i2c_pxa_do_xfer() argument 1115 i2c_pxa_internal_xfer(struct pxa_i2c *i2c, struct i2c_msg *msgs, int num, int (*xfer)(struct pxa_i2c *, struct i2c_msg *, int num)) i2c_pxa_internal_xfer() argument 1144 struct pxa_i2c *i2c = adap->algo_data; i2c_pxa_xfer() local 1165 i2c_pxa_pio_set_master(struct pxa_i2c *i2c) i2c_pxa_pio_set_master() argument 1191 i2c_pxa_do_pio_xfer(struct pxa_i2c *i2c, struct i2c_msg *msg, int num) i2c_pxa_do_pio_xfer() argument 1233 struct pxa_i2c *i2c = adap->algo_data; i2c_pxa_pio_xfer() local 1254 i2c_pxa_probe_dt(struct platform_device *pdev, struct pxa_i2c *i2c, enum pxa_i2c_types *i2c_types) i2c_pxa_probe_dt() argument 1277 i2c_pxa_probe_pdata(struct platform_device *pdev, struct pxa_i2c *i2c, enum pxa_i2c_types *i2c_types) i2c_pxa_probe_pdata() argument 1299 struct pxa_i2c *i2c = adap->algo_data; i2c_pxa_prepare_recovery() local 1314 struct pxa_i2c *i2c = adap->algo_data; i2c_pxa_unprepare_recovery() local 1336 i2c_pxa_init_recovery(struct pxa_i2c *i2c) i2c_pxa_init_recovery() argument 1426 struct pxa_i2c *i2c; i2c_pxa_probe() local 1549 struct pxa_i2c *i2c = platform_get_drvdata(dev); i2c_pxa_remove() local 1561 struct pxa_i2c *i2c = dev_get_drvdata(dev); i2c_pxa_suspend_noirq() local 1570 struct pxa_i2c *i2c = dev_get_drvdata(dev); i2c_pxa_resume_noirq() local [all...] |
H A D | i2c-s3c2410.c | 2 /* linux/drivers/i2c/busses/i2c-s3c2410.c 13 #include <linux/i2c.h> 34 #include <linux/platform_data/i2c-s3c2410.h> 86 /* i2c controller state */ 127 .name = "s3c2410-i2c", 130 .name = "s3c2440-i2c", 133 .name = "s3c2440-hdmiphy-i2c", 139 static int i2c_s3c_irq_nextbyte(struct s3c24xx_i2c *i2c, unsigned long iicstat); 143 { .compatible = "samsung,s3c2410-i2c", 173 s3c24xx_i2c_master_complete(struct s3c24xx_i2c *i2c, int ret) s3c24xx_i2c_master_complete() argument 188 s3c24xx_i2c_disable_ack(struct s3c24xx_i2c *i2c) s3c24xx_i2c_disable_ack() argument 196 s3c24xx_i2c_enable_ack(struct s3c24xx_i2c *i2c) s3c24xx_i2c_enable_ack() argument 205 s3c24xx_i2c_disable_irq(struct s3c24xx_i2c *i2c) s3c24xx_i2c_disable_irq() argument 213 s3c24xx_i2c_enable_irq(struct s3c24xx_i2c *i2c) s3c24xx_i2c_enable_irq() argument 221 is_ack(struct s3c24xx_i2c *i2c) is_ack() argument 250 s3c24xx_i2c_message_start(struct s3c24xx_i2c *i2c, struct i2c_msg *msg) s3c24xx_i2c_message_start() argument 291 s3c24xx_i2c_stop(struct s3c24xx_i2c *i2c, int ret) s3c24xx_i2c_stop() argument 354 is_lastmsg(struct s3c24xx_i2c *i2c) is_lastmsg() argument 362 is_msglast(struct s3c24xx_i2c *i2c) is_msglast() argument 378 is_msgend(struct s3c24xx_i2c *i2c) is_msgend() argument 386 i2c_s3c_irq_nextbyte(struct s3c24xx_i2c *i2c, unsigned long iicstat) i2c_s3c_irq_nextbyte() argument 561 struct s3c24xx_i2c *i2c = dev_id; s3c24xx_i2c_irq() local 600 s3c24xx_i2c_disable_bus(struct s3c24xx_i2c *i2c) s3c24xx_i2c_disable_bus() argument 620 s3c24xx_i2c_set_master(struct s3c24xx_i2c *i2c) s3c24xx_i2c_set_master() argument 640 s3c24xx_i2c_wait_idle(struct s3c24xx_i2c *i2c) s3c24xx_i2c_wait_idle() argument 692 s3c24xx_i2c_doxfer(struct s3c24xx_i2c *i2c, struct i2c_msg *msgs, int num) s3c24xx_i2c_doxfer() argument 760 struct s3c24xx_i2c *i2c = (struct s3c24xx_i2c *)adap->algo_data; s3c24xx_i2c_xfer() local 832 s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got) s3c24xx_i2c_clockrate() argument 900 struct s3c24xx_i2c *i2c = freq_to_i2c(nb); s3c24xx_i2c_cpufreq_transition() local 927 s3c24xx_i2c_register_cpufreq(struct s3c24xx_i2c *i2c) s3c24xx_i2c_register_cpufreq() argument 935 s3c24xx_i2c_deregister_cpufreq(struct s3c24xx_i2c *i2c) s3c24xx_i2c_deregister_cpufreq() argument 942 s3c24xx_i2c_register_cpufreq(struct s3c24xx_i2c *i2c) s3c24xx_i2c_register_cpufreq() argument 947 s3c24xx_i2c_deregister_cpufreq(struct s3c24xx_i2c *i2c) s3c24xx_i2c_deregister_cpufreq() argument 953 s3c24xx_i2c_parse_dt_gpio(struct s3c24xx_i2c *i2c) s3c24xx_i2c_parse_dt_gpio() argument 972 s3c24xx_i2c_parse_dt_gpio(struct s3c24xx_i2c *i2c) s3c24xx_i2c_parse_dt_gpio() argument 981 s3c24xx_i2c_init(struct s3c24xx_i2c *i2c) s3c24xx_i2c_init() argument 1020 s3c24xx_i2c_parse_dt(struct device_node *np, struct s3c24xx_i2c *i2c) s3c24xx_i2c_parse_dt() argument 1051 s3c24xx_i2c_parse_dt(struct device_node *np, struct s3c24xx_i2c *i2c) s3c24xx_i2c_parse_dt() argument 1056 struct s3c24xx_i2c *i2c; s3c24xx_i2c_probe() local 1194 struct s3c24xx_i2c *i2c = platform_get_drvdata(pdev); s3c24xx_i2c_remove() local 1210 struct s3c24xx_i2c *i2c = dev_get_drvdata(dev); s3c24xx_i2c_suspend_noirq() local 1222 struct s3c24xx_i2c *i2c = dev_get_drvdata(dev); s3c24xx_i2c_resume_noirq() local [all...] |
H A D | i2c-ocores.c | 3 * i2c-ocores.c: I2C bus driver for OpenCores I2C controller 4 * (https://opencores.org/project/i2c/overview) 19 #include <linux/i2c.h> 22 #include <linux/platform_data/i2c-ocores.h> 49 void (*setreg)(struct ocores_i2c *i2c, int reg, u8 value); 50 u8 (*getreg)(struct ocores_i2c *i2c, int reg); 90 static void oc_setreg_8(struct ocores_i2c *i2c, int reg, u8 value) in oc_setreg_8() argument 92 iowrite8(value, i2c->base + (reg << i2c->reg_shift)); in oc_setreg_8() 95 static void oc_setreg_16(struct ocores_i2c *i2c, in argument 100 oc_setreg_32(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_32() argument 105 oc_setreg_16be(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_16be() argument 110 oc_setreg_32be(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_32be() argument 115 oc_getreg_8(struct ocores_i2c *i2c, int reg) oc_getreg_8() argument 120 oc_getreg_16(struct ocores_i2c *i2c, int reg) oc_getreg_16() argument 125 oc_getreg_32(struct ocores_i2c *i2c, int reg) oc_getreg_32() argument 130 oc_getreg_16be(struct ocores_i2c *i2c, int reg) oc_getreg_16be() argument 135 oc_getreg_32be(struct ocores_i2c *i2c, int reg) oc_getreg_32be() argument 140 oc_setreg_io_8(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_io_8() argument 145 oc_getreg_io_8(struct ocores_i2c *i2c, int reg) oc_getreg_io_8() argument 150 oc_setreg(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg() argument 155 oc_getreg(struct ocores_i2c *i2c, int reg) oc_getreg() argument 160 ocores_process(struct ocores_i2c *i2c, u8 stat) ocores_process() argument 239 struct ocores_i2c *i2c = dev_id; ocores_isr() local 257 ocores_process_timeout(struct ocores_i2c *i2c) ocores_process_timeout() argument 280 ocores_wait(struct ocores_i2c *i2c, int reg, u8 mask, u8 val, const unsigned long timeout) ocores_wait() argument 307 ocores_poll_wait(struct ocores_i2c *i2c) ocores_poll_wait() argument 349 ocores_process_polling(struct ocores_i2c *i2c) ocores_process_polling() argument 372 ocores_xfer_core(struct ocores_i2c *i2c, struct i2c_msg *msgs, int num, bool polling) ocores_xfer_core() argument 421 ocores_init(struct device *dev, struct ocores_i2c *i2c) ocores_init() argument 498 oc_getreg_grlib(struct ocores_i2c *i2c, int reg) oc_getreg_grlib() argument 512 oc_setreg_grlib(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_grlib() argument 531 ocores_i2c_of_probe(struct platform_device *pdev, struct ocores_i2c *i2c) ocores_i2c_of_probe() argument 610 struct ocores_i2c *i2c; ocores_i2c_probe() local 749 struct ocores_i2c *i2c = platform_get_drvdata(pdev); ocores_i2c_remove() local 768 struct ocores_i2c *i2c = dev_get_drvdata(dev); ocores_i2c_suspend() local 782 struct ocores_i2c *i2c = dev_get_drvdata(dev); ocores_i2c_resume() local [all...] |
H A D | i2c-digicolor.c | 13 #include <linux/i2c.h> 71 static void dc_i2c_cmd(struct dc_i2c *i2c, u8 cmd) in dc_i2c_cmd() argument 73 writeb_relaxed(cmd | II_COMMAND_GO, i2c->regs + II_COMMAND); in dc_i2c_cmd() 86 static void dc_i2c_data(struct dc_i2c *i2c, u8 data) in dc_i2c_data() argument 88 writeb_relaxed(data, i2c->regs + II_DATA); in dc_i2c_data() 91 static void dc_i2c_write_byte(struct dc_i2c *i2c, u8 byte) in dc_i2c_write_byte() argument 93 dc_i2c_data(i2c, byte); in dc_i2c_write_byte() 94 dc_i2c_cmd(i2c, II_CMD_SEND_ACK); in dc_i2c_write_byte() 97 static void dc_i2c_write_buf(struct dc_i2c *i2c) in dc_i2c_write_buf() argument 99 dc_i2c_write_byte(i2c, i2 in dc_i2c_write_buf() 102 dc_i2c_next_read(struct dc_i2c *i2c) dc_i2c_next_read() argument 109 dc_i2c_stop(struct dc_i2c *i2c) dc_i2c_stop() argument 118 dc_i2c_read_byte(struct dc_i2c *i2c) dc_i2c_read_byte() argument 123 dc_i2c_read_buf(struct dc_i2c *i2c) dc_i2c_read_buf() argument 129 dc_i2c_set_irq(struct dc_i2c *i2c, int enable) dc_i2c_set_irq() argument 136 dc_i2c_cmd_status(struct dc_i2c *i2c) dc_i2c_cmd_status() argument 143 dc_i2c_start_msg(struct dc_i2c *i2c, int first) dc_i2c_start_msg() argument 161 struct dc_i2c *i2c = dev_id; dc_i2c_irq() local 214 dc_i2c_xfer_msg(struct dc_i2c *i2c, struct i2c_msg *msg, int first, int last) dc_i2c_xfer_msg() argument 246 struct dc_i2c *i2c = adap->algo_data; dc_i2c_xfer() local 258 dc_i2c_init_hw(struct dc_i2c *i2c) dc_i2c_init_hw() argument 292 struct dc_i2c *i2c; dc_i2c_probe() local 353 struct dc_i2c *i2c = platform_get_drvdata(pdev); dc_i2c_remove() local [all...] |
H A D | i2c-xiic.c | 3 * i2c-xiic.c 24 #include <linux/i2c.h> 27 #include <linux/platform_data/i2c-xiic.h> 34 #define DRIVER_NAME "xiic-i2c" 170 #define xiic_tx_space(i2c) ((i2c)->tx_msg->len - (i2c)->tx_pos) 171 #define xiic_rx_space(i2c) ((i2c)->rx_msg->len - (i2c) 184 xiic_setreg8(struct xiic_i2c *i2c, int reg, u8 value) xiic_setreg8() argument 192 xiic_getreg8(struct xiic_i2c *i2c, int reg) xiic_getreg8() argument 203 xiic_setreg16(struct xiic_i2c *i2c, int reg, u16 value) xiic_setreg16() argument 211 xiic_setreg32(struct xiic_i2c *i2c, int reg, int value) xiic_setreg32() argument 219 xiic_getreg32(struct xiic_i2c *i2c, int reg) xiic_getreg32() argument 230 xiic_irq_dis(struct xiic_i2c *i2c, u32 mask) xiic_irq_dis() argument 236 xiic_irq_en(struct xiic_i2c *i2c, u32 mask) xiic_irq_en() argument 242 xiic_irq_clr(struct xiic_i2c *i2c, u32 mask) xiic_irq_clr() argument 248 xiic_irq_clr_en(struct xiic_i2c *i2c, u32 mask) xiic_irq_clr_en() argument 254 xiic_clear_rx_fifo(struct xiic_i2c *i2c) xiic_clear_rx_fifo() argument 273 xiic_reinit(struct xiic_i2c *i2c) xiic_reinit() argument 301 xiic_deinit(struct xiic_i2c *i2c) xiic_deinit() argument 312 xiic_read_rx(struct xiic_i2c *i2c) xiic_read_rx() argument 337 xiic_tx_fifo_space(struct xiic_i2c *i2c) xiic_tx_fifo_space() argument 343 xiic_fill_tx_fifo(struct xiic_i2c *i2c) xiic_fill_tx_fifo() argument 364 xiic_wakeup(struct xiic_i2c *i2c, int code) xiic_wakeup() argument 375 struct xiic_i2c *i2c = dev_id; xiic_process() local 533 xiic_bus_busy(struct xiic_i2c *i2c) xiic_bus_busy() argument 540 xiic_busy(struct xiic_i2c *i2c) xiic_busy() argument 570 xiic_start_recv(struct xiic_i2c *i2c) xiic_start_recv() argument 610 xiic_start_send(struct xiic_i2c *i2c) xiic_start_send() argument 642 struct xiic_i2c *i2c = dev_id; xiic_isr() local 660 __xiic_start_xfer(struct xiic_i2c *i2c) __xiic_start_xfer() argument 704 xiic_start_xfer(struct xiic_i2c *i2c) xiic_start_xfer() argument 720 struct xiic_i2c *i2c = i2c_get_adapdata(adap); xiic_xfer() local 784 struct xiic_i2c *i2c; xiic_i2c_probe() local 888 struct xiic_i2c *i2c = platform_get_drvdata(pdev); xiic_i2c_remove() local 918 struct xiic_i2c *i2c = dev_get_drvdata(dev); xiic_i2c_runtime_suspend() local 927 struct xiic_i2c *i2c = dev_get_drvdata(dev); xiic_i2c_runtime_resume() local [all...] |
H A D | i2c-zx2967.c | 10 #include <linux/i2c.h> 53 #define DEV(i2c) ((i2c)->adap.dev.parent) 69 static void zx2967_i2c_writel(struct zx2967_i2c *i2c, in zx2967_i2c_writel() argument 72 writel_relaxed(val, i2c->reg_base + reg); in zx2967_i2c_writel() 75 static u32 zx2967_i2c_readl(struct zx2967_i2c *i2c, unsigned long reg) in zx2967_i2c_readl() argument 77 return readl_relaxed(i2c->reg_base + reg); in zx2967_i2c_readl() 80 static void zx2967_i2c_writesb(struct zx2967_i2c *i2c, in zx2967_i2c_writesb() argument 83 writesb(i2c->reg_base + reg, data, len); in zx2967_i2c_writesb() 86 static void zx2967_i2c_readsb(struct zx2967_i2c *i2c, in zx2967_i2c_readsb() argument 92 zx2967_i2c_start_ctrl(struct zx2967_i2c *i2c) zx2967_i2c_start_ctrl() argument 111 zx2967_i2c_flush_fifos(struct zx2967_i2c *i2c) zx2967_i2c_flush_fifos() argument 128 zx2967_i2c_empty_rx_fifo(struct zx2967_i2c *i2c, u32 size) zx2967_i2c_empty_rx_fifo() argument 150 zx2967_i2c_fill_tx_fifo(struct zx2967_i2c *i2c) zx2967_i2c_fill_tx_fifo() argument 177 zx2967_i2c_reset_hardware(struct zx2967_i2c *i2c) zx2967_i2c_reset_hardware() argument 198 zx2967_i2c_isr_clr(struct zx2967_i2c *i2c) zx2967_i2c_isr_clr() argument 210 struct zx2967_i2c *i2c = (struct zx2967_i2c *)dev_id; zx2967_i2c_isr() local 229 zx2967_set_addr(struct zx2967_i2c *i2c, u16 addr) zx2967_set_addr() argument 245 zx2967_i2c_xfer_bytes(struct zx2967_i2c *i2c, u32 bytes) zx2967_i2c_xfer_bytes() argument 274 zx2967_i2c_xfer_msg(struct zx2967_i2c *i2c, struct i2c_msg *msg) zx2967_i2c_xfer_msg() argument 308 struct zx2967_i2c *i2c = i2c_get_adapdata(adap); zx2967_i2c_xfer() local 324 zx2967_smbus_xfer_prepare(struct zx2967_i2c *i2c, u16 addr, char read_write, u8 command, int size, union i2c_smbus_data *data) zx2967_smbus_xfer_prepare() argument 358 zx2967_smbus_xfer_read(struct zx2967_i2c *i2c, int size, union i2c_smbus_data *data) zx2967_smbus_xfer_read() argument 402 zx2967_smbus_xfer_write(struct zx2967_i2c *i2c) zx2967_smbus_xfer_write() argument 427 struct zx2967_i2c *i2c = i2c_get_adapdata(adap); zx2967_smbus_xfer() local 464 struct zx2967_i2c *i2c = dev_get_drvdata(dev); zx2967_i2c_suspend() local 474 struct zx2967_i2c *i2c = dev_get_drvdata(dev); zx2967_i2c_resume() local 503 struct zx2967_i2c *i2c; zx2967_i2c_probe() local 581 struct zx2967_i2c *i2c = platform_get_drvdata(pdev); zx2967_i2c_remove() local [all...] |
H A D | i2c-img-scb.c | 74 #include <linux/i2c.h> 294 /* Timing parameters for i2c modes (in ns) */ 414 static void img_i2c_writel(struct img_i2c *i2c, u32 offset, u32 value) in img_i2c_writel() argument 416 writel(value, i2c->base + offset); in img_i2c_writel() 419 static u32 img_i2c_readl(struct img_i2c *i2c, u32 offset) in img_i2c_readl() argument 421 return readl(i2c->base + offset); in img_i2c_readl() 436 static void img_i2c_wr_rd_fence(struct img_i2c *i2c) in img_i2c_wr_rd_fence() argument 438 if (i2c->need_wr_rd_fence) { in img_i2c_wr_rd_fence() 439 img_i2c_writel(i2c, SCB_CORE_REV_REG, 0); in img_i2c_wr_rd_fence() 440 img_i2c_writel(i2c, SCB_CORE_REV_RE in img_i2c_wr_rd_fence() 444 img_i2c_switch_mode(struct img_i2c *i2c, enum img_i2c_mode mode) img_i2c_switch_mode() argument 451 img_i2c_raw_op(struct img_i2c *i2c) img_i2c_raw_op() argument 472 img_i2c_atomic_op(struct img_i2c *i2c, int cmd, u8 data) img_i2c_atomic_op() argument 504 img_i2c_atomic_start(struct img_i2c *i2c) img_i2c_atomic_start() argument 511 img_i2c_soft_reset(struct img_i2c *i2c) img_i2c_soft_reset() argument 530 img_i2c_transaction_halt(struct img_i2c *i2c, bool t_halt) img_i2c_transaction_halt() argument 546 img_i2c_read_fifo(struct img_i2c *i2c) img_i2c_read_fifo() argument 567 img_i2c_write_fifo(struct img_i2c *i2c) img_i2c_write_fifo() argument 588 img_i2c_read(struct img_i2c *i2c) img_i2c_read() argument 602 img_i2c_write(struct img_i2c *i2c) img_i2c_write() argument 623 img_i2c_complete_transaction(struct img_i2c *i2c, int status) img_i2c_complete_transaction() argument 633 img_i2c_raw_atomic_delay_handler(struct img_i2c *i2c, u32 int_status, u32 line_status) img_i2c_raw_atomic_delay_handler() argument 642 img_i2c_raw(struct img_i2c *i2c, u32 int_status, u32 line_status) img_i2c_raw() argument 654 img_i2c_sequence(struct img_i2c *i2c, u32 int_status) img_i2c_sequence() argument 704 img_i2c_reset_start(struct img_i2c *i2c) img_i2c_reset_start() argument 718 img_i2c_stop_start(struct img_i2c *i2c) img_i2c_stop_start() argument 732 img_i2c_atomic(struct img_i2c *i2c, u32 int_status, u32 line_status) img_i2c_atomic() argument 834 struct img_i2c *i2c = from_timer(i2c, t, check_timer); img_i2c_check_timer() local 853 img_i2c_auto(struct img_i2c *i2c, unsigned int int_status, unsigned int line_status) img_i2c_auto() argument 916 struct img_i2c *i2c = (struct img_i2c *)dev_id; img_i2c_isr() local 1007 img_i2c_reset_bus(struct img_i2c *i2c) img_i2c_reset_bus() argument 1027 struct img_i2c *i2c = i2c_get_adapdata(adap); img_i2c_xfer() local 1153 img_i2c_init(struct img_i2c *i2c) img_i2c_init() argument 1332 struct img_i2c *i2c; img_i2c_probe() local 1418 struct img_i2c *i2c = platform_get_drvdata(dev); img_i2c_remove() local 1430 struct img_i2c *i2c = dev_get_drvdata(dev); img_i2c_runtime_suspend() local 1440 struct img_i2c *i2c = dev_get_drvdata(dev); img_i2c_runtime_resume() local 1462 struct img_i2c *i2c = dev_get_drvdata(dev); img_i2c_suspend() local 1476 struct img_i2c *i2c = dev_get_drvdata(dev); img_i2c_resume() local [all...] |
H A D | i2c-synquacer.c | 12 #include <linux/i2c.h> 149 static inline int is_lastmsg(struct synquacer_i2c *i2c) in is_lastmsg() argument 151 return i2c->msg_idx >= (i2c->msg_num - 1); in is_lastmsg() 154 static inline int is_msglast(struct synquacer_i2c *i2c) in is_msglast() argument 156 return i2c->msg_ptr == (i2c->msg->len - 1); in is_msglast() 159 static inline int is_msgend(struct synquacer_i2c *i2c) in is_msgend() argument 161 return i2c->msg_ptr >= i2c in is_msgend() 164 calc_timeout_ms(struct synquacer_i2c *i2c, struct i2c_msg *msgs, int num) calc_timeout_ms() argument 177 synquacer_i2c_stop(struct synquacer_i2c *i2c, int ret) synquacer_i2c_stop() argument 198 synquacer_i2c_hw_init(struct synquacer_i2c *i2c) synquacer_i2c_hw_init() argument 249 synquacer_i2c_hw_reset(struct synquacer_i2c *i2c) synquacer_i2c_hw_reset() argument 258 synquacer_i2c_master_start(struct synquacer_i2c *i2c, struct i2c_msg *pmsg) synquacer_i2c_master_start() argument 310 synquacer_i2c_doxfer(struct synquacer_i2c *i2c, struct i2c_msg *msgs, int num) synquacer_i2c_doxfer() argument 359 struct synquacer_i2c *i2c = dev_id; synquacer_i2c_isr() local 497 struct synquacer_i2c *i2c; synquacer_i2c_xfer() local 537 struct synquacer_i2c *i2c; synquacer_i2c_probe() local 623 struct synquacer_i2c *i2c = platform_get_drvdata(pdev); synquacer_i2c_remove() local [all...] |
H A D | i2c-meson.c | 11 #include <linux/i2c.h> 109 static void meson_i2c_set_mask(struct meson_i2c *i2c, int reg, u32 mask, in meson_i2c_set_mask() argument 114 data = readl(i2c->regs + reg); in meson_i2c_set_mask() 117 writel(data, i2c->regs + reg); in meson_i2c_set_mask() 120 static void meson_i2c_reset_tokens(struct meson_i2c *i2c) in meson_i2c_reset_tokens() argument 122 i2c->tokens[0] = 0; in meson_i2c_reset_tokens() 123 i2c->tokens[1] = 0; in meson_i2c_reset_tokens() 124 i2c->num_tokens = 0; in meson_i2c_reset_tokens() 127 static void meson_i2c_add_token(struct meson_i2c *i2c, int token) in meson_i2c_add_token() argument 129 if (i2c in meson_i2c_add_token() 137 meson_i2c_set_clk_div(struct meson_i2c *i2c, unsigned int freq) meson_i2c_set_clk_div() argument 165 meson_i2c_get_data(struct meson_i2c *i2c, char *buf, int len) meson_i2c_get_data() argument 183 meson_i2c_put_data(struct meson_i2c *i2c, char *buf, int len) meson_i2c_put_data() argument 201 meson_i2c_prepare_xfer(struct meson_i2c *i2c) meson_i2c_prepare_xfer() argument 228 meson_i2c_transfer_complete(struct meson_i2c *i2c, u32 ctrl) meson_i2c_transfer_complete() argument 254 struct meson_i2c *i2c = dev_id; meson_i2c_irq() local 287 meson_i2c_do_start(struct meson_i2c *i2c, struct i2c_msg *msg) meson_i2c_do_start() argument 302 meson_i2c_xfer_msg(struct meson_i2c *i2c, struct i2c_msg *msg, int last, bool atomic) meson_i2c_xfer_msg() argument 371 struct meson_i2c *i2c = adap->algo_data; meson_i2c_xfer_messages() local 409 struct meson_i2c *i2c; meson_i2c_probe() local 485 struct meson_i2c *i2c = platform_get_drvdata(pdev); meson_i2c_remove() local [all...] |
H A D | Makefile | 3 # Makefile for the i2c bus drivers. 7 obj-$(CONFIG_I2C_SCMI) += i2c-scmi.o 10 obj-$(CONFIG_I2C_ALI1535) += i2c-ali1535.o 11 obj-$(CONFIG_I2C_ALI1563) += i2c-ali1563.o 12 obj-$(CONFIG_I2C_ALI15X3) += i2c-ali15x3.o 13 obj-$(CONFIG_I2C_AMD756) += i2c-amd756.o 14 obj-$(CONFIG_I2C_AMD756_S4882) += i2c-amd756-s4882.o 15 obj-$(CONFIG_I2C_AMD8111) += i2c-amd8111.o 16 obj-$(CONFIG_I2C_CHT_WC) += i2c-cht-wc.o 17 obj-$(CONFIG_I2C_I801) += i2c [all...] |
H A D | i2c-rk3x.c | 11 #include <linux/i2c.h> 163 * @grf_offset: offset inside the grf regmap for setting the i2c type 164 * @calc_timings: Callback function for i2c timing information calculated 180 * @clk_rate_nb: i2c clk rate change notify 183 * @lock: spinlock for the i2c bus 184 * @wait: the waitqueue to wait for i2c transfer 186 * @msg: current i2c message 187 * @addr: addr of i2c slave device 188 * @mode: mode of i2c transfer 190 * @state: state of i2c transfe 226 i2c_writel(struct rk3x_i2c *i2c, u32 value, unsigned int offset) i2c_writel() argument 232 i2c_readl(struct rk3x_i2c *i2c, unsigned int offset) i2c_readl() argument 238 rk3x_i2c_clean_ipd(struct rk3x_i2c *i2c) rk3x_i2c_clean_ipd() argument 247 rk3x_i2c_start(struct rk3x_i2c *i2c) rk3x_i2c_start() argument 268 rk3x_i2c_stop(struct rk3x_i2c *i2c, int error) rk3x_i2c_stop() argument 307 rk3x_i2c_prepare_read(struct rk3x_i2c *i2c) rk3x_i2c_prepare_read() argument 339 rk3x_i2c_fill_transmit_buf(struct rk3x_i2c *i2c) rk3x_i2c_fill_transmit_buf() argument 373 rk3x_i2c_handle_start(struct rk3x_i2c *i2c, unsigned int ipd) rk3x_i2c_handle_start() argument 401 rk3x_i2c_handle_write(struct rk3x_i2c *i2c, unsigned int ipd) rk3x_i2c_handle_write() argument 420 rk3x_i2c_handle_read(struct rk3x_i2c *i2c, unsigned int ipd) rk3x_i2c_handle_read() argument 454 rk3x_i2c_handle_stop(struct rk3x_i2c *i2c, unsigned int ipd) rk3x_i2c_handle_stop() argument 482 struct rk3x_i2c *i2c = dev_id; rk3x_i2c_irq() local 874 rk3x_i2c_adapt_div(struct rk3x_i2c *i2c, unsigned long clk_rate) rk3x_i2c_adapt_div() argument 930 struct rk3x_i2c *i2c = container_of(nb, struct rk3x_i2c, clk_rate_nb); rk3x_i2c_clk_notifier_cb() local 974 rk3x_i2c_setup(struct rk3x_i2c *i2c, struct i2c_msg *msgs, int num) rk3x_i2c_setup() argument 1046 rk3x_i2c_wait_xfer_poll(struct rk3x_i2c *i2c) rk3x_i2c_wait_xfer_poll() argument 1062 struct rk3x_i2c *i2c = (struct rk3x_i2c *)adap->algo_data; rk3x_i2c_xfer_common() local 1152 struct rk3x_i2c *i2c = dev_get_drvdata(dev); rk3x_i2c_resume() local 1233 struct rk3x_i2c *i2c; rk3x_i2c_probe() local 1370 struct rk3x_i2c *i2c = platform_get_drvdata(pdev); rk3x_i2c_remove() local [all...] |
H A D | i2c-octeon-core.c | 7 * This file contains the shared part of the driver for the i2c adapter in 16 #include <linux/i2c.h> 21 #include "i2c-octeon-core.h" 26 struct octeon_i2c *i2c = dev_id; in octeon_i2c_isr() local 28 i2c->int_disable(i2c); in octeon_i2c_isr() 29 wake_up(&i2c->queue); in octeon_i2c_isr() 34 static bool octeon_i2c_test_iflg(struct octeon_i2c *i2c) in octeon_i2c_test_iflg() argument 36 return (octeon_i2c_ctl_read(i2c) & TWSI_CTL_IFLG); in octeon_i2c_test_iflg() 41 * @i2c 45 octeon_i2c_wait(struct octeon_i2c *i2c) octeon_i2c_wait() argument 81 octeon_i2c_hlc_test_valid(struct octeon_i2c *i2c) octeon_i2c_hlc_test_valid() argument 86 octeon_i2c_hlc_int_clear(struct octeon_i2c *i2c) octeon_i2c_hlc_int_clear() argument 95 octeon_i2c_hlc_enable(struct octeon_i2c *i2c) octeon_i2c_hlc_enable() argument 124 octeon_i2c_hlc_disable(struct octeon_i2c *i2c) octeon_i2c_hlc_disable() argument 139 octeon_i2c_hlc_wait(struct octeon_i2c *i2c) octeon_i2c_hlc_wait() argument 177 octeon_i2c_check_status(struct octeon_i2c *i2c, int final_read) octeon_i2c_check_status() argument 248 octeon_i2c_recovery(struct octeon_i2c *i2c) octeon_i2c_recovery() argument 265 octeon_i2c_start(struct octeon_i2c *i2c) octeon_i2c_start() argument 289 octeon_i2c_stop(struct octeon_i2c *i2c) octeon_i2c_stop() argument 306 octeon_i2c_read(struct octeon_i2c *i2c, int target, u8 *data, u16 *rlength, bool recv_len) octeon_i2c_read() argument 374 octeon_i2c_write(struct octeon_i2c *i2c, int target, const u8 *data, int length) octeon_i2c_write() argument 403 octeon_i2c_hlc_read(struct octeon_i2c *i2c, struct i2c_msg *msgs) octeon_i2c_hlc_read() argument 445 octeon_i2c_hlc_write(struct octeon_i2c *i2c, struct i2c_msg *msgs) octeon_i2c_hlc_write() argument 489 octeon_i2c_hlc_comp_read(struct octeon_i2c *i2c, struct i2c_msg *msgs) octeon_i2c_hlc_comp_read() argument 543 octeon_i2c_hlc_comp_write(struct octeon_i2c *i2c, struct i2c_msg *msgs) octeon_i2c_hlc_comp_write() argument 607 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_xfer() local 658 octeon_i2c_set_clock(struct octeon_i2c *i2c) octeon_i2c_set_clock() argument 699 octeon_i2c_init_lowlevel(struct octeon_i2c *i2c) octeon_i2c_init_lowlevel() argument 728 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_get_scl() local 737 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_set_scl() local 744 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_get_sda() local 753 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_prepare_recovery() local 771 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_unprepare_recovery() local [all...] |
H A D | i2c-pca-platform.c | 17 #include <linux/i2c.h> 20 #include <linux/i2c-algo-pca.h> 21 #include <linux/platform_data/i2c-pca-platform.h> 44 struct i2c_pca_pf_data *i2c = pd; in i2c_pca_pf_readbyte8() local 45 return ioread8(i2c->reg_base + reg); in i2c_pca_pf_readbyte8() 50 struct i2c_pca_pf_data *i2c = pd; in i2c_pca_pf_readbyte16() local 51 return ioread8(i2c->reg_base + reg * 2); in i2c_pca_pf_readbyte16() 56 struct i2c_pca_pf_data *i2c = pd; in i2c_pca_pf_readbyte32() local 57 return ioread8(i2c->reg_base + reg * 4); in i2c_pca_pf_readbyte32() 62 struct i2c_pca_pf_data *i2c in i2c_pca_pf_writebyte8() local 68 struct i2c_pca_pf_data *i2c = pd; i2c_pca_pf_writebyte16() local 74 struct i2c_pca_pf_data *i2c = pd; i2c_pca_pf_writebyte32() local 81 struct i2c_pca_pf_data *i2c = pd; i2c_pca_pf_waitforcompletion() local 106 struct i2c_pca_pf_data *i2c = pd; i2c_pca_pf_dummyreset() local 113 struct i2c_pca_pf_data *i2c = pd; i2c_pca_pf_resetchip() local 122 struct i2c_pca_pf_data *i2c = dev_id; i2c_pca_pf_handler() local 135 struct i2c_pca_pf_data *i2c; i2c_pca_pf_probe() local 230 struct i2c_pca_pf_data *i2c = platform_get_drvdata(pdev); i2c_pca_pf_remove() local [all...] |
H A D | i2c-jz4780.c | 15 #include <linux/i2c.h> 171 static inline unsigned short jz4780_i2c_readw(struct jz4780_i2c *i2c, in jz4780_i2c_readw() argument 174 return readw(i2c->iomem + offset); in jz4780_i2c_readw() 177 static inline void jz4780_i2c_writew(struct jz4780_i2c *i2c, in jz4780_i2c_writew() argument 180 writew(val, i2c->iomem + offset); in jz4780_i2c_writew() 183 static int jz4780_i2c_disable(struct jz4780_i2c *i2c) in jz4780_i2c_disable() argument 188 jz4780_i2c_writew(i2c, JZ4780_I2C_ENB, 0); in jz4780_i2c_disable() 191 regval = jz4780_i2c_readw(i2c, JZ4780_I2C_ENSTA); in jz4780_i2c_disable() 198 dev_err(&i2c->adap.dev, "disable failed: ENSTA=0x%04x\n", regval); in jz4780_i2c_disable() 202 static int jz4780_i2c_enable(struct jz4780_i2c *i2c) in jz4780_i2c_enable() argument 221 jz4780_i2c_set_target(struct jz4780_i2c *i2c, unsigned char address) jz4780_i2c_set_target() argument 247 jz4780_i2c_set_speed(struct jz4780_i2c *i2c) jz4780_i2c_set_speed() argument 361 jz4780_i2c_cleanup(struct jz4780_i2c *i2c) jz4780_i2c_cleanup() argument 406 jz4780_i2c_prepare(struct jz4780_i2c *i2c) jz4780_i2c_prepare() argument 412 jz4780_i2c_send_rcmd(struct jz4780_i2c *i2c, int cmd_count, int cmd_left) jz4780_i2c_send_rcmd() argument 428 jz4780_i2c_trans_done(struct jz4780_i2c *i2c) jz4780_i2c_trans_done() argument 439 struct jz4780_i2c *i2c = dev_id; jz4780_i2c_irq() local 558 jz4780_i2c_txabrt(struct jz4780_i2c *i2c, int src) jz4780_i2c_txabrt() argument 564 jz4780_i2c_xfer_read(struct jz4780_i2c *i2c, unsigned char *buf, int len, int cnt, int idx) jz4780_i2c_xfer_read() argument 625 jz4780_i2c_xfer_write(struct jz4780_i2c *i2c, unsigned char *buf, int len, int cnt, int idx) jz4780_i2c_xfer_write() argument 696 struct jz4780_i2c *i2c = adap->algo_data; jz4780_i2c_xfer() local 767 struct jz4780_i2c *i2c; jz4780_i2c_probe() local 851 struct jz4780_i2c *i2c = platform_get_drvdata(pdev); jz4780_i2c_remove() local [all...] |
/kernel/linux/linux-6.6/drivers/i2c/busses/ |
H A D | i2c-pxa.c | 24 #include <linux/i2c.h> 34 #include <linux/platform_data/i2c-pxa.h> 112 * 7 GCD 1 (Disables i2c unit response to general call messages as a slave) 114 * 5 SCLE 1 (Enables the i2c clock output for master mode (drives SCL) 206 { .compatible = "mrvl,pxa-i2c", .data = (void *)REGS_PXA2XX }, 209 { .compatible = "marvell,armada-3700-i2c", .data = (void *)REGS_A3700 }, 215 { "pxa2xx-i2c", REGS_PXA2XX }, 217 { "ce4100-i2c", REGS_CE4100 }, 218 { "pxa910-i2c", REGS_PXA910 }, 219 { "armada-3700-i2c", REGS_A370 353 i2c_pxa_show_state(struct pxa_i2c *i2c, int lno, const char *fname) i2c_pxa_show_state() argument 361 i2c_pxa_scream_blue_murder(struct pxa_i2c *i2c, const char *why) i2c_pxa_scream_blue_murder() argument 392 i2c_pxa_is_slavemode(struct pxa_i2c *i2c) i2c_pxa_is_slavemode() argument 397 i2c_pxa_abort(struct pxa_i2c *i2c) i2c_pxa_abort() argument 424 i2c_pxa_wait_bus_not_busy(struct pxa_i2c *i2c) i2c_pxa_wait_bus_not_busy() argument 449 i2c_pxa_wait_master(struct pxa_i2c *i2c) i2c_pxa_wait_master() argument 484 i2c_pxa_set_master(struct pxa_i2c *i2c) i2c_pxa_set_master() argument 502 i2c_pxa_wait_slave(struct pxa_i2c *i2c) i2c_pxa_wait_slave() argument 535 i2c_pxa_set_slave(struct pxa_i2c *i2c, int errcode) i2c_pxa_set_slave() argument 569 i2c_pxa_do_reset(struct pxa_i2c *i2c) i2c_pxa_do_reset() argument 591 i2c_pxa_enable(struct pxa_i2c *i2c) i2c_pxa_enable() argument 598 i2c_pxa_reset(struct pxa_i2c *i2c) i2c_pxa_reset() argument 614 i2c_pxa_slave_txempty(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_txempty() argument 630 i2c_pxa_slave_rxfull(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_rxfull() argument 640 i2c_pxa_slave_start(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_start() argument 686 i2c_pxa_slave_stop(struct pxa_i2c *i2c) i2c_pxa_slave_stop() argument 707 struct pxa_i2c *i2c = slave->adapter->algo_data; i2c_pxa_slave_reg() local 725 struct pxa_i2c *i2c = slave->adapter->algo_data; i2c_pxa_slave_unreg() local 737 i2c_pxa_slave_txempty(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_txempty() argument 747 i2c_pxa_slave_rxfull(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_rxfull() argument 752 i2c_pxa_slave_start(struct pxa_i2c *i2c, u32 isr) i2c_pxa_slave_start() argument 781 i2c_pxa_slave_stop(struct pxa_i2c *i2c) i2c_pxa_slave_stop() argument 792 i2c_pxa_start_message(struct pxa_i2c *i2c) i2c_pxa_start_message() argument 809 i2c_pxa_stop_message(struct pxa_i2c *i2c) i2c_pxa_stop_message() argument 825 i2c_pxa_send_mastercode(struct pxa_i2c *i2c) i2c_pxa_send_mastercode() argument 850 i2c_pxa_master_complete(struct pxa_i2c *i2c, int ret) i2c_pxa_master_complete() argument 862 i2c_pxa_irq_txempty(struct pxa_i2c *i2c, u32 isr) i2c_pxa_irq_txempty() argument 969 i2c_pxa_irq_rxfull(struct pxa_i2c *i2c, u32 isr) i2c_pxa_irq_rxfull() argument 1000 struct pxa_i2c *i2c = dev_id; i2c_pxa_handler() local 1050 i2c_pxa_do_xfer(struct pxa_i2c *i2c, struct i2c_msg *msg, int num) i2c_pxa_do_xfer() argument 1115 i2c_pxa_internal_xfer(struct pxa_i2c *i2c, struct i2c_msg *msgs, int num, int (*xfer)(struct pxa_i2c *, struct i2c_msg *, int num)) i2c_pxa_internal_xfer() argument 1144 struct pxa_i2c *i2c = adap->algo_data; i2c_pxa_xfer() local 1165 i2c_pxa_pio_set_master(struct pxa_i2c *i2c) i2c_pxa_pio_set_master() argument 1191 i2c_pxa_do_pio_xfer(struct pxa_i2c *i2c, struct i2c_msg *msg, int num) i2c_pxa_do_pio_xfer() argument 1233 struct pxa_i2c *i2c = adap->algo_data; i2c_pxa_pio_xfer() local 1254 i2c_pxa_probe_dt(struct platform_device *pdev, struct pxa_i2c *i2c, enum pxa_i2c_types *i2c_types) i2c_pxa_probe_dt() argument 1275 i2c_pxa_probe_pdata(struct platform_device *pdev, struct pxa_i2c *i2c, enum pxa_i2c_types *i2c_types) i2c_pxa_probe_pdata() argument 1297 struct pxa_i2c *i2c = adap->algo_data; i2c_pxa_prepare_recovery() local 1312 struct pxa_i2c *i2c = adap->algo_data; i2c_pxa_unprepare_recovery() local 1334 i2c_pxa_init_recovery(struct pxa_i2c *i2c) i2c_pxa_init_recovery() argument 1424 struct pxa_i2c *i2c; i2c_pxa_probe() local 1545 struct pxa_i2c *i2c = platform_get_drvdata(dev); i2c_pxa_remove() local 1554 struct pxa_i2c *i2c = dev_get_drvdata(dev); i2c_pxa_suspend_noirq() local 1563 struct pxa_i2c *i2c = dev_get_drvdata(dev); i2c_pxa_resume_noirq() local [all...] |
H A D | i2c-digicolor.c | 13 #include <linux/i2c.h> 71 static void dc_i2c_cmd(struct dc_i2c *i2c, u8 cmd) in dc_i2c_cmd() argument 73 writeb_relaxed(cmd | II_COMMAND_GO, i2c->regs + II_COMMAND); in dc_i2c_cmd() 86 static void dc_i2c_data(struct dc_i2c *i2c, u8 data) in dc_i2c_data() argument 88 writeb_relaxed(data, i2c->regs + II_DATA); in dc_i2c_data() 91 static void dc_i2c_write_byte(struct dc_i2c *i2c, u8 byte) in dc_i2c_write_byte() argument 93 dc_i2c_data(i2c, byte); in dc_i2c_write_byte() 94 dc_i2c_cmd(i2c, II_CMD_SEND_ACK); in dc_i2c_write_byte() 97 static void dc_i2c_write_buf(struct dc_i2c *i2c) in dc_i2c_write_buf() argument 99 dc_i2c_write_byte(i2c, i2 in dc_i2c_write_buf() 102 dc_i2c_next_read(struct dc_i2c *i2c) dc_i2c_next_read() argument 109 dc_i2c_stop(struct dc_i2c *i2c) dc_i2c_stop() argument 118 dc_i2c_read_byte(struct dc_i2c *i2c) dc_i2c_read_byte() argument 123 dc_i2c_read_buf(struct dc_i2c *i2c) dc_i2c_read_buf() argument 129 dc_i2c_set_irq(struct dc_i2c *i2c, int enable) dc_i2c_set_irq() argument 136 dc_i2c_cmd_status(struct dc_i2c *i2c) dc_i2c_cmd_status() argument 143 dc_i2c_start_msg(struct dc_i2c *i2c, int first) dc_i2c_start_msg() argument 161 struct dc_i2c *i2c = dev_id; dc_i2c_irq() local 213 dc_i2c_xfer_msg(struct dc_i2c *i2c, struct i2c_msg *msg, int first, int last) dc_i2c_xfer_msg() argument 245 struct dc_i2c *i2c = adap->algo_data; dc_i2c_xfer() local 257 dc_i2c_init_hw(struct dc_i2c *i2c) dc_i2c_init_hw() argument 291 struct dc_i2c *i2c; dc_i2c_probe() local 352 struct dc_i2c *i2c = platform_get_drvdata(pdev); dc_i2c_remove() local [all...] |
H A D | i2c-ocores.c | 3 * i2c-ocores.c: I2C bus driver for OpenCores I2C controller 4 * (https://opencores.org/project/i2c/overview) 19 #include <linux/i2c.h> 22 #include <linux/platform_data/i2c-ocores.h> 49 void (*setreg)(struct ocores_i2c *i2c, int reg, u8 value); 50 u8 (*getreg)(struct ocores_i2c *i2c, int reg); 89 static void oc_setreg_8(struct ocores_i2c *i2c, int reg, u8 value) in oc_setreg_8() argument 91 iowrite8(value, i2c->base + (reg << i2c->reg_shift)); in oc_setreg_8() 94 static void oc_setreg_16(struct ocores_i2c *i2c, in argument 99 oc_setreg_32(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_32() argument 104 oc_setreg_16be(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_16be() argument 109 oc_setreg_32be(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_32be() argument 114 oc_getreg_8(struct ocores_i2c *i2c, int reg) oc_getreg_8() argument 119 oc_getreg_16(struct ocores_i2c *i2c, int reg) oc_getreg_16() argument 124 oc_getreg_32(struct ocores_i2c *i2c, int reg) oc_getreg_32() argument 129 oc_getreg_16be(struct ocores_i2c *i2c, int reg) oc_getreg_16be() argument 134 oc_getreg_32be(struct ocores_i2c *i2c, int reg) oc_getreg_32be() argument 139 oc_setreg_io_8(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_io_8() argument 144 oc_getreg_io_8(struct ocores_i2c *i2c, int reg) oc_getreg_io_8() argument 149 oc_setreg(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg() argument 154 oc_getreg(struct ocores_i2c *i2c, int reg) oc_getreg() argument 159 ocores_process(struct ocores_i2c *i2c, u8 stat) ocores_process() argument 238 struct ocores_i2c *i2c = dev_id; ocores_isr() local 256 ocores_process_timeout(struct ocores_i2c *i2c) ocores_process_timeout() argument 279 ocores_wait(struct ocores_i2c *i2c, int reg, u8 mask, u8 val, const unsigned long timeout) ocores_wait() argument 306 ocores_poll_wait(struct ocores_i2c *i2c) ocores_poll_wait() argument 348 ocores_process_polling(struct ocores_i2c *i2c) ocores_process_polling() argument 371 ocores_xfer_core(struct ocores_i2c *i2c, struct i2c_msg *msgs, int num, bool polling) ocores_xfer_core() argument 420 ocores_init(struct device *dev, struct ocores_i2c *i2c) ocores_init() argument 495 oc_getreg_grlib(struct ocores_i2c *i2c, int reg) oc_getreg_grlib() argument 509 oc_setreg_grlib(struct ocores_i2c *i2c, int reg, u8 value) oc_setreg_grlib() argument 528 ocores_i2c_of_probe(struct platform_device *pdev, struct ocores_i2c *i2c) ocores_i2c_of_probe() argument 599 struct ocores_i2c *i2c; ocores_i2c_probe() local 735 struct ocores_i2c *i2c = platform_get_drvdata(pdev); ocores_i2c_remove() local 748 struct ocores_i2c *i2c = dev_get_drvdata(dev); ocores_i2c_suspend() local 761 struct ocores_i2c *i2c = dev_get_drvdata(dev); ocores_i2c_resume() local [all...] |
H A D | i2c-s3c2410.c | 2 /* linux/drivers/i2c/busses/i2c-s3c2410.c 13 #include <linux/i2c.h> 34 #include <linux/platform_data/i2c-s3c2410.h> 86 /* i2c controller state */ 124 .name = "s3c2410-i2c", 127 .name = "s3c2440-i2c", 130 .name = "s3c2440-hdmiphy-i2c", 136 static int i2c_s3c_irq_nextbyte(struct s3c24xx_i2c *i2c, unsigned long iicstat); 140 { .compatible = "samsung,s3c2410-i2c", 166 s3c24xx_i2c_master_complete(struct s3c24xx_i2c *i2c, int ret) s3c24xx_i2c_master_complete() argument 181 s3c24xx_i2c_disable_ack(struct s3c24xx_i2c *i2c) s3c24xx_i2c_disable_ack() argument 189 s3c24xx_i2c_enable_ack(struct s3c24xx_i2c *i2c) s3c24xx_i2c_enable_ack() argument 198 s3c24xx_i2c_disable_irq(struct s3c24xx_i2c *i2c) s3c24xx_i2c_disable_irq() argument 206 s3c24xx_i2c_enable_irq(struct s3c24xx_i2c *i2c) s3c24xx_i2c_enable_irq() argument 214 is_ack(struct s3c24xx_i2c *i2c) is_ack() argument 243 s3c24xx_i2c_message_start(struct s3c24xx_i2c *i2c, struct i2c_msg *msg) s3c24xx_i2c_message_start() argument 284 s3c24xx_i2c_stop(struct s3c24xx_i2c *i2c, int ret) s3c24xx_i2c_stop() argument 347 is_lastmsg(struct s3c24xx_i2c *i2c) is_lastmsg() argument 355 is_msglast(struct s3c24xx_i2c *i2c) is_msglast() argument 371 is_msgend(struct s3c24xx_i2c *i2c) is_msgend() argument 379 i2c_s3c_irq_nextbyte(struct s3c24xx_i2c *i2c, unsigned long iicstat) i2c_s3c_irq_nextbyte() argument 554 struct s3c24xx_i2c *i2c = dev_id; s3c24xx_i2c_irq() local 593 s3c24xx_i2c_disable_bus(struct s3c24xx_i2c *i2c) s3c24xx_i2c_disable_bus() argument 613 s3c24xx_i2c_set_master(struct s3c24xx_i2c *i2c) s3c24xx_i2c_set_master() argument 633 s3c24xx_i2c_wait_idle(struct s3c24xx_i2c *i2c) s3c24xx_i2c_wait_idle() argument 685 s3c24xx_i2c_doxfer(struct s3c24xx_i2c *i2c, struct i2c_msg *msgs, int num) s3c24xx_i2c_doxfer() argument 753 struct s3c24xx_i2c *i2c = (struct s3c24xx_i2c *)adap->algo_data; s3c24xx_i2c_xfer() local 825 s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got) s3c24xx_i2c_clockrate() argument 887 s3c24xx_i2c_parse_dt_gpio(struct s3c24xx_i2c *i2c) s3c24xx_i2c_parse_dt_gpio() argument 906 s3c24xx_i2c_parse_dt_gpio(struct s3c24xx_i2c *i2c) s3c24xx_i2c_parse_dt_gpio() argument 915 s3c24xx_i2c_init(struct s3c24xx_i2c *i2c) s3c24xx_i2c_init() argument 954 s3c24xx_i2c_parse_dt(struct device_node *np, struct s3c24xx_i2c *i2c) s3c24xx_i2c_parse_dt() argument 985 s3c24xx_i2c_parse_dt(struct device_node *np, struct s3c24xx_i2c *i2c) s3c24xx_i2c_parse_dt() argument 990 struct s3c24xx_i2c *i2c; s3c24xx_i2c_probe() local 1117 struct s3c24xx_i2c *i2c = platform_get_drvdata(pdev); s3c24xx_i2c_remove() local 1128 struct s3c24xx_i2c *i2c = dev_get_drvdata(dev); s3c24xx_i2c_suspend_noirq() local 1140 struct s3c24xx_i2c *i2c = dev_get_drvdata(dev); s3c24xx_i2c_resume_noirq() local [all...] |
H A D | i2c-meson.c | 11 #include <linux/i2c.h> 108 void (*set_clk_div)(struct meson_i2c *i2c, unsigned int freq); 111 static void meson_i2c_set_mask(struct meson_i2c *i2c, int reg, u32 mask, in meson_i2c_set_mask() argument 116 data = readl(i2c->regs + reg); in meson_i2c_set_mask() 119 writel(data, i2c->regs + reg); in meson_i2c_set_mask() 122 static void meson_i2c_reset_tokens(struct meson_i2c *i2c) in meson_i2c_reset_tokens() argument 124 i2c->tokens[0] = 0; in meson_i2c_reset_tokens() 125 i2c->tokens[1] = 0; in meson_i2c_reset_tokens() 126 i2c->num_tokens = 0; in meson_i2c_reset_tokens() 129 static void meson_i2c_add_token(struct meson_i2c *i2c, in argument 139 meson_gxbb_axg_i2c_set_clk_div(struct meson_i2c *i2c, unsigned int freq) meson_gxbb_axg_i2c_set_clk_div() argument 187 meson6_i2c_set_clk_div(struct meson_i2c *i2c, unsigned int freq) meson6_i2c_set_clk_div() argument 215 meson_i2c_get_data(struct meson_i2c *i2c, char *buf, int len) meson_i2c_get_data() argument 233 meson_i2c_put_data(struct meson_i2c *i2c, char *buf, int len) meson_i2c_put_data() argument 251 meson_i2c_prepare_xfer(struct meson_i2c *i2c) meson_i2c_prepare_xfer() argument 278 meson_i2c_transfer_complete(struct meson_i2c *i2c, u32 ctrl) meson_i2c_transfer_complete() argument 304 struct meson_i2c *i2c = dev_id; meson_i2c_irq() local 337 meson_i2c_do_start(struct meson_i2c *i2c, struct i2c_msg *msg) meson_i2c_do_start() argument 352 meson_i2c_xfer_msg(struct meson_i2c *i2c, struct i2c_msg *msg, int last, bool atomic) meson_i2c_xfer_msg() argument 421 struct meson_i2c *i2c = adap->algo_data; meson_i2c_xfer_messages() local 459 struct meson_i2c *i2c; meson_i2c_probe() local 539 struct meson_i2c *i2c = platform_get_drvdata(pdev); meson_i2c_remove() local [all...] |
H A D | i2c-xiic.c | 3 * i2c-xiic.c 24 #include <linux/i2c.h> 27 #include <linux/platform_data/i2c-xiic.h> 34 #define DRIVER_NAME "xiic-i2c" 148 * setting i2c clock frequency for the line. 235 #define xiic_tx_space(i2c) ((i2c)->tx_msg->len - (i2c)->tx_pos) 236 #define xiic_rx_space(i2c) ((i2c) 249 xiic_setreg8(struct xiic_i2c *i2c, int reg, u8 value) xiic_setreg8() argument 257 xiic_getreg8(struct xiic_i2c *i2c, int reg) xiic_getreg8() argument 268 xiic_setreg16(struct xiic_i2c *i2c, int reg, u16 value) xiic_setreg16() argument 276 xiic_setreg32(struct xiic_i2c *i2c, int reg, int value) xiic_setreg32() argument 284 xiic_getreg32(struct xiic_i2c *i2c, int reg) xiic_getreg32() argument 295 xiic_irq_dis(struct xiic_i2c *i2c, u32 mask) xiic_irq_dis() argument 302 xiic_irq_en(struct xiic_i2c *i2c, u32 mask) xiic_irq_en() argument 309 xiic_irq_clr(struct xiic_i2c *i2c, u32 mask) xiic_irq_clr() argument 316 xiic_irq_clr_en(struct xiic_i2c *i2c, u32 mask) xiic_irq_clr_en() argument 322 xiic_clear_rx_fifo(struct xiic_i2c *i2c) xiic_clear_rx_fifo() argument 341 xiic_wait_tx_empty(struct xiic_i2c *i2c) xiic_wait_tx_empty() argument 371 xiic_setclk(struct xiic_i2c *i2c) xiic_setclk() argument 445 xiic_reinit(struct xiic_i2c *i2c) xiic_reinit() argument 477 xiic_deinit(struct xiic_i2c *i2c) xiic_deinit() argument 488 xiic_smbus_block_read_setup(struct xiic_i2c *i2c) xiic_smbus_block_read_setup() argument 544 xiic_read_rx(struct xiic_i2c *i2c) xiic_read_rx() argument 615 xiic_tx_fifo_space(struct xiic_i2c *i2c) xiic_tx_fifo_space() argument 621 xiic_fill_tx_fifo(struct xiic_i2c *i2c) xiic_fill_tx_fifo() argument 658 xiic_wakeup(struct xiic_i2c *i2c, enum xilinx_i2c_state code) xiic_wakeup() argument 669 struct xiic_i2c *i2c = dev_id; xiic_process() local 840 xiic_bus_busy(struct xiic_i2c *i2c) xiic_bus_busy() argument 847 xiic_busy(struct xiic_i2c *i2c) xiic_busy() argument 877 xiic_start_recv(struct xiic_i2c *i2c) xiic_start_recv() argument 1001 xiic_start_send(struct xiic_i2c *i2c) xiic_start_send() argument 1079 __xiic_start_xfer(struct xiic_i2c *i2c) __xiic_start_xfer() argument 1100 xiic_start_xfer(struct xiic_i2c *i2c, struct i2c_msg *msgs, int num) xiic_start_xfer() argument 1156 struct xiic_i2c *i2c = i2c_get_adapdata(adap); xiic_xfer() local 1221 struct xiic_i2c *i2c; xiic_i2c_probe() local 1337 struct xiic_i2c *i2c = platform_get_drvdata(pdev); xiic_i2c_remove() local 1359 struct xiic_i2c *i2c = dev_get_drvdata(dev); xiic_i2c_runtime_suspend() local 1368 struct xiic_i2c *i2c = dev_get_drvdata(dev); xiic_i2c_runtime_resume() local [all...] |
H A D | Makefile | 3 # Makefile for the i2c bus drivers. 7 obj-$(CONFIG_I2C_SCMI) += i2c-scmi.o 10 obj-$(CONFIG_I2C_CCGX_UCSI) += i2c-ccgx-ucsi.o 13 obj-$(CONFIG_I2C_ALI1535) += i2c-ali1535.o 14 obj-$(CONFIG_I2C_ALI1563) += i2c-ali1563.o 15 obj-$(CONFIG_I2C_ALI15X3) += i2c-ali15x3.o 16 obj-$(CONFIG_I2C_AMD756) += i2c-amd756.o 17 obj-$(CONFIG_I2C_AMD756_S4882) += i2c-amd756-s4882.o 18 obj-$(CONFIG_I2C_AMD8111) += i2c-amd8111.o 19 obj-$(CONFIG_I2C_CHT_WC) += i2c [all...] |
H A D | i2c-img-scb.c | 74 #include <linux/i2c.h> 294 /* Timing parameters for i2c modes (in ns) */ 414 static void img_i2c_writel(struct img_i2c *i2c, u32 offset, u32 value) in img_i2c_writel() argument 416 writel(value, i2c->base + offset); in img_i2c_writel() 419 static u32 img_i2c_readl(struct img_i2c *i2c, u32 offset) in img_i2c_readl() argument 421 return readl(i2c->base + offset); in img_i2c_readl() 436 static void img_i2c_wr_rd_fence(struct img_i2c *i2c) in img_i2c_wr_rd_fence() argument 438 if (i2c->need_wr_rd_fence) { in img_i2c_wr_rd_fence() 439 img_i2c_writel(i2c, SCB_CORE_REV_REG, 0); in img_i2c_wr_rd_fence() 440 img_i2c_writel(i2c, SCB_CORE_REV_RE in img_i2c_wr_rd_fence() 444 img_i2c_switch_mode(struct img_i2c *i2c, enum img_i2c_mode mode) img_i2c_switch_mode() argument 451 img_i2c_raw_op(struct img_i2c *i2c) img_i2c_raw_op() argument 472 img_i2c_atomic_op(struct img_i2c *i2c, int cmd, u8 data) img_i2c_atomic_op() argument 504 img_i2c_atomic_start(struct img_i2c *i2c) img_i2c_atomic_start() argument 511 img_i2c_soft_reset(struct img_i2c *i2c) img_i2c_soft_reset() argument 530 img_i2c_transaction_halt(struct img_i2c *i2c, bool t_halt) img_i2c_transaction_halt() argument 546 img_i2c_read_fifo(struct img_i2c *i2c) img_i2c_read_fifo() argument 567 img_i2c_write_fifo(struct img_i2c *i2c) img_i2c_write_fifo() argument 588 img_i2c_read(struct img_i2c *i2c) img_i2c_read() argument 602 img_i2c_write(struct img_i2c *i2c) img_i2c_write() argument 623 img_i2c_complete_transaction(struct img_i2c *i2c, int status) img_i2c_complete_transaction() argument 633 img_i2c_raw_atomic_delay_handler(struct img_i2c *i2c, u32 int_status, u32 line_status) img_i2c_raw_atomic_delay_handler() argument 642 img_i2c_raw(struct img_i2c *i2c, u32 int_status, u32 line_status) img_i2c_raw() argument 654 img_i2c_sequence(struct img_i2c *i2c, u32 int_status) img_i2c_sequence() argument 704 img_i2c_reset_start(struct img_i2c *i2c) img_i2c_reset_start() argument 718 img_i2c_stop_start(struct img_i2c *i2c) img_i2c_stop_start() argument 732 img_i2c_atomic(struct img_i2c *i2c, u32 int_status, u32 line_status) img_i2c_atomic() argument 834 struct img_i2c *i2c = from_timer(i2c, t, check_timer); img_i2c_check_timer() local 853 img_i2c_auto(struct img_i2c *i2c, unsigned int int_status, unsigned int line_status) img_i2c_auto() argument 916 struct img_i2c *i2c = dev_id; img_i2c_isr() local 1007 img_i2c_reset_bus(struct img_i2c *i2c) img_i2c_reset_bus() argument 1027 struct img_i2c *i2c = i2c_get_adapdata(adap); img_i2c_xfer() local 1153 img_i2c_init(struct img_i2c *i2c) img_i2c_init() argument 1332 struct img_i2c *i2c; img_i2c_probe() local 1418 struct img_i2c *i2c = platform_get_drvdata(dev); img_i2c_remove() local 1428 struct img_i2c *i2c = dev_get_drvdata(dev); img_i2c_runtime_suspend() local 1438 struct img_i2c *i2c = dev_get_drvdata(dev); img_i2c_runtime_resume() local 1459 struct img_i2c *i2c = dev_get_drvdata(dev); img_i2c_suspend() local 1473 struct img_i2c *i2c = dev_get_drvdata(dev); img_i2c_resume() local [all...] |
H A D | i2c-synquacer.c | 12 #include <linux/i2c.h> 149 static inline int is_lastmsg(struct synquacer_i2c *i2c) in is_lastmsg() argument 151 return i2c->msg_idx >= (i2c->msg_num - 1); in is_lastmsg() 154 static inline int is_msglast(struct synquacer_i2c *i2c) in is_msglast() argument 156 return i2c->msg_ptr == (i2c->msg->len - 1); in is_msglast() 159 static inline int is_msgend(struct synquacer_i2c *i2c) in is_msgend() argument 161 return i2c->msg_ptr >= i2c in is_msgend() 164 calc_timeout_ms(struct synquacer_i2c *i2c, struct i2c_msg *msgs, int num) calc_timeout_ms() argument 177 synquacer_i2c_stop(struct synquacer_i2c *i2c, int ret) synquacer_i2c_stop() argument 198 synquacer_i2c_hw_init(struct synquacer_i2c *i2c) synquacer_i2c_hw_init() argument 249 synquacer_i2c_hw_reset(struct synquacer_i2c *i2c) synquacer_i2c_hw_reset() argument 258 synquacer_i2c_master_start(struct synquacer_i2c *i2c, struct i2c_msg *pmsg) synquacer_i2c_master_start() argument 310 synquacer_i2c_doxfer(struct synquacer_i2c *i2c, struct i2c_msg *msgs, int num) synquacer_i2c_doxfer() argument 359 struct synquacer_i2c *i2c = dev_id; synquacer_i2c_isr() local 497 struct synquacer_i2c *i2c; synquacer_i2c_xfer() local 537 struct synquacer_i2c *i2c; synquacer_i2c_probe() local 615 struct synquacer_i2c *i2c = platform_get_drvdata(pdev); synquacer_i2c_remove() local [all...] |
H A D | i2c-octeon-core.c | 7 * This file contains the shared part of the driver for the i2c adapter in 16 #include <linux/i2c.h> 21 #include "i2c-octeon-core.h" 26 struct octeon_i2c *i2c = dev_id; in octeon_i2c_isr() local 28 i2c->int_disable(i2c); in octeon_i2c_isr() 29 wake_up(&i2c->queue); in octeon_i2c_isr() 34 static bool octeon_i2c_test_iflg(struct octeon_i2c *i2c) in octeon_i2c_test_iflg() argument 36 return (octeon_i2c_ctl_read(i2c) & TWSI_CTL_IFLG); in octeon_i2c_test_iflg() 41 * @i2c 45 octeon_i2c_wait(struct octeon_i2c *i2c) octeon_i2c_wait() argument 81 octeon_i2c_hlc_test_valid(struct octeon_i2c *i2c) octeon_i2c_hlc_test_valid() argument 86 octeon_i2c_hlc_int_clear(struct octeon_i2c *i2c) octeon_i2c_hlc_int_clear() argument 95 octeon_i2c_hlc_enable(struct octeon_i2c *i2c) octeon_i2c_hlc_enable() argument 124 octeon_i2c_hlc_disable(struct octeon_i2c *i2c) octeon_i2c_hlc_disable() argument 139 octeon_i2c_hlc_wait(struct octeon_i2c *i2c) octeon_i2c_hlc_wait() argument 177 octeon_i2c_check_status(struct octeon_i2c *i2c, int final_read) octeon_i2c_check_status() argument 248 octeon_i2c_recovery(struct octeon_i2c *i2c) octeon_i2c_recovery() argument 265 octeon_i2c_start(struct octeon_i2c *i2c) octeon_i2c_start() argument 289 octeon_i2c_stop(struct octeon_i2c *i2c) octeon_i2c_stop() argument 306 octeon_i2c_read(struct octeon_i2c *i2c, int target, u8 *data, u16 *rlength, bool recv_len) octeon_i2c_read() argument 374 octeon_i2c_write(struct octeon_i2c *i2c, int target, const u8 *data, int length) octeon_i2c_write() argument 403 octeon_i2c_hlc_read(struct octeon_i2c *i2c, struct i2c_msg *msgs) octeon_i2c_hlc_read() argument 445 octeon_i2c_hlc_write(struct octeon_i2c *i2c, struct i2c_msg *msgs) octeon_i2c_hlc_write() argument 489 octeon_i2c_hlc_comp_read(struct octeon_i2c *i2c, struct i2c_msg *msgs) octeon_i2c_hlc_comp_read() argument 543 octeon_i2c_hlc_comp_write(struct octeon_i2c *i2c, struct i2c_msg *msgs) octeon_i2c_hlc_comp_write() argument 607 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_xfer() local 658 octeon_i2c_set_clock(struct octeon_i2c *i2c) octeon_i2c_set_clock() argument 699 octeon_i2c_init_lowlevel(struct octeon_i2c *i2c) octeon_i2c_init_lowlevel() argument 728 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_get_scl() local 737 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_set_scl() local 744 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_get_sda() local 753 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_prepare_recovery() local 771 struct octeon_i2c *i2c = i2c_get_adapdata(adap); octeon_i2c_unprepare_recovery() local [all...] |
H A D | i2c-exynos5.c | 3 * i2c-exynos5.c - Samsung Exynos5 I2C Controller Driver 11 #include <linux/i2c.h> 258 static void exynos5_i2c_clr_pend_irq(struct exynos5_i2c *i2c) in exynos5_i2c_clr_pend_irq() argument 260 writel(readl(i2c->regs + HSI2C_INT_STATUS), in exynos5_i2c_clr_pend_irq() 261 i2c->regs + HSI2C_INT_STATUS); in exynos5_i2c_clr_pend_irq() 274 static int exynos5_i2c_set_timing(struct exynos5_i2c *i2c, bool hs_timings) in exynos5_i2c_set_timing() argument 286 unsigned int clkin = clk_get_rate(i2c->clk); in exynos5_i2c_set_timing() 287 unsigned int op_clk = hs_timings ? i2c->op_clock : in exynos5_i2c_set_timing() 288 (i2c->op_clock >= I2C_MAX_FAST_MODE_PLUS_FREQ) ? I2C_MAX_STANDARD_MODE_FREQ : in exynos5_i2c_set_timing() 289 i2c in exynos5_i2c_set_timing() 380 exynos5_hsi2c_clock_setup(struct exynos5_i2c *i2c) exynos5_hsi2c_clock_setup() argument 395 exynos5_i2c_init(struct exynos5_i2c *i2c) exynos5_i2c_init() argument 417 exynos5_i2c_reset(struct exynos5_i2c *i2c) exynos5_i2c_reset() argument 445 struct exynos5_i2c *i2c = dev_id; exynos5_i2c_irq() local 568 exynos5_i2c_wait_bus_idle(struct exynos5_i2c *i2c) exynos5_i2c_wait_bus_idle() argument 586 exynos5_i2c_bus_recover(struct exynos5_i2c *i2c) exynos5_i2c_bus_recover() argument 611 exynos5_i2c_bus_check(struct exynos5_i2c *i2c) exynos5_i2c_bus_check() argument 647 exynos5_i2c_message_start(struct exynos5_i2c *i2c, int stop) exynos5_i2c_message_start() argument 714 exynos5_i2c_xfer_msg(struct exynos5_i2c *i2c, struct i2c_msg *msgs, int stop) exynos5_i2c_xfer_msg() argument 756 struct exynos5_i2c *i2c = adap->algo_data; exynos5_i2c_xfer() local 793 struct exynos5_i2c *i2c; exynos5_i2c_probe() local 885 struct exynos5_i2c *i2c = platform_get_drvdata(pdev); exynos5_i2c_remove() local 895 struct exynos5_i2c *i2c = dev_get_drvdata(dev); exynos5_i2c_suspend_noirq() local 906 struct exynos5_i2c *i2c = dev_get_drvdata(dev); exynos5_i2c_resume_noirq() local [all...] |