@@ -172,36 +172,36 @@ unsafe fn init_local_apic(
172
172
mapper : & mut impl Mapper < Size4KiB > ,
173
173
frame_allocator : & mut impl FrameAllocator < Size4KiB > ,
174
174
) {
175
- let virt_addr = map_apic (
175
+ let virtual_address = map_apic (
176
176
local_apic_addr as u64 ,
177
177
mapper,
178
178
frame_allocator,
179
179
) ;
180
180
181
- let lapic_pointer = virt_addr . as_mut_ptr :: < u32 > ( ) ;
181
+ let lapic_pointer = virtual_address . as_mut_ptr :: < u32 > ( ) ;
182
182
LAPIC_ADDR . lock ( ) . address = lapic_pointer;
183
183
184
184
init_timer ( lapic_pointer) ;
185
185
init_keyboard ( lapic_pointer) ;
186
186
}
187
187
188
188
unsafe fn init_timer ( lapic_pointer : * mut u32 ) {
189
- let svr_register = lapic_pointer. offset ( APICOffset :: SVR as isize / 4 ) ;
190
- svr_register . write_volatile ( svr_register . read_volatile ( ) | 0x100 ) ; // Set bit 8
189
+ let svr = lapic_pointer. offset ( APICOffset :: SVR as isize / 4 ) ;
190
+ svr . write_volatile ( svr . read_volatile ( ) | 0x100 ) ; // Set bit 8
191
191
192
- let lvt_timer_register = lapic_pointer. offset ( APICOffset :: LVT_LINT1 as isize / 4 ) ;
193
- lvt_timer_register . write_volatile ( 0x20 | ( 1 << 17 ) ) ; // Vector 0x20, periodic mode
192
+ let lvt_lint1 = lapic_pointer. offset ( APICOffset :: LVT_LINT1 as isize / 4 ) ;
193
+ lvt_lint1 . write_volatile ( 0x20 | ( 1 << 17 ) ) ; // Vector 0x20, periodic mode
194
194
195
- let tdcr_register = lapic_pointer. offset ( APICOffset :: TDCR as isize / 4 ) ;
196
- tdcr_register . write_volatile ( 0x3 ) ;
195
+ let tdcr = lapic_pointer. offset ( APICOffset :: TDCR as isize / 4 ) ;
196
+ tdcr . write_volatile ( 0x3 ) ; // Divide by 16 mode
197
197
198
- let timer_initial_count_register = lapic_pointer. offset ( APICOffset :: TICR as isize / 4 ) ;
199
- timer_initial_count_register . write_volatile ( 0x100000 ) ;
198
+ let ticr = lapic_pointer. offset ( APICOffset :: TICR as isize / 4 ) ;
199
+ ticr . write_volatile ( 0x100000 ) ; // An arbitrary value for the initial value of the timer
200
200
}
201
201
202
202
unsafe fn init_keyboard ( lapic_pointer : * mut u32 ) {
203
- let lvt_keyboard_register = lapic_pointer. offset ( APICOffset :: LVT_LINT1 as isize / 4 ) ;
204
- lvt_keyboard_register . write_volatile ( InterruptIndex :: Keyboard as u8 as u32 ) ;
203
+ let keyboard_register = lapic_pointer. offset ( APICOffset :: LVT_LINT1 as isize / 4 ) ;
204
+ keyboard_register . write_volatile ( InterruptIndex :: Keyboard as u8 as u32 ) ;
205
205
}
206
206
207
207
unsafe fn init_io_apic (
@@ -230,9 +230,9 @@ fn map_apic(
230
230
use x86_64:: structures:: paging:: Page ;
231
231
use x86_64:: structures:: paging:: PageTableFlags as Flags ;
232
232
233
- let phys_addr = PhysAddr :: new ( physical_address) ;
234
- let page = Page :: containing_address ( VirtAddr :: new ( phys_addr . as_u64 ( ) ) ) ;
235
- let frame = PhysFrame :: containing_address ( phys_addr ) ;
233
+ let physical_address = PhysAddr :: new ( physical_address) ;
234
+ let page = Page :: containing_address ( VirtAddr :: new ( physical_address . as_u64 ( ) ) ) ;
235
+ let frame = PhysFrame :: containing_address ( physical_address ) ;
236
236
237
237
let flags = Flags :: PRESENT | Flags :: WRITABLE | Flags :: NO_CACHE ;
238
238
@@ -248,7 +248,6 @@ fn map_apic(
248
248
249
249
fn disable_pic ( ) {
250
250
// Disable any unneeded PIC features, such as timer or keyboard to prevent it from firing interrupts
251
-
252
251
use x86_64:: instructions:: port:: Port ;
253
252
254
253
unsafe {
0 commit comments