sound card의 platform_driver
위와 같이 드라이버를 module_platform_driver로 등록시켜주면, 보일러 플레이트에 의하여 regitser, unregister로 확장된다.
이후에 platform_driver가 등록되고, 이름이 같은 platform_device가 platform_device_register로 등록되면 driver의 probe가 호출된다.
- probe가 호출되는 과정 : platform_add_devices -> platform_device_register -> platform_device_add -> device_add -> bus_probe_device -> device_initial_probe -> __device_attach -> __device_attach_driver -> driver_probe_device -> really_probe -> "dev->bus->probe(dev) 또는 drv->probe(dev)"
- 근데 platform_add_devices를 누가 부르는지 모르겠다
아무튼 driver.probe가 호출되는 과정을 찾았으므로 rainbow_sound_probe를 연속해서 따라가보면,
...나중에 계속
'프로그래밍 > 리눅스 커널' 카테고리의 다른 글
pinctrl-names과 pinctrl (0) | 2024.10.22 |
---|---|
s906b alsa sound card 코드 따라가기 (0) | 2022.05.19 |
삼성 S906B (S22+) 리눅스 커널 다운 및 vim, cscope, ctags 준비 (0) | 2022.05.19 |