Lines Matching refs:pi
40 #define PPCSTRUCT(pi) ((Interface *)(pi->private))
59 static int bpck6_read_regr(PIA *pi, int cont, int reg)
68 out=ppc6_rd_port(PPCSTRUCT(pi),cont?reg|8:reg);
72 static void bpck6_write_regr(PIA *pi, int cont, int reg, int val)
77 ppc6_wr_port(PPCSTRUCT(pi),cont?reg|8:reg,(u8)val);
81 static void bpck6_write_block( PIA *pi, char * buf, int len )
83 ppc6_wr_port16_blk(PPCSTRUCT(pi),ATAPI_DATA,buf,(u32)len>>1);
86 static void bpck6_read_block( PIA *pi, char * buf, int len )
88 ppc6_rd_port16_blk(PPCSTRUCT(pi),ATAPI_DATA,buf,(u32)len>>1);
91 static void bpck6_connect ( PIA *pi )
98 if(pi->mode >=2)
100 PPCSTRUCT(pi)->mode=4+pi->mode-2;
102 else if(pi->mode==1)
104 PPCSTRUCT(pi)->mode=3;
108 PPCSTRUCT(pi)->mode=1;
111 ppc6_open(PPCSTRUCT(pi));
112 ppc6_wr_extout(PPCSTRUCT(pi),0x3);
115 static void bpck6_disconnect ( PIA *pi )
121 ppc6_wr_extout(PPCSTRUCT(pi),0x0);
122 ppc6_close(PPCSTRUCT(pi));
125 static int bpck6_test_port ( PIA *pi ) /* check for 8-bit port */
130 ((struct pardevice*)(pi->pardev))->port->modes,
131 ((struct pardevice *)(pi->pardev))->port->base);
135 PPCSTRUCT(pi)->ppc_id=pi->unit;
136 PPCSTRUCT(pi)->lpt_addr=pi->port;
139 if(((struct pardevice *)(pi->pardev))->port->modes &
145 else if(((struct pardevice *)(pi->pardev))->port->modes &
157 static int bpck6_probe_unit ( PIA *pi )
163 printk(KERN_DEBUG "PROBE UNIT %x on port:%x\n",pi->unit,pi->port);
167 PPCSTRUCT(pi)->ppc_id=pi->unit;
170 PPCSTRUCT(pi)->mode=1;
172 out=ppc6_open(PPCSTRUCT(pi));
181 ppc6_close(PPCSTRUCT(pi));
198 static void bpck6_log_adapter( PIA *pi, char * scratch, int verbose )
203 printk("%s: BACKPACK Protocol Driver V"BACKPACK_VERSION"\n",pi->device);
204 printk("%s: Copyright 2001 by Micro Solutions, Inc., DeKalb IL.\n",pi->device);
206 pi->device,BACKPACK_VERSION,pi->port);
207 printk("%s: Unit: %d Mode:%d (%s) Delay %d\n",pi->device,
208 pi->unit,pi->mode,mode_string[pi->mode],pi->delay);
211 static int bpck6_init_proto(PIA *pi)
216 pi->private = (unsigned long)p;
220 printk(KERN_ERR "%s: ERROR COULDN'T ALLOCATE MEMORY\n", pi->device);
224 static void bpck6_release_proto(PIA *pi)
226 kfree((void *)(pi->private));