Who calls the probe() of driver
Long story short: the probe() function of the driver is called as a result of calling the register_driver for that specific bus. More precisely, it’s called by the probe() of that bus_type structure. In your case: i2c_bus_type. Here’s the call chain in your I2C case: i2c_register_driver driver_register bus_add_driver driver_attach __driver_attach (for your device) driver_probe_device really_probe … Read more