i2c_add_driver 함수에 관해....

sdc1984의 이미지

i2c 드라이버에 관해 보고 있는데요...

i2c_add_driver로 드라이버를 등록을하는데요..

세밀하게 보니 i2c_add_driver->i2c_register_driver->driver_register->bus_add_driver->driver_add_groups->driver_attach->module_add_driver->driver_create_file->driver_add_attrs->driver_add_group 으로 불러지더라구요....

그냥 i2c드라이버만 추가함수만 하면 되는지 알았는데요.. 왜이렇게 많은 절차를 거치게 되는지 궁금하네요.. 그리고 probe 함수는 저 위에 상황중에서 언제 호출이 되는지 궁금하네요.. probe는 계속 받으니 계속 호출이 되나요?? 각각 역할을 아시는분 있으시면 감사하겠어요 ㅠㅠ