Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Nov 2009 12:52:51 +0000 (UTC)
From:      Randall Stewart <rrs@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r198985 - in projects/mips/sys/mips: conf rmi
Message-ID:  <200911061252.nA6Cqpgo017217@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: rrs
Date: Fri Nov  6 12:52:51 2009
New Revision: 198985
URL: http://svn.freebsd.org/changeset/base/198985

Log:
  Ok With this commit we actually get through
  the mi_startup (or to the last of it).. and
  hit a panic after :
  
  uart0: <16550 or compatible> on iodi0
  Trap cause = 2 (TLB miss....)
  
  I did have to take the pci bus OUT of the
  build to get this far, hit a cache error with
  the PCI code in. Interesting thing is the machine
  reboots too ;-)

Modified:
  projects/mips/sys/mips/conf/XLR
  projects/mips/sys/mips/rmi/bus_space_rmi.c
  projects/mips/sys/mips/rmi/clock.c
  projects/mips/sys/mips/rmi/files.xlr
  projects/mips/sys/mips/rmi/xlr_machdep.c

Modified: projects/mips/sys/mips/conf/XLR
==============================================================================
--- projects/mips/sys/mips/conf/XLR	Fri Nov  6 11:29:10 2009	(r198984)
+++ projects/mips/sys/mips/conf/XLR	Fri Nov  6 12:52:51 2009	(r198985)
@@ -61,6 +61,7 @@ makeoptions	DEBUG=-g		# Build kernel wit
 #profile		2
 
 #options 	SCHED_ULE		# ULE scheduler
+options		VERBOSE_SYSINIT
 options 	SCHED_4BSD		# 4BSD scheduler
 #options 	PREEMPTION		# Enable kernel thread preemption
 #options 	FULL_PREEMPTION		# Enable kernel thread preemption

Modified: projects/mips/sys/mips/rmi/bus_space_rmi.c
==============================================================================
--- projects/mips/sys/mips/rmi/bus_space_rmi.c	Fri Nov  6 11:29:10 2009	(r198984)
+++ projects/mips/sys/mips/rmi/bus_space_rmi.c	Fri Nov  6 12:52:51 2009	(r198985)
@@ -42,7 +42,6 @@ __FBSDID("$FreeBSD$");
 
 #include <machine/bus.h>
 #include <machine/cache.h>
-void xlr_putc(char);
 void xlr_print_int(uint32_t);
 
 static int 

Modified: projects/mips/sys/mips/rmi/clock.c
==============================================================================
--- projects/mips/sys/mips/rmi/clock.c	Fri Nov  6 11:29:10 2009	(r198984)
+++ projects/mips/sys/mips/rmi/clock.c	Fri Nov  6 12:52:51 2009	(r198985)
@@ -179,6 +179,7 @@ rmi_early_counter_init()
 	pic_update_control(1 << (8 + 6));
 }
 
+void tick_init(void);
 
 void
 platform_initclocks(void)
@@ -246,6 +247,7 @@ platform_initclocks(void)
 		/* Setup count-compare interrupt for vcpu[1-31] */
 		mips_wr_compare((xlr_boot1_info.cpu_frequency) / hz);
 	}
+	tick_init();
 }
 
 unsigned 

Modified: projects/mips/sys/mips/rmi/files.xlr
==============================================================================
--- projects/mips/sys/mips/rmi/files.xlr	Fri Nov  6 11:29:10 2009	(r198984)
+++ projects/mips/sys/mips/rmi/files.xlr	Fri Nov  6 12:52:51 2009	(r198985)
@@ -14,8 +14,8 @@ mips/rmi/uart_bus_xlr_iodi.c			optional 
 mips/rmi/uart_cpu_mips_xlr.c			optional uart 
 mips/rmi/perfmon_kern.c				optional xlr_perfmon
 mips/rmi/perfmon_percpu.c			optional xlr_perfmon
-mips/rmi/pcibus.c				optional pci
-mips/rmi/xlr_pci.c				optional pci
+#mips/rmi/pcibus.c				optional pci
+#mips/rmi/xlr_pci.c				optional pci
 #mips/rmi/xls_ehci.c				optional usb ehci
 dev/rmi/xlr/rge.c				optional rge
 mips/rmi/bus_space_rmi.c			standard

Modified: projects/mips/sys/mips/rmi/xlr_machdep.c
==============================================================================
--- projects/mips/sys/mips/rmi/xlr_machdep.c	Fri Nov  6 11:29:10 2009	(r198984)
+++ projects/mips/sys/mips/rmi/xlr_machdep.c	Fri Nov  6 12:52:51 2009	(r198985)
@@ -368,48 +368,6 @@ mips_init(void)
 #endif
 }
 
-void (*xlr_putchar)(char)=NULL;
-
-static void
-xlr_putc_init(void)
-{
-	uint32_t addr;
-	addr = (uint32_t)(xlr_boot1_info.uart_putchar & 0x00000000ffffffff);
-	xlr_putchar = (void (*)(char))(addr);
-}
-
-void xlr_putc(char);
-void xlr_print_int(uint32_t val);
-
-void
-xlr_putc(char c)
-{
-	(*xlr_putchar)(c);
-	DELAY(1000);
-}
-
-void
-xlr_print_int(uint32_t val)
-{
-  int i;
-  int idx;
-  char ary[16] = {
-	'0', '1', '2', '3',
-	'4', '5', '6', '7',
-	'8', '9', 'a', 'b',
-	'c', 'd', 'e', 'f'
-  };
-  xlr_putc('0');
-  xlr_putc('x');
-  for(i=7;i>=0;i--) {
-	idx = (val >> (i*4)) & 0x0000000f;
-	xlr_putc(ary[idx]);
-  }
-  xlr_putc(' ');
-  xlr_putc(015);
-  xlr_putc(012);
-}
-void tick_init(void);
 void
 platform_start(__register_t a0 __unused,
     __register_t a1 __unused,
@@ -454,7 +412,6 @@ platform_start(__register_t a0 __unused,
 	mips_timer_early_init(platform_get_frequency());
 
 	/* Init the time counter in the PIC and local putc routine*/
-	xlr_putc_init();
 	rmi_early_counter_init();
 	
 	/* Init console please */
@@ -526,7 +483,6 @@ platform_start(__register_t a0 __unused,
 
 	/* Set up hz, among others. */
 	mips_init();
-	pcpup = (struct pcpu *)NULL;	/* TODO To be removed */
 
 #ifdef SMP
 	/*
@@ -583,13 +539,10 @@ platform_start(__register_t a0 __unused,
 	 * mips_init() XXX NOTE: We may need to move this to SMP based init
 	 * code for each CPU, later.
 	 */
-	printf("Here\n");
 	rmi_spin_mutex_safe = 1;
 	on_chip_init();
-	printf("there\n");
 	mips_timer_init_params(platform_get_frequency(), 0);
-	printf("ok\n");
-	tick_init();
+	printf("Platform specific startup now completes\n");
 }
 
 void



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200911061252.nA6Cqpgo017217>