bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 3/5 gnumach] linux: No need to init PIT timer twice


From: Damien Zammit
Subject: [PATCH 3/5 gnumach] linux: No need to init PIT timer twice
Date: Wed, 01 Feb 2023 10:05:58 +0000

---
 linux/dev/arch/i386/kernel/irq.c | 12 ++----------
 linux/dev/init/main.c            |  2 ++
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/linux/dev/arch/i386/kernel/irq.c b/linux/dev/arch/i386/kernel/irq.c
index 67feea84..5f221da1 100644
--- a/linux/dev/arch/i386/kernel/irq.c
+++ b/linux/dev/arch/i386/kernel/irq.c
@@ -421,7 +421,7 @@ reserve_mach_irqs (void)
 {
   unsigned int i;

-  for (i = 0; i < NINTR; i++)
+  for (i = 1; i < NINTR; i++)
     {
       if (ivect[i] != intnull)
        /* This dummy action does not specify SA_SHIRQ, so
@@ -707,7 +707,6 @@ void
 init_IRQ (void)
 {
   char *p;
-  int latch = (CLKNUM + hz / 2) / hz;

   /*
    * Ensure interrupts are disabled.
@@ -715,19 +714,12 @@ init_IRQ (void)
   (void) splhigh ();

 #ifndef APIC
-  /*
-   * Program counter 0 of 8253 to interrupt hz times per second.
-   */
-  outb_p (PIT_C0 | PIT_SQUAREMODE | PIT_READMODE, PITCTL_PORT);
-  outb_p (latch & 0xff, PITCTR0_PORT);
-  outb (latch >> 8, PITCTR0_PORT);
-#endif
-
   /*
    * Install our clock interrupt handler.
    */
   old_clock_handler = ivect[0];
   ivect[0] = linux_timer_intr;
+#endif

   reserve_mach_irqs ();

diff --git a/linux/dev/init/main.c b/linux/dev/init/main.c
index 6d853957..207724f3 100644
--- a/linux/dev/init/main.c
+++ b/linux/dev/init/main.c
@@ -160,7 +160,9 @@ linux_init (void)
   pcmcia_init ();
 #endif

+#ifndef APIC
   restore_IRQ ();
+#endif

   linux_auto_config = 0;
 }
--
2.34.1





reply via email to

[Prev in Thread] Current Thread [Next in Thread]