아래 동영상을 시청하기 위해서는 구매하기를 진행 하신후,
본인 소유의 구글(gmail.com) 계정으로 로그인 되어 있어야 합니다.
커널연구회 공부모임에 참가하여 월회비를 납부하신 분은 추가적인 구매없이 바로 시청할 수 있습니다.
디바이스드라이버 동영상1 (rest_init, driver_init)
디바이스 드라이버 초기화(설정) 함수들:
arch_call_rest_init() 함수 소스 설명
user_mode_thread(kernel_init, );
kernel_init();
kernel_init_freeable();
do_basic_setup();
driver_init();
동영상 링크: https://youtu.be/RMsW_JRhuKE
동영상 상영시간: 2시간 51분
디바이스드라이버 동영상2 (do_initcalls)
do_initcall_level() 함수 설명
__define_initcall(fn, id)
static initcall_entry_t *initcall_levels[] __initdata = { __initcall0_start,__initcall1_start,__initcall2_start,__initcall3_start,__initcall4_start,__initcall5_start,__initcall6_start,__initcall7_start,};
동영상 링크: https://youtu.be/xhZIuxAvAsw
동영상 상영시간: 2시간 44분
디바이스드라이버 동영상3 (드라이버 등록)
디바이스 드라이버 API 함수들: driver 등록:
module_platform_driver(__platform_driver)
module_driver(__platform_driver, platform_driver_register,
platform_driver_unregister)
module_driver(__driver, __register, __unregister, ...)
static int __init __driver##_init(void)
__register(&(__driver) , ##__VA_ARGS__);
module_init(__driver##_init);
static void __exit __driver##_exit(void)
__unregister(&(__driver) , ##__VA_ARGS__);
module_exit(__driver##_exit);
동영상 링크: https://youtu.be/5QB_7VcRIkY
동영상 상영시간: 2시간 25분
디바이스드라이버 동영상4 (gpio_led_driver)
gpio_led_driver API 함수 이해:
module_platform_driver(gpio_led_driver)
struct platform_driver gpio_led_driver
gpio_led_probe()
gpio_led_shutdown()
struct of_device_id of_gpio_leds_match[]
동영상 링크: https://youtu.be/M9NZhbBDfY8
동영상 상영시간: 2시간 15분
공부모임 동영상 강의 (디바이스 드라이버)