PERFORCE change 35321 for review
Marcel Moolenaar
marcel at FreeBSD.org
Thu Jul 31 23:59:37 PDT 2003
http://perforce.freebsd.org/chv.cgi?CH=35321
Change 35321 by marcel at marcel_nfs on 2003/07/31 23:59:33
Undo the sio/ng changes for alpha on this branch. They are
also present on the sio branch and further obsoleted by the
uart branch.
Affected files ...
.. //depot/projects/ia64/sys/alpha/alpha/api_up1000.c#6 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_1000a.c#6 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_2100_a50.c#7 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_2100_a500.c#7 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_axppci_33.c#8 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_eb164.c#6 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_eb64plus.c#7 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_kn20aa.c#6 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_kn300.c#7 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_st550.c#6 edit
.. //depot/projects/ia64/sys/alpha/alpha/dec_st6600.c#6 edit
.. //depot/projects/ia64/sys/alpha/alpha/machdep.c#35 edit
.. //depot/projects/ia64/sys/alpha/alpha/sio_machdep.c#2 delete
.. //depot/projects/ia64/sys/conf/files.alpha#22 edit
Differences ...
==== //depot/projects/ia64/sys/alpha/alpha/api_up1000.c#6 (text+ko) ====
@@ -56,6 +56,8 @@
void api_up1000_init(void);
static void api_up1000_cons_init(void);
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
void
@@ -80,13 +82,30 @@
struct ctb *ctb;
irongate_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 57600);
+#endif
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
- break;
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
+ break;
+ }
case 3:
/* display console ... */
==== //depot/projects/ia64/sys/alpha/alpha/dec_1000a.c#6 (text+ko) ====
@@ -94,6 +94,11 @@
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
+
void dec_1000a_init(int);
static void dec_1000a_cons_init(void);
@@ -108,6 +113,8 @@
static void dec_1000a_intr_enable(int);
static void dec_1000a_intr_init(void);
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
@@ -179,12 +186,35 @@
apecs_init();
}
+#ifdef DDB
+ siogdbattach(0x2f8, 57600);
+#endif
+
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
- break;
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10)).
+ */
+ DELAY(160000000 / comcnrate);
+
+ /*
+ * Force a comconsole on com1 if the SRM has a serial
+ * console.
+ */
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
+ break;
+ }
case 3:
/* display console ... */
==== //depot/projects/ia64/sys/alpha/alpha/dec_2100_a50.c#7 (text+ko) ====
@@ -52,6 +52,10 @@
#include <alpha/pci/apecsvar.h>
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
void dec_2100_a50_init(void);
static void dec_2100_a50_cons_init(void);
@@ -60,6 +64,8 @@
void sio_intr_disestablish(int);
void sio_intr_setup(void);
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
const struct alpha_variation_table dec_2100_a50_variations[] = {
@@ -105,12 +111,32 @@
apecs_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 9600);
+#endif
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
- break;
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10)).
+ */
+ DELAY(160000000 / comcnrate);
+ /*
+ * Force a comconsole on com1 if the SRM has a serial console.
+ */
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
+ break;
+ }
case 3:
/* display console ... */
==== //depot/projects/ia64/sys/alpha/alpha/dec_2100_a500.c#7 (text+ko) ====
@@ -45,11 +45,17 @@
#include <alpha/pci/t2reg.h>
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
void dec_2100_a500_init(int);
static void dec_2100_a500_cons_init(void);
static void dec_2100_a500_intr_init(void);
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
void
@@ -92,11 +98,29 @@
struct ctb *ctb;
t2_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 9600);
+#endif
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
+ /* XXX */
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+ /*
+ * force a comconsole on com1 if the SRM has a serial console
+ */
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
break;
case 3:
==== //depot/projects/ia64/sys/alpha/alpha/dec_axppci_33.c#8 (text+ko) ====
@@ -49,11 +49,17 @@
#include <alpha/pci/lcavar.h>
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
void dec_axppci_33_init(void);
static void dec_axppci_33_cons_init(void);
static int dec_axppci_33_intr_route (device_t, device_t, int);
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
const struct alpha_variation_table dec_axppci_33_variations[] = {
@@ -116,12 +122,32 @@
lca_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 9600);
+#endif
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
- break;
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+ /*
+ * force a comconsole on com1 if the SRM has a serial console
+ */
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
+ break;
+ }
case 3:
/* display console ... */
==== //depot/projects/ia64/sys/alpha/alpha/dec_eb164.c#6 (text+ko) ====
@@ -48,6 +48,11 @@
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
+
void dec_eb164_init(void);
static void dec_eb164_cons_init(void);
static void eb164_intr_init(void);
@@ -56,6 +61,8 @@
extern void eb164_intr_enable_icsr(int irq);
extern void eb164_intr_disable_icsr(int irq);
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
void
@@ -89,12 +96,35 @@
cia_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 57600);
+#endif
+
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
- break;
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+
+ /*
+ * Force a comconsole on com1 if the SRM has a serial
+ * console.
+ */
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
+ break;
+ }
case 3:
/* display console ... */
==== //depot/projects/ia64/sys/alpha/alpha/dec_eb64plus.c#7 (text+ko) ====
@@ -68,6 +68,11 @@
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
+
void dec_eb64plus_init(void);
static void dec_eb64plus_cons_init(void);
static void dec_eb64plus_intr_init(void);
@@ -78,6 +83,7 @@
extern const char * bootdev_protocol(void);
extern int bootdev_boot_dev_type(void);
+extern int siocnattach(int, int);
extern int sccnattach(void);
const struct alpha_variation_table dec_eb64plus_variations[] = {
@@ -126,7 +132,26 @@
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
- break;
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+
+ /*
+ * force a comconsole on com1 if the SRM has a serial
+ * console.
+ */
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
+ break;
+ }
case 3:
#ifdef DEV_SC
==== //depot/projects/ia64/sys/alpha/alpha/dec_kn20aa.c#6 (text+ko) ====
@@ -50,6 +50,11 @@
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
+
void dec_kn20aa_init(void);
static void dec_kn20aa_cons_init(void);
static void dec_kn20aa_intr_init(void);
@@ -57,6 +62,8 @@
static void dec_kn20aa_intr_disable(int);
static void dec_kn20aa_intr_enable(int);
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
#if 0
@@ -98,12 +105,29 @@
cia_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 9600);
+#endif
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
- break;
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
+ break;
+ }
case 3:
/* display console ... */
==== //depot/projects/ia64/sys/alpha/alpha/dec_kn300.c#7 (text+ko) ====
@@ -58,6 +58,11 @@
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
+
void dec_kn300_init(void);
void dec_kn300_cons_init(void);
@@ -69,6 +74,8 @@
};
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
void
@@ -97,12 +104,26 @@
struct ctb *ctb;
mcbus_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 57600);
+#endif
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
break;
case 3:
==== //depot/projects/ia64/sys/alpha/alpha/dec_st550.c#6 (text+ko) ====
@@ -56,6 +56,11 @@
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
+
void st550_init(void);
static void st550_cons_init(void);
static void st550_intr_init(void);
@@ -67,6 +72,8 @@
#define ST550_PCI_IRQ_BEGIN 8
#define ST550_PCI_MAX_IRQ 47
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
void
@@ -97,11 +104,27 @@
cia_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 57600);
+#endif
+
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
+ /* XXX */
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
break;
case 3:
==== //depot/projects/ia64/sys/alpha/alpha/dec_st6600.c#6 (text+ko) ====
@@ -47,6 +47,11 @@
#include "opt_dev_sc.h"
+#ifndef CONSPEED
+#define CONSPEED TTYDEF_SPEED
+#endif
+static int comcnrate = CONSPEED;
+
void st6600_init(void);
static void st6600_cons_init(void);
static void st6600_intr_init(void);
@@ -54,6 +59,8 @@
#define ST6600_PCI_IRQ_BEGIN 8
#define ST6600_PCI_MAX_IRQ 63
+extern int siocnattach(int, int);
+extern int siogdbattach(int, int);
extern int sccnattach(void);
void
@@ -79,13 +86,30 @@
struct ctb *ctb;
tsunami_init();
+#ifdef DDB
+ siogdbattach(0x2f8, 57600);
+#endif
ctb = (struct ctb *)(((caddr_t)hwrpb) + hwrpb->rpb_ctb_off);
switch (ctb->ctb_term_type) {
case 2:
/* serial console ... */
- break;
+ /* XXX */
+ {
+ /*
+ * Delay to allow PROM putchars to complete.
+ * FIFO depth * character time,
+ * character time = (1000000 / (defaultrate / 10))
+ */
+ DELAY(160000000 / comcnrate);
+ comconsole = 0;
+ if (siocnattach(0x3f8, comcnrate))
+ panic("can't init serial console");
+
+ boothowto |= RB_SERIAL;
+ break;
+ }
case 3:
/* display console ... */
==== //depot/projects/ia64/sys/alpha/alpha/machdep.c#35 (text+ko) ====
@@ -122,7 +122,6 @@
#include <sys/sysctl.h>
#include <sys/uio.h>
#include <sys/linker.h>
-#include <sys/cons.h>
#include <net/netisr.h>
#include <vm/vm.h>
#include <vm/vm_kern.h>
@@ -586,11 +585,10 @@
* Initalize the real console, so the the bootstrap console is
* no longer necessary.
*/
- if (platform.cons_init)
+ if (platform.cons_init) {
platform.cons_init();
- promcndetach();
- cninit();
-
+ promcndetach();
+ }
/* NO MORE FIRMWARE ACCESS ALLOWED */
#ifdef _PMAP_MAY_USE_PROM_CONSOLE
/*
==== //depot/projects/ia64/sys/conf/files.alpha#22 (text+ko) ====
@@ -78,7 +78,6 @@
alpha/alpha/promcons.c standard
alpha/alpha/prom_disp.s standard
alpha/alpha/sgmap.c standard
-alpha/alpha/sio_machdep.c optional sio
alpha/alpha/support.s standard
alpha/alpha/swtch.s standard
alpha/alpha/sys_machdep.c standard
@@ -179,6 +178,7 @@
dev/kbd/kbd.c optional kbd
dev/kbd/kbd.c optional sc
dev/kbd/kbd.c optional ukbd
+dev/sio/sio.c optional sio
dev/sio/sio_isa.c optional sio isa
dev/syscons/schistory.c optional sc
dev/syscons/scmouse.c optional sc
More information about the p4-projects
mailing list