/
usr
/
include
/
linux
/
/usr/include/linux
mkdir
upload
Name
Size
Mode
Actions
byteorder/
-
0755
rm
can/
-
0755
rm
dvb/
-
0755
rm
hdlc/
-
0755
rm
isdn/
-
0755
rm
netfilter/
-
0755
rm
netfilter_arp/
-
0755
rm
netfilter_bridge/
-
0755
rm
netfilter_ipv4/
-
0755
rm
netfilter_ipv6/
-
0755
rm
nfsd/
-
0755
rm
raid/
-
0755
rm
spi/
-
0755
rm
sunrpc/
-
0755
rm
tc_act/
-
0755
rm
tc_ematch/
-
0755
rm
usb/
-
0755
rm
wimax/
-
0755
rm
a.out.h
7319
0644
edit
dl
rm
acct.h
3490
0644
edit
dl
rm
adb.h
1077
0644
edit
dl
rm
adfs_fs.h
856
0644
edit
dl
rm
affs_hardblocks.h
1481
0644
edit
dl
rm
agpgart.h
3925
0644
edit
dl
rm
aio_abi.h
3112
0644
edit
dl
rm
apm_bios.h
3544
0644
edit
dl
rm
arcfb.h
150
0644
edit
dl
rm
atalk.h
927
0644
edit
dl
rm
atm.h
7806
0644
edit
dl
rm
atmapi.h
889
0644
edit
dl
rm
atmarp.h
1233
0644
edit
dl
rm
atmbr2684.h
3208
0644
edit
dl
rm
atmclip.h
513
0644
edit
dl
rm
atmdev.h
7593
0644
edit
dl
rm
atmioc.h
1583
0644
edit
dl
rm
atmlec.h
2561
0644
edit
dl
rm
atmmpc.h
4163
0644
edit
dl
rm
atmppp.h
576
0644
edit
dl
rm
atmsap.h
4907
0644
edit
dl
rm
atmsvc.h
1790
0644
edit
dl
rm
atm_eni.h
585
0644
edit
dl
rm
atm_he.h
343
0644
edit
dl
rm
atm_idt77105.h
892
0644
edit
dl
rm
atm_nicstar.h
1215
0644
edit
dl
rm
atm_tcp.h
1537
0644
edit
dl
rm
atm_zatm.h
1606
0644
edit
dl
rm
audit.h
15880
0644
edit
dl
rm
auto_fs.h
2346
0644
edit
dl
rm
auto_fs4.h
4131
0644
edit
dl
rm
auxvec.h
1384
0644
edit
dl
rm
ax25.h
2752
0644
edit
dl
rm
b1lli.h
1654
0644
edit
dl
rm
baycom.h
820
0644
edit
dl
rm
bfs_fs.h
1830
0644
edit
dl
rm
binfmts.h
565
0644
edit
dl
rm
blkpg.h
1598
0644
edit
dl
rm
blktrace_api.h
4473
0644
edit
dl
rm
blk_types.h
7106
0644
edit
dl
rm
bpqether.h
952
0644
edit
dl
rm
bsg.h
2385
0644
edit
dl
rm
can.h
3326
0644
edit
dl
rm
capability.h
10589
0644
edit
dl
rm
capi.h
3057
0644
edit
dl
rm
cciss_ioctl.h
5824
0644
edit
dl
rm
cdk.h
12770
0644
edit
dl
rm
cdrom.h
28129
0644
edit
dl
rm
cgroupstats.h
2155
0644
edit
dl
rm
chio.h
5280
0644
edit
dl
rm
cm4000_cs.h
1718
0644
edit
dl
rm
cn_proc.h
2715
0644
edit
dl
rm
coda.h
17487
0644
edit
dl
rm
coda_psdev.h
679
0644
edit
dl
rm
coff.h
12413
0644
edit
dl
rm
comstats.h
3120
0644
edit
dl
rm
connector.h
2129
0644
edit
dl
rm
const.h
682
0644
edit
dl
rm
cramfs_fs.h
2930
0644
edit
dl
rm
cuda.h
769
0644
edit
dl
rm
cyclades.h
17045
0644
edit
dl
rm
cycx_cfm.h
2926
0644
edit
dl
rm
dcbnl.h
22120
0644
edit
dl
rm
dccp.h
5800
0644
edit
dl
rm
dlm.h
2529
0644
edit
dl
rm
dlmconstants.h
5013
0644
edit
dl
rm
dlm_device.h
2480
0644
edit
dl
rm
dlm_netlink.h
1064
0644
edit
dl
rm
dlm_plock.h
806
0644
edit
dl
rm
dm-ioctl.h
10668
0644
edit
dl
rm
dm-log-userspace.h
15173
0644
edit
dl
rm
dn.h
4527
0644
edit
dl
rm
dqblk_xfs.h
6952
0644
edit
dl
rm
edd.h
5544
0644
edit
dl
rm
efs_fs_sb.h
2164
0644
edit
dl
rm
elf-em.h
1834
0644
edit
dl
rm
elf-fdpic.h
2557
0644
edit
dl
rm
elf.h
11236
0644
edit
dl
rm
elfcore.h
2932
0644
edit
dl
rm
errno.h
79
0644
edit
dl
rm
errqueue.h
443
0644
edit
dl
rm
ethtool.h
34166
0644
edit
dl
rm
eventpoll.h
1353
0644
edit
dl
rm
ext2_fs.h
18802
0644
edit
dl
rm
fadvise.h
855
0644
edit
dl
rm
falloc.h
293
0644
edit
dl
rm
fb.h
16016
0644
edit
dl
rm
fcntl.h
1607
0644
edit
dl
rm
fd.h
11563
0644
edit
dl
rm
fdreg.h
5355
0644
edit
dl
rm
fib_rules.h
1459
0644
edit
dl
rm
fiemap.h
2548
0644
edit
dl
rm
filter.h
3534
0644
edit
dl
rm
firewire-cdev.h
25053
0644
edit
dl
rm
firewire-constants.h
1975
0644
edit
dl
rm
flat.h
2085
0644
edit
dl
rm
fs.h
18910
0644
edit
dl
rm
fuse.h
11441
0644
edit
dl
rm
futex.h
4909
0644
edit
dl
rm
gameport.h
816
0644
edit
dl
rm
generic_serial.h
895
0644
edit
dl
rm
genetlink.h
1683
0644
edit
dl
rm
gen_stats.h
1304
0644
edit
dl
rm
gfs2_ondisk.h
11814
0644
edit
dl
rm
gigaset_dev.h
981
0644
edit
dl
rm
hayesesp.h
230
0644
edit
dl
rm
hdlc.h
574
0644
edit
dl
rm
hdlcdrv.h
2845
0644
edit
dl
rm
hdreg.h
22640
0644
edit
dl
rm
hid.h
1824
0644
edit
dl
rm
hiddev.h
6265
0644
edit
dl
rm
hidraw.h
1217
0644
edit
dl
rm
hpet.h
686
0644
edit
dl
rm
hysdn_if.h
1319
0644
edit
dl
rm
i2c-dev.h
2403
0644
edit
dl
rm
i2c.h
6631
0644
edit
dl
rm
i2o-dev.h
11488
0644
edit
dl
rm
i8k.h
1438
0644
edit
dl
rm
icmp.h
2892
0644
edit
dl
rm
icmpv6.h
3831
0644
edit
dl
rm
if.h
8673
0644
edit
dl
rm
if_addr.h
1456
0644
edit
dl
rm
if_addrlabel.h
658
0644
edit
dl
rm
if_arcnet.h
3718
0644
edit
dl
rm
if_arp.h
6109
0644
edit
dl
rm
if_bonding.h
4076
0644
edit
dl
rm
if_bridge.h
3810
0644
edit
dl
rm
if_cablemodem.h
910
0644
edit
dl
rm
if_ec.h
901
0644
edit
dl
rm
if_eql.h
1284
0644
edit
dl
rm
if_ether.h
6539
0644
edit
dl
rm
if_fc.h
1674
0644
edit
dl
rm
if_fddi.h
3700
0644
edit
dl
rm
if_frad.h
2940
0644
edit
dl
rm
if_hippi.h
4175
0644
edit
dl
rm
if_infiniband.h
1145
0644
edit
dl
rm
if_link.h
12078
0644
edit
dl
rm
if_ltalk.h
125
0644
edit
dl
rm
if_packet.h
3530
0644
edit
dl
rm
if_phonet.h
337
0644
edit
dl
rm
if_plip.h
596
0644
edit
dl
rm
if_ppp.h
6938
0644
edit
dl
rm
if_pppol2tp.h
1983
0644
edit
dl
rm
if_pppox.h
3772
0644
edit
dl
rm
if_slip.h
809
0644
edit
dl
rm
if_strip.h
700
0644
edit
dl
rm
if_tr.h
3199
0644
edit
dl
rm
if_tun.h
3014
0644
edit
dl
rm
if_tunnel.h
1459
0644
edit
dl
rm
if_vlan.h
1708
0644
edit
dl
rm
igmp.h
2928
0644
edit
dl
rm
in.h
9203
0644
edit
dl
rm
in6.h
7495
0644
edit
dl
rm
inet_diag.h
2453
0644
edit
dl
rm
inotify.h
2838
0644
edit
dl
rm
input.h
27594
0644
edit
dl
rm
in_route.h
873
0644
edit
dl
rm
ioctl.h
100
0644
edit
dl
rm
ip.h
3555
0644
edit
dl
rm
ip6_tunnel.h
1073
0644
edit
dl
rm
ipc.h
2038
0644
edit
dl
rm
ipmi.h
16543
0644
edit
dl
rm
ipmi_msgdefs.h
4477
0644
edit
dl
rm
ipsec.h
884
0644
edit
dl
rm
ipv6.h
2892
0644
edit
dl
rm
ipv6_route.h
1614
0644
edit
dl
rm
ipx.h
1824
0644
edit
dl
rm
ip_vs.h
12583
0644
edit
dl
rm
irda.h
7651
0644
edit
dl
rm
irqnr.h
93
0644
edit
dl
rm
isdn.h
5687
0644
edit
dl
rm
isdnif.h
2306
0644
edit
dl
rm
isdn_divertif.h
1038
0644
edit
dl
rm
isdn_ppp.h
1859
0644
edit
dl
rm
iso_fs.h
6439
0644
edit
dl
rm
ivtv.h
2726
0644
edit
dl
rm
ivtvfb.h
1143
0644
edit
dl
rm
ixjuser.h
25116
0644
edit
dl
rm
jffs2.h
6949
0644
edit
dl
rm
joystick.h
3587
0644
edit
dl
rm
kd.h
6169
0644
edit
dl
rm
kdev_t.h
298
0644
edit
dl
rm
kernel.h
2457
0644
edit
dl
rm
kernelcapi.h
959
0644
edit
dl
rm
keyboard.h
12695
0644
edit
dl
rm
keyctl.h
2984
0644
edit
dl
rm
kvm.h
20681
0644
edit
dl
rm
kvm_para.h
564
0644
edit
dl
rm
libc-compat.h
3540
0644
edit
dl
rm
limits.h
874
0644
edit
dl
rm
llc.h
2835
0644
edit
dl
rm
loop.h
2189
0644
edit
dl
rm
lp.h
3794
0644
edit
dl
rm
magic.h
2292
0644
edit
dl
rm
major.h
4655
0644
edit
dl
rm
map_to_7segment.h
7187
0644
edit
dl
rm
matroxfb.h
1429
0644
edit
dl
rm
mempolicy.h
2052
0644
edit
dl
rm
meye.h
2544
0644
edit
dl
rm
mii.h
7950
0644
edit
dl
rm
minix_fs.h
2059
0644
edit
dl
rm
mman.h
230
0644
edit
dl
rm
mmtimer.h
2054
0644
edit
dl
rm
mqueue.h
2055
0644
edit
dl
rm
mroute.h
3813
0644
edit
dl
rm
mroute6.h
3991
0644
edit
dl
rm
msdos_fs.h
5839
0644
edit
dl
rm
msg.h
2539
0644
edit
dl
rm
mtio.h
8080
0644
edit
dl
rm
nbd.h
1958
0644
edit
dl
rm
ncp.h
5055
0644
edit
dl
rm
ncp_fs.h
3354
0644
edit
dl
rm
ncp_mount.h
2112
0644
edit
dl
rm
ncp_no.h
651
0644
edit
dl
rm
neighbour.h
4060
0644
edit
dl
rm
net.h
2021
0644
edit
dl
rm
netdevice.h
1771
0644
edit
dl
rm
netfilter.h
1546
0644
edit
dl
rm
netfilter_arp.h
380
0644
edit
dl
rm
netfilter_bridge.h
735
0644
edit
dl
rm
netfilter_decnet.h
1872
0644
edit
dl
rm
netfilter_ipv4.h
2032
0644
edit
dl
rm
netfilter_ipv6.h
2050
0644
edit
dl
rm
netlink.h
4969
0644
edit
dl
rm
netrom.h
719
0644
edit
dl
rm
net_dropmon.h
1091
0644
edit
dl
rm
net_tstamp.h
3468
0644
edit
dl
rm
nfs.h
4351
0644
edit
dl
rm
nfs2.h
1405
0644
edit
dl
rm
nfs3.h
2207
0644
edit
dl
rm
nfs4.h
5763
0644
edit
dl
rm
nfs4_mount.h
1869
0644
edit
dl
rm
nfsacl.h
577
0644
edit
dl
rm
nfs_fs.h
1552
0644
edit
dl
rm
nfs_idmap.h
2238
0644
edit
dl
rm
nfs_mount.h
3200
0644
edit
dl
rm
nl80211.h
192354
0644
edit
dl
rm
nubus.h
8366
0644
edit
dl
rm
nvram.h
470
0644
edit
dl
rm
n_r3964.h
2349
0644
edit
dl
rm
oom.h
456
0644
edit
dl
rm
param.h
78
0644
edit
dl
rm
parport.h
3644
0644
edit
dl
rm
patchkey.h
831
0644
edit
dl
rm
pci.h
1485
0644
edit
dl
rm
pci_regs.h
37975
0644
edit
dl
rm
perf_event.h
21849
0644
edit
dl
rm
personality.h
1998
0644
edit
dl
rm
pfkeyv2.h
10147
0644
edit
dl
rm
pg.h
2282
0644
edit
dl
rm
phantom.h
1590
0644
edit
dl
rm
phonet.h
4349
0644
edit
dl
rm
pktcdvd.h
2623
0644
edit
dl
rm
pkt_cls.h
9293
0644
edit
dl
rm
pkt_sched.h
10887
0644
edit
dl
rm
pmu.h
5187
0644
edit
dl
rm
poll.h
96
0644
edit
dl
rm
posix_types.h
1270
0644
edit
dl
rm
ppdev.h
3147
0644
edit
dl
rm
ppp-comp.h
6516
0644
edit
dl
rm
ppp_defs.h
6461
0644
edit
dl
rm
pps.h
3939
0644
edit
dl
rm
prctl.h
4972
0644
edit
dl
rm
ptp_clock.h
3496
0644
edit
dl
rm
ptrace.h
2290
0644
edit
dl
rm
qnx4_fs.h
2265
0644
edit
dl
rm
qnxtypes.h
561
0644
edit
dl
rm
quota.h
5723
0644
edit
dl
rm
radeonfb.h
297
0644
edit
dl
rm
random.h
1085
0644
edit
dl
rm
raw.h
302
0644
edit
dl
rm
reboot.h
1280
0644
edit
dl
rm
reiserfs_fs.h
907
0644
edit
dl
rm
reiserfs_xattr.h
465
0644
edit
dl
rm
resource.h
2087
0644
edit
dl
rm
rfkill.h
3384
0644
edit
dl
rm
romfs_fs.h
1127
0644
edit
dl
rm
rose.h
2100
0644
edit
dl
rm
route.h
2269
0644
edit
dl
rm
rtc.h
3696
0644
edit
dl
rm
rtnetlink.h
15335
0644
edit
dl
rm
scc.h
4543
0644
edit
dl
rm
sched.h
2096
0644
edit
dl
rm
screen_info.h
2202
0644
edit
dl
rm
sdla.h
2837
0644
edit
dl
rm
selinux_netlink.h
1132
0644
edit
dl
rm
sem.h
3666
0644
edit
dl
rm
serial.h
6780
0644
edit
dl
rm
serial_core.h
4024
0644
edit
dl
rm
serial_reg.h
13245
0644
edit
dl
rm
serio.h
1688
0644
edit
dl
rm
shm.h
2187
0644
edit
dl
rm
signal.h
129
0644
edit
dl
rm
signalfd.h
1096
0644
edit
dl
rm
smb.h
1209
0644
edit
dl
rm
smbno.h
14520
0644
edit
dl
rm
smb_fs.h
535
0644
edit
dl
rm
smb_mount.h
468
0644
edit
dl
rm
snmp.h
11157
0644
edit
dl
rm
socket.h
738
0644
edit
dl
rm
sockios.h
5967
0644
edit
dl
rm
som.h
5480
0644
edit
dl
rm
sonet.h
2207
0644
edit
dl
rm
sonypi.h
5136
0644
edit
dl
rm
sound.h
1099
0644
edit
dl
rm
soundcard.h
46019
0644
edit
dl
rm
stat.h
1005
0644
edit
dl
rm
stddef.h
633
0644
edit
dl
rm
string.h
175
0644
edit
dl
rm
suspend_ioctls.h
1368
0644
edit
dl
rm
swab.h
6292
0644
edit
dl
rm
synclink.h
8695
0644
edit
dl
rm
sysctl.h
26495
0644
edit
dl
rm
taskstats.h
6947
0644
edit
dl
rm
tcp.h
5205
0644
edit
dl
rm
telephony.h
9051
0644
edit
dl
rm
termios.h
544
0644
edit
dl
rm
time.h
1736
0644
edit
dl
rm
times.h
215
0644
edit
dl
rm
timex.h
6221
0644
edit
dl
rm
tiocl.h
1666
0644
edit
dl
rm
tipc.h
5910
0644
edit
dl
rm
tipc_config.h
15370
0644
edit
dl
rm
toshiba.h
1284
0644
edit
dl
rm
tty.h
128
0644
edit
dl
rm
types.h
991
0644
edit
dl
rm
udf_fs_i.h
634
0644
edit
dl
rm
udp.h
1166
0644
edit
dl
rm
uinput.h
5125
0644
edit
dl
rm
uio.h
648
0644
edit
dl
rm
ultrasound.h
4499
0644
edit
dl
rm
un.h
203
0644
edit
dl
rm
unistd.h
157
0644
edit
dl
rm
usbdevice_fs.h
5340
0644
edit
dl
rm
utime.h
152
0644
edit
dl
rm
utsname.h
606
0644
edit
dl
rm
uuid.h
1769
0644
edit
dl
rm
version.h
281
0644
edit
dl
rm
veth.h
474
0644
edit
dl
rm
vhost.h
4566
0644
edit
dl
rm
videodev.h
10513
0644
edit
dl
rm
videodev2.h
66071
0644
edit
dl
rm
videotext.h
4242
0644
edit
dl
rm
virtio_9p.h
351
0644
edit
dl
rm
virtio_balloon.h
1255
0644
edit
dl
rm
virtio_blk.h
2981
0644
edit
dl
rm
virtio_config.h
1284
0644
edit
dl
rm
virtio_console.h
1406
0644
edit
dl
rm
virtio_ids.h
545
0644
edit
dl
rm
virtio_net.h
7026
0644
edit
dl
rm
virtio_pci.h
2263
0644
edit
dl
rm
virtio_ring.h
4489
0644
edit
dl
rm
virtio_rng.h
265
0644
edit
dl
rm
vt.h
3070
0644
edit
dl
rm
wait.h
580
0644
edit
dl
rm
wanrouter.h
17836
0644
edit
dl
rm
watchdog.h
2400
0644
edit
dl
rm
wimax.h
8370
0644
edit
dl
rm
wireless.h
42653
0644
edit
dl
rm
x25.h
3418
0644
edit
dl
rm
xattr.h
646
0644
edit
dl
rm
xfrm.h
10558
0644
edit
dl
rm
Edit:
/usr/include/linux/cdk.h
(12770B)
/*****************************************************************************/ /* * cdk.h -- CDK interface definitions. * * Copyright (C) 1996-1998 Stallion Technologies * Copyright (C) 1994-1996 Greg Ungerer. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /*****************************************************************************/ #ifndef _CDK_H #define _CDK_H /*****************************************************************************/ #pragma pack(2) /* * The following set of definitions is used to communicate with the * shared memory interface of the Stallion intelligent multiport serial * boards. The definitions in this file are taken directly from the * document titled "Generic Stackable Interface, Downloader and * Communications Development Kit". */ /* * Define the set of important shared memory addresses. These are * required to initialize the board and get things started. All of these * addresses are relative to the start of the shared memory. */ #define CDK_SIGADDR 0x200 #define CDK_FEATADDR 0x280 #define CDK_CDKADDR 0x300 #define CDK_RDYADDR 0x262 #define CDK_ALIVEMARKER 13 /* * On hardware power up the ROMs located on the EasyConnection 8/64 will * fill out the following signature information into shared memory. This * way the host system can quickly determine that the board is present * and is operational. */ typedef struct cdkecpsig { unsigned long magic; unsigned short romver; unsigned short cputype; unsigned char panelid[8]; } cdkecpsig_t; #define ECP_MAGIC 0x21504345 /* * On hardware power up the ROMs located on the ONboard, Stallion and * Brumbys will fill out the following signature information into shared * memory. This way the host system can quickly determine that the board * is present and is operational. */ typedef struct cdkonbsig { unsigned short magic0; unsigned short magic1; unsigned short magic2; unsigned short magic3; unsigned short romver; unsigned short memoff; unsigned short memseg; unsigned short amask0; unsigned short pic; unsigned short status; unsigned short btype; unsigned short clkticks; unsigned short clkspeed; unsigned short amask1; unsigned short amask2; } cdkonbsig_t; #define ONB_MAGIC0 0xf2a7 #define ONB_MAGIC1 0xa149 #define ONB_MAGIC2 0x6352 #define ONB_MAGIC3 0xf121 /* * Define the feature area structure. The feature area is the set of * startup parameters used by the slave image when it starts executing. * They allow for the specification of buffer sizes, debug trace, etc. */ typedef struct cdkfeature { unsigned long debug; unsigned long banner; unsigned long etype; unsigned long nrdevs; unsigned long brdspec; unsigned long txrqsize; unsigned long rxrqsize; unsigned long flags; } cdkfeature_t; #define ETYP_DDK 0 #define ETYP_CDK 1 /* * Define the CDK header structure. This is the info that the slave * environment sets up after it has been downloaded and started. It * essentially provides a memory map for the shared memory interface. */ typedef struct cdkhdr { unsigned short command; unsigned short status; unsigned short port; unsigned short mode; unsigned long cmd_buf[14]; unsigned short alive_cnt; unsigned short intrpt_mode; unsigned char intrpt_id[8]; unsigned char ver_release; unsigned char ver_modification; unsigned char ver_fix; unsigned char deadman_restart; unsigned short deadman; unsigned short nrdevs; unsigned long memp; unsigned long hostp; unsigned long slavep; unsigned char hostreq; unsigned char slavereq; unsigned char cmd_reserved[30]; } cdkhdr_t; #define MODE_DDK 0 #define MODE_CDK 1 #define IMD_INTR 0x0 #define IMD_PPINTR 0x1 #define IMD_POLL 0xff /* * Define the memory mapping structure. This structure is pointed to by * the memp field in the stlcdkhdr struct. As many as these structures * as required are layed out in shared memory to define how the rest of * shared memory is divided up. There will be one for each port. */ typedef struct cdkmem { unsigned short dtype; unsigned long offset; } cdkmem_t; #define TYP_UNDEFINED 0x0 #define TYP_ASYNCTRL 0x1 #define TYP_ASYNC 0x20 #define TYP_PARALLEL 0x40 #define TYP_SYNCX21 0x60 /*****************************************************************************/ /* * Following is a set of defines and structures used to actually deal * with the serial ports on the board. Firstly is the set of commands * that can be applied to ports. */ #define ASYCMD (((unsigned long) 'a') << 8) #define A_NULL (ASYCMD | 0) #define A_FLUSH (ASYCMD | 1) #define A_BREAK (ASYCMD | 2) #define A_GETPORT (ASYCMD | 3) #define A_SETPORT (ASYCMD | 4) #define A_SETPORTF (ASYCMD | 5) #define A_SETPORTFTX (ASYCMD | 6) #define A_SETPORTFRX (ASYCMD | 7) #define A_GETSIGNALS (ASYCMD | 8) #define A_SETSIGNALS (ASYCMD | 9) #define A_SETSIGNALSF (ASYCMD | 10) #define A_SETSIGNALSFTX (ASYCMD | 11) #define A_SETSIGNALSFRX (ASYCMD | 12) #define A_GETNOTIFY (ASYCMD | 13) #define A_SETNOTIFY (ASYCMD | 14) #define A_NOTIFY (ASYCMD | 15) #define A_PORTCTRL (ASYCMD | 16) #define A_GETSTATS (ASYCMD | 17) #define A_RQSTATE (ASYCMD | 18) #define A_FLOWSTATE (ASYCMD | 19) #define A_CLEARSTATS (ASYCMD | 20) /* * Define those arguments used for simple commands. */ #define FLUSHRX 0x1 #define FLUSHTX 0x2 #define BREAKON -1 #define BREAKOFF -2 /* * Define the port setting structure, and all those defines that go along * with it. Basically this structure defines the characteristics of this * port: baud rate, chars, parity, input/output char cooking etc. */ typedef struct asyport { unsigned long baudout; unsigned long baudin; unsigned long iflag; unsigned long oflag; unsigned long lflag; unsigned long pflag; unsigned long flow; unsigned long spare1; unsigned short vtime; unsigned short vmin; unsigned short txlo; unsigned short txhi; unsigned short rxlo; unsigned short rxhi; unsigned short rxhog; unsigned short spare2; unsigned char csize; unsigned char stopbs; unsigned char parity; unsigned char stopin; unsigned char startin; unsigned char stopout; unsigned char startout; unsigned char parmark; unsigned char brkmark; unsigned char cc[11]; } asyport_t; #define PT_STOP1 0x0 #define PT_STOP15 0x1 #define PT_STOP2 0x2 #define PT_NOPARITY 0x0 #define PT_ODDPARITY 0x1 #define PT_EVENPARITY 0x2 #define PT_MARKPARITY 0x3 #define PT_SPACEPARITY 0x4 #define F_NONE 0x0 #define F_IXON 0x1 #define F_IXOFF 0x2 #define F_IXANY 0x4 #define F_IOXANY 0x8 #define F_RTSFLOW 0x10 #define F_CTSFLOW 0x20 #define F_DTRFLOW 0x40 #define F_DCDFLOW 0x80 #define F_DSROFLOW 0x100 #define F_DSRIFLOW 0x200 #define FI_NORX 0x1 #define FI_RAW 0x2 #define FI_ISTRIP 0x4 #define FI_UCLC 0x8 #define FI_INLCR 0x10 #define FI_ICRNL 0x20 #define FI_IGNCR 0x40 #define FI_IGNBREAK 0x80 #define FI_DSCRDBREAK 0x100 #define FI_1MARKBREAK 0x200 #define FI_2MARKBREAK 0x400 #define FI_XCHNGBREAK 0x800 #define FI_IGNRXERRS 0x1000 #define FI_DSCDRXERRS 0x2000 #define FI_1MARKRXERRS 0x4000 #define FI_2MARKRXERRS 0x8000 #define FI_XCHNGRXERRS 0x10000 #define FI_DSCRDNULL 0x20000 #define FO_OLCUC 0x1 #define FO_ONLCR 0x2 #define FO_OOCRNL 0x4 #define FO_ONOCR 0x8 #define FO_ONLRET 0x10 #define FO_ONL 0x20 #define FO_OBS 0x40 #define FO_OVT 0x80 #define FO_OFF 0x100 #define FO_OTAB1 0x200 #define FO_OTAB2 0x400 #define FO_OTAB3 0x800 #define FO_OCR1 0x1000 #define FO_OCR2 0x2000 #define FO_OCR3 0x4000 #define FO_OFILL 0x8000 #define FO_ODELL 0x10000 #define P_RTSLOCK 0x1 #define P_CTSLOCK 0x2 #define P_MAPRTS 0x4 #define P_MAPCTS 0x8 #define P_LOOPBACK 0x10 #define P_DTRFOLLOW 0x20 #define P_FAKEDCD 0x40 #define P_RXIMIN 0x10000 #define P_RXITIME 0x20000 #define P_RXTHOLD 0x40000 /* * Define a structure to communicate serial port signal and data state * information. */ typedef struct asysigs { unsigned long data; unsigned long signal; unsigned long sigvalue; } asysigs_t; #define DT_TXBUSY 0x1 #define DT_TXEMPTY 0x2 #define DT_TXLOW 0x4 #define DT_TXHIGH 0x8 #define DT_TXFULL 0x10 #define DT_TXHOG 0x20 #define DT_TXFLOWED 0x40 #define DT_TXBREAK 0x80 #define DT_RXBUSY 0x100 #define DT_RXEMPTY 0x200 #define DT_RXLOW 0x400 #define DT_RXHIGH 0x800 #define DT_RXFULL 0x1000 #define DT_RXHOG 0x2000 #define DT_RXFLOWED 0x4000 #define DT_RXBREAK 0x8000 #define SG_DTR 0x1 #define SG_DCD 0x2 #define SG_RTS 0x4 #define SG_CTS 0x8 #define SG_DSR 0x10 #define SG_RI 0x20 /* * Define the notification setting structure. This is used to tell the * port what events we want to be informed about. Fields here use the * same defines as for the asysigs structure above. */ typedef struct asynotify { unsigned long ctrl; unsigned long data; unsigned long signal; unsigned long sigvalue; } asynotify_t; /* * Define the port control structure. It is used to do fine grain * control operations on the port. */ typedef struct { unsigned long rxctrl; unsigned long txctrl; char rximdch; char tximdch; char spare1; char spare2; } asyctrl_t; #define CT_ENABLE 0x1 #define CT_DISABLE 0x2 #define CT_STOP 0x4 #define CT_START 0x8 #define CT_STARTFLOW 0x10 #define CT_STOPFLOW 0x20 #define CT_SENDCHR 0x40 /* * Define the stats structure kept for each port. This is a useful set * of data collected for each port on the slave. The A_GETSTATS command * is used to retrieve this data from the slave. */ typedef struct asystats { unsigned long opens; unsigned long txchars; unsigned long rxchars; unsigned long txringq; unsigned long rxringq; unsigned long txmsgs; unsigned long rxmsgs; unsigned long txflushes; unsigned long rxflushes; unsigned long overruns; unsigned long framing; unsigned long parity; unsigned long ringover; unsigned long lost; unsigned long rxstart; unsigned long rxstop; unsigned long txstart; unsigned long txstop; unsigned long dcdcnt; unsigned long dtrcnt; unsigned long ctscnt; unsigned long rtscnt; unsigned long dsrcnt; unsigned long ricnt; unsigned long txbreaks; unsigned long rxbreaks; unsigned long signals; unsigned long state; unsigned long hwid; } asystats_t; /*****************************************************************************/ /* * All command and control communication with a device on the slave is * via a control block in shared memory. Each device has its own control * block, defined by the following structure. The control block allows * the host to open, close and control the device on the slave. */ typedef struct cdkctrl { unsigned char open; unsigned char close; unsigned long openarg; unsigned long closearg; unsigned long cmd; unsigned long status; unsigned long args[32]; } cdkctrl_t; /* * Each device on the slave passes data to and from the host via a ring * queue in shared memory. Define a ring queue structure to hold the * vital information about each ring queue. Two ring queues will be * allocated for each port, one for receive data and one for transmit * data. */ typedef struct cdkasyrq { unsigned long offset; unsigned short size; unsigned short head; unsigned short tail; } cdkasyrq_t; /* * Each asynchronous port is defined in shared memory by the following * structure. It contains a control block to command a device, and also * the necessary data channel information as well. */ typedef struct cdkasy { cdkctrl_t ctrl; unsigned short notify; asynotify_t changed; unsigned short receive; cdkasyrq_t rxq; unsigned short transmit; cdkasyrq_t txq; } cdkasy_t; #pragma pack() /*****************************************************************************/ /* * Define the set of ioctls used by the driver to do special things * to the board. These include interrupting it, and initializing * the driver after board startup and shutdown. */ #include <linux/ioctl.h> #define STL_BINTR _IO('s',20) #define STL_BSTART _IO('s',21) #define STL_BSTOP _IO('s',22) #define STL_BRESET _IO('s',23) /* * Define a set of ioctl extensions, used to get at special stuff. */ #define STL_GETPFLAG _IO('s',80) #define STL_SETPFLAG _IO('s',81) /*****************************************************************************/ #endif
Save
cmd:
run