[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Compiling mesh.c
こんばんは。
私のマシンにはSCSIカードが刺さっていないので内蔵のMESHを動か
そうとしています。mesh_intrの引数がvoidでないためにmesh.cの
コンパイルでこけましたが以下の変更でコンパイルできました。
が、TARGET_MEM_FUNCTIONをdefineする必要があってegcsを作り直
しているので動くかどうかはまだ分かりません。
ところで、クロス環境でもインストールフロッピーは作れるのでしょ
うか?インストールフロッピー自体今まで作ったことがないんです。
--- mesh.c.orig Tue Nov 10 06:52:17 1998
+++ mesh.c Tue Nov 24 00:58:51 1998
@@ -165,7 +165,7 @@
void mesh_start_data_xfer(mesh_softc_t, mesh_regmap_t, mesh_state_t);
void mesh_end_transfer(mesh_softc_t, mesh_regmap_t, mesh_state_t);
void mesh_get_status(mesh_softc_t, mesh_regmap_t, mesh_state_t);
-void mesh_intr(mesh_softc_t);
+void mesh_intr __P((void *));
void mesh_end(mesh_softc_t, mesh_regmap_t, mesh_state_t);
void mesh_process_msgin(mesh_softc_t, mesh_regmap_t, mesh_state_t);
void mesh_disconnect(mesh_softc_t mesh, mesh_regmap_t, mesh_state_t);
@@ -273,7 +273,6 @@
mesh_scsi_cmd,
meshminphys,
NULL,
- NULL,
};
struct scsipi_device mesh_dev = {
@@ -368,7 +367,7 @@
config_found(&mesh->sc_dev, &mesh->sc_link, scsiprint);
intr_establish(mesh->m_interrupt_number, IST_LEVEL, IPL_BIO,
- mesh_intr, mesh);
+ (void *)mesh_intr, mesh);
}
/*
@@ -732,14 +731,16 @@
}
void
-mesh_intr(mesh)
- mesh_softc_t mesh;
+mesh_intr(arg)
+ void *arg;
{
+ mesh_softc_t mesh;
mesh_regmap_t regs;
mesh_state_t state;
unsigned char int_status, exception, error, bus0status, bus1status;
int i;
+ mesh = (mesh_softc_t)arg;
regs = mesh->m_regs;
state = mesh->m_current;