Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ===== FreeBSD Device Driver Development ===== Aim of this page is to collect and summarise %%FreeBSD%% Device and Hardware Driver Development resources into one place to ease and simplify the learning process for folks interested in Driver Development. ===== FreeBSD Documentation ===== * [[https://docs.freebsd.org/en/books/arch-handbook/|FreeBSD Architecture Handbook (docs.freebsd.org)]] * [[https://docs.freebsd.org/en/books/arch-handbook/driverbasics/|FreeBSD Architecture Handbook: Chapter 9. Writing FreeBSD Device Drivers (docs.freebsd.org)]] * [[https://papers.freebsd.org/|FreeBSD.org: Presentations and Papers]] ===== Manual Pages ===== * [[https://man.freebsd.org/driver/9|driver(9): Structure describing a device driver]] * [[https://man.freebsd.org/DRIVER_MODULE/9|DRIVER_MODULE(9): Kernel driver declaration macro]] ===== Articles ===== * [[https://freebsdfoundation.org/wp-content/uploads/2021/11/Simple_USB_Driver_for_FreeBSD.pdf|How to Implement a Simple USB Driver for FreeBSD (Mariusz Zaborski, FreeBSD Journal Article October 2021), PDF]] ===== Books ===== * [[https://www.amazon.com/FreeBSD-Device-Drivers-Guide-Intrepid/dp/1593272049|FreeBSD Device Drivers: A Guide for the Intrepid (Author: Joseph Kong, ISBN: 9781593272043) (amazon.com)]] ===== Conference Talks & Papers ===== * [[https://people.freebsd.org/~jmg/drivers/freebsd.device.driver.slides.pdf|How to write a Device Driver in FreeBSD (John-Mark Gurney) BSDCan 2006, Slides (PDF)]] Audio: TBA * [[https://people.freebsd.org/~jhb/papers/drivers/slides.pdf|Writing and Adapting Device Drivers for FreeBSD (John Baldwin) 2011, Slides (PDF)]] Talk/Video: ??? * [[https://www.usenix.org/conference/osdi12/technical-sessions/presentation/renzelmann|SymDrive: Testing Drivers without Devices (Matthew J. Renzelmann et al) [Video]]] [[https://www.usenix.org/system/files/conference/osdi12/osdi12-final-4.pdf|Paper (PDF)]] [[https://www.usenix.org/sites/default/files/conference/protected-files/renzelmann_osdi12_slides.pdf|Slides (PDF)]] * [[https://papers.freebsd.org/2018/bsdcan/losh-devmatch_matching_devices_to_modules/|devmatch -- matching devices to modules: PNP plays matchmaker for kernel modules (Warner Losh) BSDCan 2018]] [[https://www.youtube.com/watch?v=XgnUWG5mAAQ|Video]] [[https://papers.freebsd.org/2018/bsdcan/losh-devmatch_Matching_Devices_to_Modules.files/losh-devmatch_Matching_Devices_to_Modules.pdf|Slides]] * [[https://papers.freebsd.org/2019/bsdcan/joynerkeller-developing_a_freebsd_driver_using_test_driven_development/|Developing a FreeBSD driver using Test Driven Development (Eric Joyner and Jacob Keller, BSDCan 2019)]] [[https://www.youtube.com/watch?v=1pwVbpijcas|Video]] [[https://cpputest.github.io/|Test Framework: CppUTest: Unit testing and mocking framework for C/C++)]] * [[https://papers.freebsd.org/2017/asiabsdcon/ganbold-writing_freebsd_ir_driver_for_arm_boards/|Writing FreeBSD IR driver for ARM boards (Ganbold Tsagaankhuu) AsiaBSDCon 2017]] [[https://papers.freebsd.org/2017/asiabsdcon/ganbold-Writing_FreeBSD_IR_driver_for_ARM_boards.files/Paper-Writing_FreeBSD_IR_driver_for_ARM_boards.pdf|Paper (PDF)]] [[https://www.youtube.com/watch?v=YUJdf-kioHg|Video]] [[https://papers.freebsd.org/2017/asiabsdcon/ganbold-Writing_FreeBSD_IR_driver_for_ARM_boards.files/Slides-Writing_FreeBSD_IR_driver_for_ARM_boards.pdf|Slides]] * [[https://www.youtube.com/watch?v=3NmbM5vHyGM|Intel QuickAssist Driver: Overview and FreeBSD Port (Fiona Trahe) BSDCan 2016]] * [[https://papers.freebsd.org/2018/bsdcan/vadot-freebsd_arm32_arm64_porting_to_a_new_board/|FreeBSD ARM32/ARM64: Porting to a new board (Emmanuel Vadot) BSDCan 2018]] [[https://www.youtube.com/watch?v=YoB5NknHWbk|Video]] [[https://papers.freebsd.org/2018/bsdcan/vadot-FreeBSD_ARM32_ARM64_Porting_to_a_new_board.files/vadot-FreeBSD_ARM32_ARM64_Porting_to_a_new_board.pdf|Slides (PDF)]] ---- {{tag>Contributing}} {{tag>HowTo}} devicedriverdevelopment.txt Last modified: 2022/08/14 03:20by KubilayKocak