~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Minix Cross Reference
Minix/kernel/proto.h


  1 /* $Id: proto.h,v 1.6 1996/08/01 02:08:42 paul Exp $ */
  2 
  3 /* Function prototypes. */
  4 
  5 #ifndef PROTO_H
  6 #define PROTO_H
  7 
  8 /* Struct declarations. */
  9 struct dpeth;
 10 struct proc;
 11 struct tty;
 12 
 13 /* at_wini.c, bios_wini.c, esdi_wini.c, ps_wini.c, xt_wini.c, wini.c */
 14 _PROTOTYPE( void winchester_task, (void)                                );
 15 _PROTOTYPE( void at_winchester_task, (void)                             );
 16 _PROTOTYPE( void bios_winchester_task, (void)                           );
 17 _PROTOTYPE( void esdi_winchester_task, (void)                           );
 18 _PROTOTYPE( void ps_winchester_task, (void)                             );
 19 _PROTOTYPE( void xt_winchester_task, (void)                             );
 20 
 21 /* aha_scsi.c */
 22 _PROTOTYPE( void aha_scsi_task, (void)                                  );
 23 
 24 /* clock.c */
 25 _PROTOTYPE( void clock_task, (void)                                     );
 26 _PROTOTYPE( void clock_stop, (void)                                     );
 27 _PROTOTYPE( clock_t get_uptime, (void)                                  );
 28 _PROTOTYPE( void syn_alrm_task, (void)                                  );
 29 _PROTOTYPE( int clock_handler, (int irq)                                );
 30 
 31 /* dmp.c */
 32 _PROTOTYPE( void map_dmp, (void)                                        );
 33 _PROTOTYPE( void p_dmp, (void)                                          );
 34 _PROTOTYPE( void reg_dmp, (struct proc *rp)                             );
 35 
 36 /* dp8390.c */
 37 _PROTOTYPE( void dp8390_task, (void)                                    );
 38 _PROTOTYPE( void dp_dump, (void)                                        );
 39 _PROTOTYPE( void dp8390_stop, (void)                                    );
 40 
 41 /* floppy.c, stfloppy.c, sunfloppy.c */
 42 _PROTOTYPE( void floppy_task, (void)                                    );
 43 _PROTOTYPE( void floppy_stop, (void)                                    );
 44 
 45 /* main.c, stmain.c */
 46 _PROTOTYPE( void main, (void)                                           );
 47 _PROTOTYPE( void panic, (const char *s, int n)                          );
 48 
 49 /* mcd.c */
 50 _PROTOTYPE( void mcd_task, (void)                                       );
 51 
 52 /* memory.c */
 53 _PROTOTYPE( void mem_task, (void)                                       );
 54 
 55 /* misc.c */
 56 _PROTOTYPE( int env_parse, (char *env, char *fmt, int field,
 57                         long *param, long min, long max)                );
 58 
 59 /* printer.c, stprint.c, sunprinter.c */
 60 _PROTOTYPE( void printer_task, (void)                                   );
 61 
 62 /* proc.c */
 63 _PROTOTYPE( void interrupt, (int task)                                  );
 64 _PROTOTYPE( int lock_mini_send, (struct proc *caller_ptr,
 65                 int dest, message *m_ptr)                               );
 66 _PROTOTYPE( void lock_pick_proc, (void)                                 );
 67 _PROTOTYPE( void lock_ready, (struct proc *rp)                          );
 68 _PROTOTYPE( void lock_sched, (void)                                     );
 69 _PROTOTYPE( void lock_unready, (struct proc *rp)                        );
 70 _PROTOTYPE( int sys_call, (int function, int src_dest, message *m_ptr)  );
 71 _PROTOTYPE( void unhold, (void)                                         );
 72 
 73 /* rs232.c */
 74 _PROTOTYPE( void rs_init, (struct tty *tp)                              );
 75 
 76 /* sb16_dsp.c */
 77 _PROTOTYPE( void dsp_task, (void)                                       );
 78 
 79 /* sb16_mixer.c */
 80 _PROTOTYPE( void mixer_task, (void)                                     );
 81 
 82 /* system.c */
 83 _PROTOTYPE( void cause_sig, (int proc_nr, int sig_nr)                   );
 84 _PROTOTYPE( void inform, (void)                                         );
 85 _PROTOTYPE( phys_bytes numap, (int proc_nr, vir_bytes vir_addr, 
 86                 vir_bytes bytes)                                        );
 87 _PROTOTYPE( void sys_task, (void)                                       );
 88 _PROTOTYPE( phys_bytes umap, (struct proc *rp, int seg, vir_bytes vir_addr,
 89                 vir_bytes bytes)                                        );
 90 
 91 /* tty.c */
 92 _PROTOTYPE( void handle_events, (struct tty *tp)                        );
 93 _PROTOTYPE( void sigchar, (struct tty *tp, int sig)                     );
 94 _PROTOTYPE( void tty_task, (void)                                       );
 95 _PROTOTYPE( int in_process, (struct tty *tp, char *buf, int count)      );
 96 _PROTOTYPE( void out_process, (struct tty *tp, char *bstart, char *bpos,
 97                                 char *bend, int *icount, int *ocount)   );
 98 _PROTOTYPE( void tty_wakeup, (clock_t now)                              );
 99 _PROTOTYPE( void tty_reply, (int code, int replyee, int proc_nr,
100                                                         int status)     );
101 _PROTOTYPE( void tty_devnop, (struct tty *tp)                           );
102 
103 /* library */
104 _PROTOTYPE( void *memcpy, (void *_s1, const void *_s2, size_t _n)       );
105 
106 #if (CHIP == INTEL)
107 
108 /* clock.c */
109 _PROTOTYPE( void milli_start, (struct milli_state *msp)                 );
110 _PROTOTYPE( unsigned milli_elapsed, (struct milli_state *msp)           );
111 _PROTOTYPE( void milli_delay, (unsigned millisec)                       );
112 
113 /* console.c */
114 _PROTOTYPE( void cons_stop, (void)                                      );
115 _PROTOTYPE( void putk, (int c)                                          );
116 _PROTOTYPE( void scr_init, (struct tty *tp)                             );
117 _PROTOTYPE( void toggle_scroll, (void)                                  );
118 _PROTOTYPE( int con_loadfont, (phys_bytes user_phys)                    );
119 
120 /* cstart.c */
121 _PROTOTYPE( void cstart, (U16_t cs, U16_t ds, U16_t mcs, U16_t mds,
122                                 U16_t parmoff, U16_t parmsize)          );
123 _PROTOTYPE( char *k_getenv, (char *name)                                );
124 
125 /* exception.c */
126 _PROTOTYPE( void exception, (unsigned vec_nr)                           );
127 
128 /* i8259.c */
129 _PROTOTYPE( irq_handler_t get_irq_handler, (int irq)                    );
130 _PROTOTYPE( void put_irq_handler, (int irq, irq_handler_t handler)      );
131 _PROTOTYPE( void intr_init, (int mine)                                  );
132 
133 /* keyboard.c */
134 _PROTOTYPE( void kb_init, (struct tty *tp)                              );
135 _PROTOTYPE( int kbd_loadmap, (phys_bytes user_phys)                     );
136 _PROTOTYPE( void wreboot, (int how)                                     );
137 
138 /* klib*.s */
139 _PROTOTYPE( void bios13, (void)                                         );
140 _PROTOTYPE( phys_bytes check_mem, (phys_bytes base, phys_bytes size)    );
141 _PROTOTYPE( void cp_mess, (int src,phys_clicks src_clicks,vir_bytes src_offset,
142                 phys_clicks dst_clicks, vir_bytes dst_offset)           );
143 _PROTOTYPE( int in_byte, (port_t port)                                  );
144 _PROTOTYPE( int in_word, (port_t port)                                  );
145 _PROTOTYPE( void lock, (void)                                           );
146 _PROTOTYPE( void unlock, (void)                                         );
147 _PROTOTYPE( void enable_irq, (unsigned irq)                             );
148 _PROTOTYPE( int disable_irq, (unsigned irq)                             );
149 _PROTOTYPE( u16_t mem_rdw, (segm_t segm, vir_bytes offset)              );
150 _PROTOTYPE( void out_byte, (port_t port, int value)                     );
151 _PROTOTYPE( void out_word, (port_t port, int value)                     );
152 _PROTOTYPE( void phys_copy, (phys_bytes source, phys_bytes dest,
153                 phys_bytes count)                                       );
154 _PROTOTYPE( void port_read, (unsigned port, phys_bytes destination,
155                 unsigned bytcount)                                      );
156 _PROTOTYPE( void port_read_byte, (unsigned port, phys_bytes destination,
157                 unsigned bytcount)                                      );
158 _PROTOTYPE( void port_write, (unsigned port, phys_bytes source,
159                 unsigned bytcount)                                      );
160 _PROTOTYPE( void port_write_byte, (unsigned port, phys_bytes source,
161                 unsigned bytcount)                                      );
162 _PROTOTYPE( void reset, (void)                                          );
163 _PROTOTYPE( void vid_vid_copy, (unsigned src, unsigned dst, unsigned count));
164 _PROTOTYPE( void mem_vid_copy, (u16_t *src, unsigned dst, unsigned count));
165 _PROTOTYPE( void level0, (void (*func)(void))                           );
166 _PROTOTYPE( void monitor, (void)                                        );
167 
168 /* misc.c */
169 _PROTOTYPE( void mem_init, (void)                                       );
170 
171 /* mpx*.s */
172 _PROTOTYPE( void idle_task, (void)                                      );
173 _PROTOTYPE( void restart, (void)                                        );
174 
175 /* The following are never called from C (pure asm procs). */
176 
177 /* Exception handlers (real or protected mode), in numerical order. */
178 void _PROTOTYPE( int00, (void) ), _PROTOTYPE( divide_error, (void) );
179 void _PROTOTYPE( int01, (void) ), _PROTOTYPE( single_step_exception, (void) );
180 void _PROTOTYPE( int02, (void) ), _PROTOTYPE( nmi, (void) );
181 void _PROTOTYPE( int03, (void) ), _PROTOTYPE( breakpoint_exception, (void) );
182 void _PROTOTYPE( int04, (void) ), _PROTOTYPE( overflow, (void) );
183 void _PROTOTYPE( int05, (void) ), _PROTOTYPE( bounds_check, (void) );
184 void _PROTOTYPE( int06, (void) ), _PROTOTYPE( inval_opcode, (void) );
185 void _PROTOTYPE( int07, (void) ), _PROTOTYPE( copr_not_available, (void) );
186 void                              _PROTOTYPE( double_fault, (void) );
187 void                              _PROTOTYPE( copr_seg_overrun, (void) );
188 void                              _PROTOTYPE( inval_tss, (void) );
189 void                              _PROTOTYPE( segment_not_present, (void) );
190 void                              _PROTOTYPE( stack_exception, (void) );
191 void                              _PROTOTYPE( general_protection, (void) );
192 void                              _PROTOTYPE( page_fault, (void) );
193 void                              _PROTOTYPE( copr_error, (void) );
194 
195 /* Hardware interrupt handlers. */
196 _PROTOTYPE( void hwint00, (void) );
197 _PROTOTYPE( void hwint01, (void) );
198 _PROTOTYPE( void hwint02, (void) );
199 _PROTOTYPE( void hwint03, (void) );
200 _PROTOTYPE( void hwint04, (void) );
201 _PROTOTYPE( void hwint05, (void) );
202 _PROTOTYPE( void hwint06, (void) );
203 _PROTOTYPE( void hwint07, (void) );
204 _PROTOTYPE( void hwint08, (void) );
205 _PROTOTYPE( void hwint09, (void) );
206 _PROTOTYPE( void hwint10, (void) );
207 _PROTOTYPE( void hwint11, (void) );
208 _PROTOTYPE( void hwint12, (void) );
209 _PROTOTYPE( void hwint13, (void) );
210 _PROTOTYPE( void hwint14, (void) );
211 _PROTOTYPE( void hwint15, (void) );
212 
213 /* Software interrupt handlers, in numerical order. */
214 _PROTOTYPE( void trp, (void) );
215 _PROTOTYPE( void s_call, (void) ), _PROTOTYPE( p_s_call, (void) );
216 _PROTOTYPE( void level0_call, (void) );
217 
218 /* ne2000.c */
219 _PROTOTYPE( int ne_probe, (struct dpeth *dep)                           );
220 
221 /* printer.c */
222 _PROTOTYPE( void pr_restart, (void)                                     );
223 
224 /* protect.c */
225 _PROTOTYPE( void prot_init, (void)                                      );
226 _PROTOTYPE( void init_codeseg, (struct segdesc_s *segdp, phys_bytes base,
227                 phys_bytes size, int privilege)                         );
228 _PROTOTYPE( void init_dataseg, (struct segdesc_s *segdp, phys_bytes base,
229                 phys_bytes size, int privilege)                         );
230 _PROTOTYPE( phys_bytes seg2phys, (U16_t seg)                            );
231 _PROTOTYPE( void enable_iop, (struct proc *pp)                          );
232 
233 /* pty.c */
234 _PROTOTYPE( void do_pty, (struct tty *tp, message *m_ptr)               );
235 _PROTOTYPE( void pty_init, (struct tty *tp)                             );
236 
237 /* system.c */
238 _PROTOTYPE( void alloc_segments, (struct proc *rp)                      );
239 
240 /* wdeth.c */
241 _PROTOTYPE( int wdeth_probe, (struct dpeth *dep)                        );
242 
243 #endif /* (CHIP == INTEL) */
244 
245 #if (CHIP == M68000)
246 
247 /* cstart.c */
248 _PROTOTYPE( void cstart, (char *parmoff, size_t parmsize)               );
249 
250 /* stfloppy.c */
251 _PROTOTYPE( void fd_timer, (void)                                       );
252 
253 /* stmain.c */
254 _PROTOTYPE( void none, (void)                                           );
255 _PROTOTYPE( void rupt, (void)                                           );
256 _PROTOTYPE( void trap, (void)                                           );
257 _PROTOTYPE( void checksp, (void)                                        );
258 _PROTOTYPE( void aciaint, (void)                                        );
259 _PROTOTYPE( void fake_int, (const char *s, int t)                       );
260 _PROTOTYPE( void timint, (int t)                                        );
261 _PROTOTYPE( void mdiint, (void)                                         );
262 _PROTOTYPE( void iob, (int t)                                           );
263 _PROTOTYPE( void idle_task, (void)                                      );
264 
265 /* rs232.c */
266 _PROTOTYPE( void siaint, (int type)                                     );
267 
268 /* stcon.c */
269 _PROTOTYPE( void func_key, (void)                                       );
270 _PROTOTYPE( void dump, (void)                                           );
271 _PROTOTYPE( void putk, (int c)                                          );
272 
273 /* stdma.c */
274 _PROTOTYPE( void dmagrab, (int p, dmaint_t func)                        );
275 _PROTOTYPE( void dmafree, (int p)                                       );
276 _PROTOTYPE( void dmaint, (void)                                         );
277 _PROTOTYPE( void dmaaddr, (phys_bytes ad)                               );
278 _PROTOTYPE( int dmardat, (int mode, int delay)                          );
279 _PROTOTYPE( void dmawdat, (int mode, int data, int delay)               );
280 _PROTOTYPE( void dmawcmd, (int data, unsigned mode)                     );
281 _PROTOTYPE( void dmacomm, (int mode, int data, int delay)               );
282 _PROTOTYPE( int dmastat, (int mode, int delay)                          );
283 
284 /* stdskclk.c */
285 _PROTOTYPE( int do_xbms, (phys_bytes address, int count, int rw, int minor) );
286  
287 /* stkbd.c */
288 _PROTOTYPE( void kbdint, (void)                                         );
289 _PROTOTYPE( void kb_timer, (void)                                       );
290 _PROTOTYPE( int kb_read, (int minor, char **bufindirect)                );
291 _PROTOTYPE( void kb_init, (int minor)                                   );
292 
293 /* stshadow.c */
294 _PROTOTYPE( void mkshadow, (struct proc *p, phys_clicks c2)             );
295 _PROTOTYPE( void rmshadow, (struct proc *p, phys_clicks *basep,
296                 phys_clicks *sizep)                                     );
297 _PROTOTYPE( void unshadow, (struct proc *p)                             );
298  
299 /* stvdu.c */
300 _PROTOTYPE( void flush, (struct tty *tp)                                );
301 _PROTOTYPE( void console, (struct tty *tp)                              );
302 _PROTOTYPE( void out_char, (struct tty *tp, int c)                      );
303 _PROTOTYPE( void scr_init, (int minor)                                  );
304 _PROTOTYPE( void vduswitch, (struct tty *tp)                            );
305 _PROTOTYPE( void vdusetup, (unsigned int vres, char *vram,
306                             unsigned short *vrgb)                       );
307 _PROTOTYPE( void vbl, (void)                                            );
308 _PROTOTYPE( int vdu_loadfont, (message *m_ptr)                          );
309 
310 /* stwini.c */
311 _PROTOTYPE( int wini_open, (message *mp)                                );
312 _PROTOTYPE( int wini_rdwt, (message *mp)                                );
313 _PROTOTYPE( int wini_hvrdwt, (message *mp)                              );
314 _PROTOTYPE( int wini_transfer, (int rw, int pnr, int minor,
315                 long pos, int count, vir_bytes vadr)                    );
316 _PROTOTYPE( int wini_ioctl, (message *mp)                               );
317 _PROTOTYPE( int wini_close, (message *mp)                               );
318 
319 /* stacsi.c */
320 _PROTOTYPE( int acsi_cmd, (int drive,  unsigned char *cmd, int cmdlen,
321                 phys_bytes address, phys_bytes data_len,  int rw)       );
322 
323 /* stscsi.c */
324 _PROTOTYPE( void scsi_task, (void)                                      );
325 _PROTOTYPE( void scsidmaint, (void)                                     );
326 _PROTOTYPE( void scsiint, (void)                                        );
327 _PROTOTYPE( int scsi_cmd, (int drive,  unsigned char *cmd, int cmdlen,
328                 phys_bytes address, phys_bytes data_len,  int rw)       );
329 
330 /* klib68k.s */
331 _PROTOTYPE( void flipclicks, (phys_clicks c1, phys_clicks c2, phys_clicks n) );
332 _PROTOTYPE( void copyclicks, (phys_clicks src, phys_clicks dest,
333                 phys_clicks nclicks)                                    );
334 _PROTOTYPE( void zeroclicks, (phys_clicks dest, phys_clicks nclicks)    );
335 _PROTOTYPE( void phys_copy, (phys_bytes src, phys_bytes dest, phys_bytes n) );
336 
337 /* stdskclks.s */
338 _PROTOTYPE( int rd1byte, (void)                                         );
339 _PROTOTYPE( int wr1byte, (int)                                          );
340 _PROTOTYPE( long getsupra, (void)                                       );
341 _PROTOTYPE( long geticd, (void)                                         );
342 
343 /* mpx.s */
344 _PROTOTYPE( int lock, (void)                                            );
345 _PROTOTYPE( void unlock, (void)                                         );
346 _PROTOTYPE( void restore, (int oldsr)                                   );
347 _PROTOTYPE( void reboot, (void)                                         );
348 _PROTOTYPE( int test_and_set, (char *flag)                              );
349 _PROTOTYPE( unsigned long get_mem_size, (char *start_addr)              );
350 
351 /* stprint.c */
352 #ifdef DEBOUT
353 _PROTOTYPE( void prtc, (int c)                                          );
354 #endif
355 
356 #ifdef FPP
357 /* fpp.c */
358 _PROTOTYPE( void fppinit, (void)                                        );
359 _PROTOTYPE( void fpp_new_state, (struct proc *rp)                       );
360 _PROTOTYPE( void fpp_save, (struct proc *rp, struct cpu_state *p)       );
361 _PROTOTYPE( struct cpu_state  *fpp_restore, (struct proc *rp)           );
362 
363 /* fpps.s */
364 _PROTOTYPE( void _fppsave, (struct state_frame *p)                      );
365 _PROTOTYPE( void _fppsavereg, (struct fpp_model *p)                     );
366 _PROTOTYPE( void _fpprestore, (struct state_frame *p)                   );
367 _PROTOTYPE( void _fpprestreg, (struct fpp_model *p)                     );
368 #endif
369 
370 #if (SHADOWING == 0)
371 /* pmmu.c */
372 _PROTOTYPE( void pmmuinit , (void)                                      );
373 _PROTOTYPE( void pmmu_init_proc , (struct proc *rp )                    );
374 _PROTOTYPE( void pmmu_restore , (struct proc *rp )                      );
375 _PROTOTYPE( void pmmu_delete , (struct proc *rp )                       );
376 _PROTOTYPE( void pmmu_flush , (struct proc *rp )                        );
377 #endif
378 
379 #endif /* (CHIP == M68000) */
380 
381 #if (MACHINE == SUN)
382 
383 /* debug.c */
384 _PROTOTYPE( void set_debug_level, (int level)                           );
385 _PROTOTYPE( void debug_str, (char *s)                                   );
386 _PROTOTYPE( void debug_char, (char ch)                                  );
387 _PROTOTYPE( void debug_int, (int i)                                     );
388 
389 /* logging.h */
390 _PROTOTYPE( void log_init, (void)                                       );
391 _PROTOTYPE( void event_log, (int event, struct proc *p, int other_stn,
392                              void *buff, int buff_len)                  );
393 _PROTOTYPE( int next_stn, (void)                                        );
394 
395 /* misc.c */
396 _PROTOTYPE( void mem_init, (void)                                       );
397 
398 /* mpx.c */
399 _PROTOTYPE( void init_sun_handlers, (void)                              );
400 _PROTOTYPE( void restart, (void)                                        );
401 _PROTOTYPE( void lock, (void)                                           );
402 _PROTOTYPE( void unlock, (void)                                         );
403 _PROTOTYPE( void idle_task, (void)                                      );
404 
405 /* pty.c */
406 _PROTOTYPE( void do_pty, (struct tty *tp, message *m_ptr)               );
407 _PROTOTYPE( void pty_init, (struct tty *tp)                             );
408 
409 /* startSUN.s */
410 _PROTOTYPE ( int getksp, (void)                                         );
411   
412 /* sunconsole.c */
413 _PROTOTYPE( void scr_init, (struct tty *t)                              );
414 _PROTOTYPE( void putk, (char c)                                         );
415 _PROTOTYPE( void hangup, (int connum)                                   );
416 
417 #if ENABLE_NETWORKING
418 /* sunether.c */
419 _PROTOTYPE( void se_init, (char *eaddr)                                 );
420 _PROTOTYPE( void dp8390_task, (void)                                    );
421 #endif
422 
423 /* sunexception.c */
424 _PROTOTYPE( void exception,(int sig, void *siginf, struct stackframe_s *scp));
425 _PROTOTYPE( void do_dump, (void)                                        );
426 
427 /* sunkeyboard.c */
428 _PROTOTYPE( void kb_init, (struct tty *tp)                              );
429 _PROTOTYPE( void wreboot, (int how)                                     );
430 
431 /* sunkeyboard.c */
432 _PROTOTYPE( void sunio_install_handler , (int fd, void (*handler)(int fd)));
433 _PROTOTYPE( void sunio_interrupt, (void)                                );
434 
435 /* sunprotect.c */
436 _PROTOTYPE( void protect_init, (phys_bytes kernel_base,
437                                 phys_clicks kernel_text,
438                                 phys_clicks kernel_data,
439                                 phys_clicks mem_clicks, int level)      );
440 _PROTOTYPE( void mem_released, (struct proc *p)                         );
441 _PROTOTYPE( void set_protect, (phys_bytes start, int len, int prot)     );
442 
443 _PROTOTYPE( void entering_kernel, (void)                                );
444 _PROTOTYPE( void leaving_kernel, (void)                                 );
445 
446 _PROTOTYPE( void zeroclicks, (phys_clicks dest, phys_clicks nclicks)    );
447 _PROTOTYPE( void copyclicks, (phys_clicks src, phys_clicks dest,
448                 phys_clicks nclicks)                                    );
449 _PROTOTYPE( void phys_copy, (phys_bytes src, phys_bytes dest, phys_bytes n) );
450 
451 /* utilSUN.s */
452 _PROTOTYPE( int test_and_set, (char *flag)                              );
453 
454 /* Actually in the standard library */
455 int SunOS();
456 
457 #endif /* (MACHINE == SUN) */
458 
459 #endif /* PROTO_H */
460 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.