i3cbus 95 drivers/i3c/master.c i3c_bus_to_i3c_master(struct i3c_bus *i3cbus) i3cbus 97 drivers/i3c/master.c return container_of(i3cbus, struct i3c_master_controller, bus); i3cbus 396 drivers/i3c/master.c static void i3c_bus_cleanup(struct i3c_bus *i3cbus) i3cbus 399 drivers/i3c/master.c idr_remove(&i3c_bus_idr, i3cbus->id); i3cbus 403 drivers/i3c/master.c static int i3c_bus_init(struct i3c_bus *i3cbus) i3cbus 407 drivers/i3c/master.c init_rwsem(&i3cbus->lock); i3cbus 408 drivers/i3c/master.c INIT_LIST_HEAD(&i3cbus->devs.i2c); i3cbus 409 drivers/i3c/master.c INIT_LIST_HEAD(&i3cbus->devs.i3c); i3cbus 410 drivers/i3c/master.c i3c_bus_init_addrslots(i3cbus); i3cbus 411 drivers/i3c/master.c i3cbus->mode = I3C_BUS_MODE_PURE; i3cbus 414 drivers/i3c/master.c ret = idr_alloc(&i3c_bus_idr, i3cbus, 0, 0, GFP_KERNEL); i3cbus 420 drivers/i3c/master.c i3cbus->id = ret; i3cbus 436 drivers/i3c/master.c struct i3c_bus *i3cbus = dev_to_i3cbus(dev); i3cbus 439 drivers/i3c/master.c i3c_bus_normaluse_lock(i3cbus); i3cbus 440 drivers/i3c/master.c if (i3cbus->mode < 0 || i3cbus 441 drivers/i3c/master.c i3cbus->mode >= ARRAY_SIZE(i3c_bus_mode_strings) || i3cbus 442 drivers/i3c/master.c !i3c_bus_mode_strings[i3cbus->mode]) i3cbus 445 drivers/i3c/master.c ret = sprintf(buf, "%s\n", i3c_bus_mode_strings[i3cbus->mode]); i3cbus 446 drivers/i3c/master.c i3c_bus_normaluse_unlock(i3cbus); i3cbus 456 drivers/i3c/master.c struct i3c_bus *i3cbus = dev_to_i3cbus(dev); i3cbus 459 drivers/i3c/master.c i3c_bus_normaluse_lock(i3cbus); i3cbus 460 drivers/i3c/master.c ret = sprintf(buf, "%d-%llx\n", i3cbus->id, i3cbus 461 drivers/i3c/master.c i3cbus->cur_master->info.pid); i3cbus 462 drivers/i3c/master.c i3c_bus_normaluse_unlock(i3cbus); i3cbus 472 drivers/i3c/master.c struct i3c_bus *i3cbus = dev_to_i3cbus(dev); i3cbus 475 drivers/i3c/master.c i3c_bus_normaluse_lock(i3cbus); i3cbus 476 drivers/i3c/master.c ret = sprintf(buf, "%ld\n", i3cbus->scl_rate.i3c); i3cbus 477 drivers/i3c/master.c i3c_bus_normaluse_unlock(i3cbus); i3cbus 487 drivers/i3c/master.c struct i3c_bus *i3cbus = dev_to_i3cbus(dev); i3cbus 490 drivers/i3c/master.c i3c_bus_normaluse_lock(i3cbus); i3cbus 491 drivers/i3c/master.c ret = sprintf(buf, "%ld\n", i3cbus->scl_rate.i2c); i3cbus 492 drivers/i3c/master.c i3c_bus_normaluse_unlock(i3cbus); i3cbus 530 drivers/i3c/master.c int i3c_bus_set_mode(struct i3c_bus *i3cbus, enum i3c_bus_mode mode, i3cbus 533 drivers/i3c/master.c struct i3c_master_controller *master = i3c_bus_to_i3c_master(i3cbus); i3cbus 535 drivers/i3c/master.c i3cbus->mode = mode; i3cbus 537 drivers/i3c/master.c switch (i3cbus->mode) { i3cbus 539 drivers/i3c/master.c if (!i3cbus->scl_rate.i3c) i3cbus 540 drivers/i3c/master.c i3cbus->scl_rate.i3c = I3C_BUS_TYP_I3C_SCL_RATE; i3cbus 544 drivers/i3c/master.c if (!i3cbus->scl_rate.i3c) i3cbus 545 drivers/i3c/master.c i3cbus->scl_rate.i3c = I3C_BUS_TYP_I3C_SCL_RATE; i3cbus 546 drivers/i3c/master.c if (!i3cbus->scl_rate.i2c) i3cbus 547 drivers/i3c/master.c i3cbus->scl_rate.i2c = max_i2c_scl_rate; i3cbus 550 drivers/i3c/master.c if (!i3cbus->scl_rate.i2c) i3cbus 551 drivers/i3c/master.c i3cbus->scl_rate.i2c = max_i2c_scl_rate; i3cbus 552 drivers/i3c/master.c if (!i3cbus->scl_rate.i3c || i3cbus 553 drivers/i3c/master.c i3cbus->scl_rate.i3c > i3cbus->scl_rate.i2c) i3cbus 554 drivers/i3c/master.c i3cbus->scl_rate.i3c = i3cbus->scl_rate.i2c; i3cbus 561 drivers/i3c/master.c i3cbus->scl_rate.i2c, i3cbus->scl_rate.i3c); i3cbus 567 drivers/i3c/master.c if (i3cbus->scl_rate.i3c > I3C_BUS_MAX_I3C_SCL_RATE || i3cbus 568 drivers/i3c/master.c i3cbus->scl_rate.i2c > I3C_BUS_I2C_FM_PLUS_SCL_RATE) i3cbus 2411 drivers/i3c/master.c struct i3c_bus *i3cbus = i3c_master_get_bus(master); i3cbus 2434 drivers/i3c/master.c ret = i3c_bus_init(i3cbus); i3cbus 2439 drivers/i3c/master.c dev_set_name(&master->dev, "i3c-%d", i3cbus->id); i3cbus 2468 drivers/i3c/master.c ret = i3c_bus_set_mode(i3cbus, mode, i2c_scl_rate);