Part VI. I/O Package (Device Drivers)
Table of Contents
- 15. Introduction
- 16. User API
- 17. Serial driver details
- 18. How to Write a Driver
- 19. Device Driver Interface to the Kernel
- 19.1. Interrupt Model
- 19.2. Synchronization
- 19.3. SMP Support
- 19.4. Device Driver Models
- 19.5. Synchronization Levels
- 19.6. The API
- 19.6.1. cyg_drv_isr_lock
- 19.6.2. cyg_drv_isr_unlock
- 19.6.3. cyg_drv_spinlock_init
- 19.6.4. cyg_drv_spinlock_destroy
- 19.6.5. cyg_drv_spinlock_spin
- 19.6.6. cyg_drv_spinlock_clear
- 19.6.7. cyg_drv_spinlock_try
- 19.6.8. cyg_drv_spinlock_test
- 19.6.9. cyg_drv_spinlock_spin_intsave
- 19.6.10. cyg_drv_spinlock_clear_intsave
- 19.6.11. cyg_drv_dsr_lock
- 19.6.12. cyg_drv_dsr_unlock
- 19.6.13. cyg_drv_mutex_init
- 19.6.14. cyg_drv_mutex_destroy
- 19.6.15. cyg_drv_mutex_lock
- 19.6.16. cyg_drv_mutex_trylock
- 19.6.17. cyg_drv_mutex_unlock
- 19.6.18. cyg_drv_mutex_release
- 19.6.19. cyg_drv_cond_init
- 19.6.20. cyg_drv_cond_destroy
- 19.6.21. cyg_drv_cond_wait
- 19.6.22. cyg_drv_cond_signal
- 19.6.23. cyg_drv_cond_broadcast
- 19.6.24. cyg_drv_interrupt_create
- 19.6.25. cyg_drv_interrupt_delete
- 19.6.26. cyg_drv_interrupt_attach
- 19.6.27. cyg_drv_interrupt_detach
- 19.6.28. cyg_drv_interrupt_mask
- 19.6.29. cyg_drv_interrupt_mask_intunsafe
- 19.6.30. cyg_drv_interrupt_unmask
- 19.6.31. cyg_drv_interrupt_unmask_intunsafe
- 19.6.32. cyg_drv_interrupt_acknowledge
- 19.6.33. cyg_drv_interrupt_configure
- 19.6.34. cyg_drv_interrupt_level
- 19.6.35. cyg_drv_interrupt_set_cpu
- 19.6.36. cyg_drv_interrupt_get_cpu
- 19.6.37. cyg_ISR_t
- 19.6.38. cyg_DSR_t
- 19.7. Instrumentation
2024-03-18 | Open Publication License |