Line 1: |
Line 1: |
− | [[Category:Kernel objects]] | + | [[Category:Kernel synchronization objects]] |
− | class [[KTimer]] extends [[KSynchronizationObject]]; | + | [[Category:Kernel interrupt events]] |
| + | class [[KTimer]] extends [[KSynchronizationObject]] and [[KTimeableInterruptEvent]]; |
| | | |
| Size : 0x3C bytes | | Size : 0x3C bytes |
Line 31: |
Line 32: |
| |- | | |- |
| | 0x14 | | | 0x14 |
− | | [[KTimeableInterruptEvent|KTimerInterruptEvent]] | + | | [[KTimeableInterruptEvent]] |
− | | Interrupt event holding the suspend time | + | | Interrupt event (*this) to be used with [[KTimerAndWDTManager]] holding its desired time point (relative to the CPU power-on) in CPU ticks (when handling its list of [[KTimableInterruptEvent]] instances). |
| + | Gets incremented at each interval |
| |- | | |- |
| | 0x24 | | | 0x24 |
| | u8 | | | u8 |
− | | Timer enabled | + | | Timer is signaled |
| |- | | |- |
| | 0x25 | | | 0x25 |
Line 44: |
Line 46: |
| | 0x26 | | | 0x26 |
| | u16 | | | u16 |
− | | Unknown, probably unused | + | | Starting from [[11.3.0-36]]: set to 0 prior to removing the timer from the [[KTimerAndWDTManager]] queue, set to 1 just after that. |
| |- | | |- |
| | 0x28 | | | 0x28 |
| | s64 | | | s64 |
− | | Interval | + | | Interval in nanoseconds |
| |- | | |- |
| | 0x30 | | | 0x30 |
| | s64 | | | s64 |
− | | Initial | + | | Current value in nanoseconds: current system uptime + user-specified time offset, updated at each interval |
| |- | | |- |
| | 0x38 | | | 0x38 |
Line 58: |
Line 60: |
| | Owner | | | Owner |
| |- | | |- |
| + | |} |
| + | |
| + | Negative intervals and time offsets are considered null. |