* Add hardware_init hook.
authorIan Carmichael <iancarm@cygnus>
Mon, 9 Feb 1998 23:53:33 +0000 (23:53 +0000)
committerIan Carmichael <iancarm@cygnus>
Mon, 9 Feb 1998 23:53:33 +0000 (23:53 +0000)
sim/mips/configure.in
sim/mips/interp.c

index 5b3a1ca486b8b66df443c1b7dac46976a94c45bc..a3b294abfdad2a93ebc0fdc71e3d7b614b8b8761 100644 (file)
@@ -201,7 +201,9 @@ AC_SUBST(sim_gen)
 
 case "${target}" in
 # start-sanitize-sky
-  mips64r59*-sky-*)  mips_extra_objs='$(SIM_SKY_OBJS)' ;;
+  mips64r59*-sky-*)  mips_extra_objs='$(SIM_SKY_OBJS)' ;
+                    SIM_SUBTARGET="-DWITH_DEVICES=1 -DDEVICE_INIT=1";;
+
 # end-sanitize-sky
   *)                 mips_extra_objs="" ;;
 esac
index 9045004d72862635e7149540e82897b8fea7f355..da161828a0825fbe923d4051a87bf65e231d0fdb 100644 (file)
@@ -252,6 +252,15 @@ interrupt_event (SIM_DESC sd, void *data)
 }
 
 
+/*---------------------------------------------------------------------------*/
+/*-- Device registration hook -----------------------------------------------*/
+/*---------------------------------------------------------------------------*/
+static device_init(SIM_DESC sd) {
+#ifdef DEVICE_INIT
+  extern void register_devices(SIM_DESC);
+  register_devices(sd);
+#endif
+}
 
 /*---------------------------------------------------------------------------*/
 /*-- GDB simulator interface ------------------------------------------------*/
@@ -292,6 +301,8 @@ sim_open (kind, cb, abfd, argv)
                   MEM_SIZE, /* actual size */
                   K0BASE);
 
+  device_init(sd);
+
   /* getopt will print the error message so we just have to exit if this fails.
      FIXME: Hmmm...  in the case of gdb we need getopt to call
      print_filtered.  */