# # ChangeLog for trunk/hal/x86_64/core/hal_init.c # # Generated by Trac 1.2.3 # Apr 20, 2024, 6:26:09 AM Thu, 10 Aug 2017 09:48:01 GMT max@… [365] * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) Remove debug function. Tue, 08 Aug 2017 09:28:39 GMT max@… [345] * trunk/hal/x86_64/core/hal_init.c (modified) Initialize rsp0 (in both the TSS and the TLS). Mon, 07 Aug 2017 13:11:45 GMT max@… [339] * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Add support for context switch - not tested yet, due to some other ... Sun, 06 Aug 2017 06:33:00 GMT max@… [323] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/kernel/libk/string.c (modified) * trunk/kernel/libk/string.h (modified) Clean up, and define strstr() in libk. Wed, 02 Aug 2017 12:36:58 GMT max@… [312] * trunk/hal/x86_64/core/hal_boot.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_multiboot.h (modified) Add a --no-smp option. Tue, 01 Aug 2017 08:44:43 GMT max@… [310] * trunk/hal/x86_64/core/hal_init.c (modified) Use pause(). Tue, 01 Aug 2017 08:30:39 GMT max@… [308] * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Add a basic syscall entry. Mon, 31 Jul 2017 12:10:39 GMT max@… [298] * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) Sync with TSAR. Mon, 31 Jul 2017 10:53:13 GMT max@… [293] * trunk/hal/x86_64/core/hal_init.c (modified) Fix previous. Still don't know where the race comes from... Mon, 31 Jul 2017 08:16:33 GMT max@… [292] * trunk/hal/x86_64/core/hal_init.c (modified) Use different stacks for NMIs and Double Faults. Thu, 27 Jul 2017 09:22:39 GMT max@… [283] * trunk/hal/x86_64/core/hal_init.c (modified) horror Wed, 26 Jul 2017 11:24:51 GMT max@… [276] * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) update Wed, 26 Jul 2017 08:54:49 GMT max@… [274] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Add tls_tf. Thu, 20 Jul 2017 12:37:57 GMT max@… [256] * trunk/hal/x86_64/core/hal_init.c (modified) Remove the IRQ line. It will have to be enabled somewhere in the HAL. Thu, 20 Jul 2017 12:35:44 GMT max@… [255] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/kernel/devices/dev_txt.c (modified) Don't route the IRQ for IMPL_TXT_RS2, it is multiplexed in software. Thu, 20 Jul 2017 12:24:37 GMT max@… [254] * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/kernel/devices/dev_txt.h (modified) Use IMPL_TXT_RS2. Thu, 20 Jul 2017 11:30:05 GMT max@… [252] * trunk/hal/generic/hal_drivers.h (modified) * trunk/hal/tsar_mips32/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/kernel/devices/dev_pic.c (modified) Hide IMPL_PIC_. Thu, 20 Jul 2017 07:55:05 GMT max@… [240] * trunk/hal/x86_64/core/hal_acpi.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_irqmask.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) Make the secondary CPUs jump into kernel_init(). Wed, 19 Jul 2017 12:57:03 GMT max@… [237] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) Attach the secondary CPUs, and for now route the keyboard irq to ... Wed, 19 Jul 2017 12:30:15 GMT max@… [236] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_smpboot.S (added) Launch the secondary CPUs. For now, they all say hello and enter an ... Wed, 19 Jul 2017 08:03:41 GMT max@… [235] * trunk/hal/x86_64/core/hal_acpi.c (modified) * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) Start adding some code for SMP support Tue, 18 Jul 2017 13:33:07 GMT max@… [234] * trunk/hal/x86_64/core/hal_acpi.c (modified) * trunk/hal/x86_64/core/hal_acpi.h (modified) * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_atomic.c (modified) * trunk/hal/x86_64/core/hal_boot.S (modified) * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_exception.c (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_irqmask.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_multiboot.h (modified) * trunk/hal/x86_64/core/hal_ppm.c (modified) * trunk/hal/x86_64/core/hal_register.h (modified) * trunk/hal/x86_64/core/hal_remote.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) * trunk/hal/x86_64/core/hal_special.c (modified) * trunk/hal/x86_64/core/x86_printf.c (modified) style Tue, 18 Jul 2017 08:29:58 GMT max@… [224] * trunk/hal/x86_64/core/hal_boot.h (modified) * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_types.h (modified) Create a (virtual) copy of the local cluster in 0xffffe00000000000, ... Thu, 13 Jul 2017 13:24:38 GMT max@… [203] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) * trunk/hal/x86_64/drivers/pic_apic.c (modified) * trunk/hal/x86_64/drivers/soclib_bdv.c (modified) * trunk/hal/x86_64/drivers/soclib_xcu.c (modified) start moving the APIC code into the PIC driver Thu, 13 Jul 2017 12:09:32 GMT max@… [202] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) register the ATA IRQs Thu, 13 Jul 2017 10:54:18 GMT max@… [199] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) map the LAPIC and IOAPIC in a separate function Thu, 13 Jul 2017 10:28:37 GMT max@… [195] * trunk/hal/x86_64/core/hal_context.c (modified) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) add IOC (ATA) Thu, 13 Jul 2017 07:27:38 GMT max@… [192] * trunk/hal/x86_64/core/hal_init.c (modified) initialize pic Mon, 10 Jul 2017 08:33:15 GMT max@… [168] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_special.c (modified) make the TLS initialization per-cpu Mon, 10 Jul 2017 08:14:27 GMT max@… [166] * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_register.h (modified) identify the cpu features Mon, 10 Jul 2017 07:13:04 GMT max@… [165] * trunk/hal/x86_64/core/hal_init.c (modified) put the per-cpu structures into one structure Fri, 07 Jul 2017 13:22:59 GMT max@… [164] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) we're gonna use an array of TSSs Fri, 07 Jul 2017 12:39:34 GMT max@… [162] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) start making these variables per-cpu Fri, 07 Jul 2017 07:16:50 GMT max@… [154] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/x86_printf.c (modified) use a demultiplexer to get the channel on the serial port, and make ... Thu, 06 Jul 2017 13:47:20 GMT max@… [152] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_interrupt.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) add a basic RS232 COM1 implementation Wed, 05 Jul 2017 13:40:42 GMT max@… [150] * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) remove debug and unused code Tue, 04 Jul 2017 10:05:39 GMT max@… [138] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) * trunk/hal/x86_64/core/hal_special.c (modified) * trunk/hal/x86_64/drivers/soclib_xcu.c (modified) update Tue, 04 Jul 2017 08:17:44 GMT max@… [137] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/drivers/soclib_xcu.c (modified) improve the APIC implementation Mon, 03 Jul 2017 15:21:06 GMT max@… [135] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/drivers/soclib_xcu.c (modified) start moving the APIC into the XCU driver Mon, 03 Jul 2017 10:33:21 GMT max@… [119] * trunk/hal/x86_64/core/hal_init.c (modified) provide pages_nr Fri, 30 Jun 2017 15:18:13 GMT max@… [116] * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_ppm.c (modified) complete hal_ppm_init, to take into account the reserved areas Fri, 30 Jun 2017 09:26:32 GMT max@… [114] * trunk/hal/x86_64/core/hal_gpt.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) compute the offset for bootinfo Thu, 29 Jun 2017 13:48:39 GMT max@… [99] * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_irqmask.c (modified) * trunk/hal/x86_64/core/hal_trap.c (modified) add the irq functions; we will forbid nested critical sections, so ... Thu, 29 Jun 2017 11:27:43 GMT max@… [94] * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_drivers.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_remote.c (modified) * trunk/hal/x86_64/core/hal_special.c (modified) * trunk/hal/x86_64/core/x86_printf.c (modified) remove lw_unc, add a few ops, and update a few things Wed, 28 Jun 2017 13:24:02 GMT max@… [86] * trunk/hal/x86_64/core/hal_apic.c (modified) * trunk/hal/x86_64/core/hal_apic.h (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_kentry.h (modified) * trunk/hal/x86_64/core/hal_trap.c (modified) enable the timer (not yet calibrated) Wed, 28 Jun 2017 11:23:51 GMT max@… [82] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/core/hal_apic.c (moved) * trunk/hal/x86_64/core/hal_apic.h (moved) * trunk/hal/x86_64/core/hal_cpu.S (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_register.h (modified) * trunk/hal/x86_64/core/hal_special.c (modified) * trunk/hal/x86_64/core/hal_trap.c (modified) Rename a certain number of things, and improve the APIC support. Tue, 27 Jun 2017 15:29:22 GMT max@… [81] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_internal.h (modified) * trunk/hal/x86_64/drivers/soclib_xcu.c (modified) silence a few warnings Tue, 27 Jun 2017 15:24:02 GMT max@… [80] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_kentry.S (modified) * trunk/hal/x86_64/core/hal_lapic.h (modified) * trunk/hal/x86_64/core/hal_segmentation.h (modified) * trunk/hdd/virt_hdd.dmg (modified) add the timer vector, for now it double-faults Tue, 27 Jun 2017 09:23:58 GMT max@… [74] * trunk/hal/x86_64/core/hal_init.c (modified) (forgot to commit this) Tue, 27 Jun 2017 08:56:25 GMT max@… [72] * trunk/hal/generic/hal_remote.h (modified) * trunk/hal/tsar_mips32/core/hal_remote.c (modified) * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_remote.c (modified) start defining some remote functions, and use uint8_t instead of char Tue, 27 Jun 2017 08:39:08 GMT max@… [70] * trunk/hal/x86_64/core/hal_init.c (modified) * trunk/hal/x86_64/core/hal_special.c (modified) * trunk/hal/x86_64/core/hal_types.h (modified) * trunk/hdd/virt_hdd.dmg (modified) * trunk/kernel/kern/kernel_init.c (modified) start constructing the bootinfo structure Mon, 26 Jun 2017 14:58:25 GMT max@… [61] * trunk/hal/x86_64/core/hal_init.c (modified) cosmetic Mon, 26 Jun 2017 13:24:20 GMT max@… [51] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/core (added) * trunk/hal/x86_64/core/hal_acpi.c (moved) * trunk/hal/x86_64/core/hal_acpi.h (moved) * trunk/hal/x86_64/core/hal_arch.c (moved) * trunk/hal/x86_64/core/hal_arch.h (moved) * trunk/hal/x86_64/core/hal_atomic.c (moved) * trunk/hal/x86_64/core/hal_boot.S (moved) * trunk/hal/x86_64/core/hal_boot.h (moved) * trunk/hal/x86_64/core/hal_context.c (moved) * trunk/hal/x86_64/core/hal_cpu.S (moved) * trunk/hal/x86_64/core/hal_do_exceptions.c (moved) * trunk/hal/x86_64/core/hal_do_interrupt.c (moved) * trunk/hal/x86_64/core/hal_do_syscall.c (moved) * trunk/hal/x86_64/core/hal_exception.c (moved) * trunk/hal/x86_64/core/hal_gpt.c (moved) * trunk/hal/x86_64/core/hal_init.c (moved) * trunk/hal/x86_64/core/hal_internal.h (moved) * trunk/hal/x86_64/core/hal_interrupt.c (moved) * trunk/hal/x86_64/core/hal_irqmask.c (moved) * trunk/hal/x86_64/core/hal_kentry.S (moved) * trunk/hal/x86_64/core/hal_kentry.h (moved) * trunk/hal/x86_64/core/hal_lapic.c (moved) * trunk/hal/x86_64/core/hal_lapic.h (moved) * trunk/hal/x86_64/core/hal_multiboot.h (moved) * trunk/hal/x86_64/core/hal_register.h (moved) * trunk/hal/x86_64/core/hal_remote.c (moved) * trunk/hal/x86_64/core/hal_segmentation.h (moved) * trunk/hal/x86_64/core/hal_special.c (moved) * trunk/hal/x86_64/core/hal_syscall.c (moved) * trunk/hal/x86_64/core/hal_trap.c (moved) * trunk/hal/x86_64/core/hal_types.h (moved) * trunk/hal/x86_64/core/hal_uspace.c (moved) * trunk/hal/x86_64/core/x86_printf.c (moved) Create the core/ sub-directory for x86_64. Mon, 26 Jun 2017 09:48:28 GMT max@… [47] * trunk/Makefile.x86 (modified) * trunk/hal/x86_64/hal_boot.h (modified) * trunk/hal/x86_64/hal_gpt.c (modified) * trunk/hal/x86_64/hal_init.c (modified) * trunk/hal/x86_64/x86_printf.c (modified) * trunk/kernel/kernel_x86.ld (modified) Use mcmodel=large, in order to have a kernel image that is located at ...