probe() call gets called? Who calls it? As per my understanding,
driver and then somehow
probe() is called to
register the device data and
irq etc. How exactly it happens?
I am working on touchscreen driver and its
__init registers itself to
i2c driver. Then probe expect
i2c_client data which returns null. I want to track where it gets filled.
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:
Here's the call chain in your I2C case: