1#ifndef __ASTRO_H__
2#define __ASTRO_H__
3
4/* in mcf5373l.c */
5int rs_serial_init(int port, int baud);
6void astro_put_char(char ch);
7int astro_is_char(void);
8int astro_get_char(void);
9
10/* in fpga.c */
11int astro5373l_altera_load(void);
12int astro5373l_xilinx_load(void);
13
14/* data structures used for communication (update.c) */
15typedef struct card_id {
16	char card_type;
17	char hardware_version;
18	char software_version;
19	char software_subversion;	/* " ","a".."z" */
20	char fpga_version_altera;
21	char fpga_version_xilinx;
22} card_id_t;
23
24typedef struct {
25	unsigned char mode;
26	unsigned char deviation;
27	unsigned short freq;
28} __attribute__ ((packed)) output_params_t;
29
30typedef struct {
31	unsigned short satfreq;
32	unsigned char satdatallg;
33	unsigned short symbolrate;
34	unsigned char viterbirate;
35	unsigned char symbolrate_l;
36	output_params_t output_params;
37	unsigned char reserve;
38	unsigned char card_error;
39	unsigned short dummy_ts_id;
40	unsigned char dummy_pat_ver;
41	unsigned char dummy_sdt_ver;
42} __attribute__ ((packed)) parameters_t;
43
44#endif /* __ASTRO_H__ */
45