i2c_bus
void ddc2_init_timing(i2c_bus *bus);
status_t ddc2_read_edid1(const i2c_bus *bus, edid1_info *edid,
struct i2c_bus;
typedef status_t (*i2c_send_receive)(const struct i2c_bus *bus, uint32 slave_address,
status_t i2c_send_receive_callback(const i2c_bus *bus, uint32 slave_address,
void (*set_i2c_bus)(i2c_bus_cookie cookie, i2c_bus bus);
status_t (*exec_command)(i2c_bus cookie, i2c_op op, i2c_addr slaveAddress,
status_t (*acquire_bus)(i2c_bus cookie);
void (*release_bus)(i2c_bus cookie);
status_t (*register_device)(i2c_bus bus, i2c_addr slaveAddress,
i2c_bus bus;
ddc2_read_vdif(const i2c_bus *bus, int start,
ddc2_init_timing(i2c_bus *bus)
ddc2_read_edid1(const i2c_bus *bus, edid1_info *edid,
call_send_receive(const i2c_bus *bus, int slave_address,
ddc2_read(const i2c_bus *bus, int start, uint8 *buffer, size_t length)
send_start_condition(const i2c_bus *bus)
send_stop_condition(const i2c_bus *bus)
send_bit(const i2c_bus *bus, uint8 bit, int timeout)
send_acknowledge(const i2c_bus *bus)
send_byte(const i2c_bus *bus, uint8 byte, bool acknowledge)
send_slave_address(const i2c_bus *bus, uint8 slaveAddress, bool isWrite)
receive_bit(const i2c_bus *bus, bool *bit, int timeout)
receive_byte(const i2c_bus *bus, uint8 *resultByte, bool acknowledge)
send_bytes(const i2c_bus *bus, const uint8 *writeBuffer, ssize_t writeLength)
receive_bytes(const i2c_bus *bus, uint8 *readBuffer, ssize_t readLength)
i2c_send_receive_callback(const i2c_bus *bus, uint32 slaveAddress, const uint8 *writeBuffer,
wait_for_clk(const i2c_bus *bus, bigtime_t timeout)
DisplayPort::SetupI2c(i2c_bus *bus)
DigitalDisplayInterface::SetupI2c(i2c_bus *bus)
i2c_bus bus;
DigitalDisplayInterface::SetupI2cFallback(i2c_bus *bus)
Port::SetupI2c(i2c_bus *bus)
Port::SetupI2cFallback(i2c_bus *bus)
Port::_SetupDpAuxI2c(i2c_bus *bus)
Port::_DpAuxSendReceiveHook(const struct i2c_bus *bus, uint32 slaveAddress,
virtual status_t SetupI2c(i2c_bus *bus);
virtual status_t SetupI2c(i2c_bus *bus);
virtual status_t SetupI2cFallback(struct i2c_bus *bus);
struct i2c_bus;
virtual status_t SetupI2c(struct i2c_bus *bus);
virtual status_t SetupI2cFallback(struct i2c_bus *bus);
status_t _SetupDpAuxI2c(struct i2c_bus *bus);
static status_t _DpAuxSendReceiveHook(const struct i2c_bus *bus,
bool *i2c_bus = &(si->ps.i2c_bus0);
if (i2c_bus[bus] && !btfound)
bool *i2c_bus = &(si->ps.i2c_bus0);
i2c_bus[bus] = true;
if (i2c_bus[bus]) {
i2c_bus bus;
bool *i2c_bus = &(si->ps.i2c_bus0);
if (i2c_bus[bus])
i2c_bus bus;
i2c_bus bus;
i2c_bus bus;
i2c_bus bus;
i2c_bus bus;
i2c_register_device(i2c_bus _bus, i2c_addr slaveAddress, char* hid,
.set_i2c_bus = [](i2c_bus_cookie cookie, i2c_bus bus) {
OcoresI2c::SetI2cBus(i2c_bus bus)
i2c_bus fBus{};
void SetI2cBus(i2c_bus bus);
set_sim(i2c_bus_cookie cookie, i2c_bus sim)
i2c_bus sim;
cx22702_get_frequency_info(i2c_bus *bus, dvb_frequency_info_t *info)
cx22702_set_tuning_parameters(i2c_bus *bus, const dvb_t_tuning_parameters_t *params)
cx22702_get_tuning_parameters(i2c_bus *bus, dvb_t_tuning_parameters_t *params)
cx22702_get_status(i2c_bus *bus, dvb_status_t *status)
cx22702_get_ss(i2c_bus *bus, uint32 *ss)
cx22702_get_ber(i2c_bus *bus, uint32 *ber)
cx22702_get_snr(i2c_bus *bus, uint32 *snr)
cx22702_get_upc(i2c_bus *bus, uint32 *upc)
cx22702_reg_dump(i2c_bus *bus)
cx22702_reg_write(i2c_bus *bus, uint8 reg, uint8 data)
cx22702_reg_read(i2c_bus *bus, uint8 reg, uint8 *data)
cx22702_init(i2c_bus *bus)
status_t cx22702_reg_write(i2c_bus *bus, uint8 reg, uint8 data);
status_t cx22702_reg_read(i2c_bus *bus, uint8 reg, uint8 *data);
status_t cx22702_init(i2c_bus *bus);
status_t cx22702_get_frequency_info(i2c_bus *bus, dvb_frequency_info_t *info);
status_t cx22702_set_tuning_parameters(i2c_bus *bus, const dvb_t_tuning_parameters_t *params);
status_t cx22702_get_tuning_parameters(i2c_bus *bus, dvb_t_tuning_parameters_t *params);
status_t cx22702_get_status(i2c_bus *bus, dvb_status_t *status);
status_t cx22702_get_ss(i2c_bus *bus, uint32 *ss);
status_t cx22702_get_ber(i2c_bus *bus, uint32 *ber);
status_t cx22702_get_snr(i2c_bus *bus, uint32 *snr);
status_t cx22702_get_upc(i2c_bus *bus, uint32 *upc);
i2c_bus * i2c_bus;
device->i2c_bus = i2c_create_bus(device, 80000, 2000000, set_scl, set_sda, get_scl, get_sda);
return device->i2c_bus ? B_OK : B_ERROR;
i2c_delete_bus(device->i2c_bus);
dtt7582_dump(i2c_bus *bus)
dtt7582_test(i2c_bus *bus)
dtt7592_write(i2c_bus *bus, const uint8 data[4])
dtt7592_read(i2c_bus *bus, uint8 *data)
dtt7592_set_frequency(i2c_bus *bus, uint32 frequency, dvb_bandwidth_t bandwidth)
status_t dtt7592_write(i2c_bus *bus, const uint8 data[4]);
status_t dtt7592_read(i2c_bus *bus, uint8 *data);
status_t dtt7592_set_frequency(i2c_bus *bus, uint32 frequency, dvb_bandwidth_t bandwidth);
void dtt7582_test(i2c_bus *bus);
if (cx22702_init(device->i2c_bus) == B_OK)
if ((res = cx22702_get_frequency_info(device->i2c_bus, &info)) < B_OK)
if ((res = cx22702_set_tuning_parameters(device->i2c_bus, ¶ms.u.dvb_t)) < B_OK)
if ((res = cx22702_get_tuning_parameters(device->i2c_bus, ¶ms.u.dvb_t)) < B_OK)
if ((res = cx22702_get_status(device->i2c_bus, &status)) < B_OK)
if ((res = cx22702_get_ss(device->i2c_bus, &value)) < B_OK)
if ((res = cx22702_get_ber(device->i2c_bus, &value)) < B_OK)
if ((res = cx22702_get_snr(device->i2c_bus, &value)) < B_OK)
if ((res = cx22702_get_upc(device->i2c_bus, &value)) < B_OK)
res = i2c_xfer(device->i2c_bus, I2C_ADDR_EEPROM, &adr, 1, d, sizeof(d));
set_sda_low(i2c_bus *bus)
set_sda_high(i2c_bus *bus)
set_scl_low(i2c_bus *bus)
set_scl_high(i2c_bus *bus)
i2c_start(i2c_bus *bus)
i2c_stop(i2c_bus *bus)
i2c_start_address(i2c_bus *bus, int address, int read /* 1 = read, 0 = write */)
i2c_writebyte(i2c_bus *bus, uint8 byte, int *ack)
i2c_readbyte(i2c_bus *bus, uint8 *pbyte)
i2c_read_unlocked(i2c_bus *bus, int address, void *data, int size)
i2c_write_unlocked(i2c_bus *bus, int address, const void *data, int size)
i2c_read(i2c_bus *bus, int address, void *data, int size)
i2c_write(i2c_bus *bus, int address, const void *data, int size)
i2c_xfer(i2c_bus *bus, int address,
static status_t i2c_writebyte(i2c_bus *bus, uint8 byte, int *ack);
static status_t i2c_readbyte(i2c_bus *bus, uint8 *pbyte);
static status_t i2c_read_unlocked(i2c_bus *bus, int address, void *data, int size);
static status_t i2c_write_unlocked(i2c_bus *bus, int address, const void *data, int size);
i2c_bus *
i2c_bus *bus = malloc(sizeof(i2c_bus));
i2c_delete_bus(i2c_bus *bus)
i2c_bus *i2c_create_bus(void *cookie,
void i2c_delete_bus(i2c_bus *bus);
status_t i2c_read(i2c_bus *bus, int address, void *data, int size);
status_t i2c_write(i2c_bus *bus, int address, const void *data, int size);
status_t i2c_xfer(i2c_bus *bus, int address,