ELF 4( UD]uEPEdEPPEEPhj EPEPh4j MEPEPBhPA(P MEPEPBlPA(P MEPEPBPA,P MEPE PBPA,P MEPEPB PA,P MEPEPB PA,P MEPEPB0PA,P EǀEPEPEEPh|j EPP= EPhj EEPPEEPEPEUEUjEP=2EPPEPhj E5EPjEP =2EPPEPh,j EUE@PjhBPUEPh0OjBPjEP=DEPhdj EPEPPEVUE@Pjh B PUE@PjhBPEPEP={EPhj E@PjEP EPE PEPEPPEEPEPhjME(PhPRPRAPjEP$=yEPhj E@PjEP EPE PEPEPPEME,PhPRPRAPjEP$=EPh$j E(PE@PjEP EPE PEPEPPEj@h$jEPjЋE4E4PEPh\jE4=EPhj E(PE,PE@PjEP EPE PEPEPPEE@@U BDJHU BLJPU BTJXU B\J`E@dE@hU4+4UBlJpU BtJxEU4B|EǀEǀEǀU U U U $EǀEǀU U EǀEǀEǀUE8PjjB@PEP=EPhj E(PE,PE@PjEP EPE PEPEPPEmUE<PjjPEP=EPh j E8PE(PE,PE@PjEP EPE PEPEPPE]E4UE0PEPB PjjjhQC\>>>$?4@l??ILMUEEEEEEPEPh#j UE@hPB(PEE%=>E%=E% =EPEPh$jUE@jPB(P UE@jhPB(P UE@jPB,P UE@jPB(P UE@j  PB,P UE@j PB,P UE@lPB(PUE@PB,PEE PEPEPhT$j EEEÐUh]uE@\PEEPPEEPh$j EPEUEPE@EԋE@EЋEPEPEPh$jUEPEPjjjEPB8P=@EPTEPTEEEPEPh%j EPEPh@%jE=EU;45EPTEPTEEEPhx%j  EE̋EEȋEPEPEPh%jEЁEE%%EE;EEȉEEPEPh&jEE;EUE@PB,P%=5EPTEPTEEEPhX&j EEE= EEMEPEPB@PA,P E@EċEԉEE@EԋẺEE@E̋EЉEEHEЋEȉEEHEȋE;EE= EPEPEPh&jEEE;EE=2EPh 'j UEPB8PEE̋EEȋEPEPEPEPhX'jE=EPEPh'jE%=4EPh'j EPTEPTEEE%=EEUH;6EPh8(j EPTEPTEE1]EUH EP PC0P ]EUH E%PD PC0P MEU@ jPDPA0P EUH;kE%U+ЃUEPh(j uEMX UE@R4% PD PF0P 8EPh(j MEU@ jD PA0P E%U‰EԋE%U+ЉUЋEPEPEPEPh)jE@E؋E@E܋E;EgEPEPEPh|)jUEjPjBfifo_time = %d ihcp_ioctl: instance %d: at RDY_WAIT, timeout while waiting! ihcp_ioctl: instance %d: at RDY_WAIT - signal while waiting for ready & fifo empty! ihcp_ioctl: instance %d: at HALF_WAIT, wait time = %d (ticks) ihcp_ioctl: instance %d: at RDY_WAIT, drv_getparm error! ihcp_ioctl: instance %d: at HALF_WAIT, time_now = %d, unit_p->fifo_time = %d ihcp_ioctl: instance %d: at HALF_WAIT, timeout while waiting! ihcp_ioctl: instance %d: at HALF_WAIT - signal while waiting for fifo not half full! ihcp_ioctl: instance %d: at STREAM_ON ihcp_ioctl: instance %d: at STREAM_ON - attempt to set streaming mode on board strapped for versatec! ihcp_ioctl: instance %d: at STREAM_ON - no room in fifo for stream on command! ihcp_ioctl: instance %d: at STREAM_OFF ihcp_ioctl: instance %d: at STREAM_OFF - attempt to clear streaming mode on board strapped for versatec! ihcp_ioctl: instance %d: at STREAM_OFF - no room in fifo for stream off command! ihcp_ioctl: instance %d: at GET_FLAGS ihcp_ioctl: instance %d: at GET_FIFO ihcp_ioctl: instance %d: at MASTER_CLEAR ihcp_ioctl: instance %d: at SOFT_ACK ihcp_ioctl: instance %d: at AUTO_LTR_COUNT, byte count = %d ihcp_ioctl: instance %d: at AUTO_LTR_COUNT - attempt to set auto ltr count on board strapped for centronics! ihcp_ioctl: instance %d: at AUTO_LTR_ON ihcp_ioctl: instance %d: at AUTO_LTR_ON - attempt to set auto ltr mode on board strapped for centronics! ihcp_ioctl: instance %d: at AUTO_LTR_ON - no room in fifo for auto ltr on command! ihcp_ioctl: instance %d: at AUTO_LTR_OFF ihcp_ioctl: instance %d: at AUTO_LTR_OFF - attempt to clear auto ltr mode on board strapped for centronics! ihcp_ioctl: instance %d: at AUTO_LTR_OFF - no room in fifo for auto ltr off command! ihcp_ioctl: instance %d: at DEV_AND_VEND_ID ihcp_ioctl: instance %d: at REVISION_ID ihcp_ioctl: instance %d: at LITTLE_ENDIAN ihcp_ioctl: instance %d: at BIG_ENDIAN ihcp_ioctl: instance %d: at DIRECT_MODE ihcp_ioctl: instance %d: at DEVICE_CONTROL ihcp_ioctl: instance %d: at INTERFACE_STATUS ihcp_ioctl: instance %d: at DEVICE_STATUS ihcp_ioctl: istance %d: at REVERSE_DATA ihcp_ioctl: instance %d: at LPSETVERSATEC ihcp_ioctl: instance %d: at LPSETVERSATEC - attempt to select versatec port on board strapped for centronics! ihcp_ioctl: instance %d: at LPSETCENTRONICS ihcp_ioctl: instance %d: at LPSETCENTRONICS - attempt to select centronics port on board strapped for versatec! ihcp_ioctl: instance %d: at LPCOMMAND ihcp_ioctl: instance %d: at LPCOMMAND - attempt to select centronics port on board strapped for versatec! ihcp_ioctl: instance %d: at LPCOMMAND - attempt to select versatec port board strapped for centronics! ihcp_ioctl: instance %d: at LPCOMMAND - attempt to set streaming mode on board strapped for versatec! ihcp_ioctl: instance %d: at LPCOMMAND - no room in fifo for stream on command! ihcp_ioctl: instance %d: at LPCOMMAND - attempt to clear streaming mode on non-centronics unit! ihcp_ioctl: instance %d: at LPCOMMAND - no room in fifo for stream off command! ihcp_ioctl: instance %d: at LPCOMMAND - attempt to do versatec mode set on board strapped for centronics! ihcp_ioctl: instance %d: at LPCOMMAND - no room in fifo for versatec mode set! ihcp_ioctl: instance %d: at LPCOMMAND - attempt to do versatec pulsed command to board strapped for centronics! ihcp_ioctl: instance %d: at LPCOMMAND - no room in fifo for versatec pulsed command! ihcp_ioctl: instance %d: at LPGETREGS ihcp_ioctl: instance %d: at LPSETTIMVAL ihcp_ioctl: instance %d: at LPGETTIMVAL ihcp_intr: instance %d: entering interrupt routine ihcp_intr: instance %d: claiming interrupt, INT_CSTAT = 0x%x ihcp_intr: instance %d: leaving interrupt routine ihcp_strategy: instance %d: entering strategy ihcp_strategy: instance %d: mapped_address = 0x%x, buffer size = 0x%x ihcp_strategy: instance %d: ddi_dma_buf_bind_handle failure! ihcp_strategy: instance %d: dma cookie count = 0x%x ihcp_strategy: instance %d: dma cookie count = 0, or too many cookies! ihcp_strategy: instance %d: first cookie dmac_address = 0x%x, dmac_size = 0x%x ihcp_strategy: instance %d: number of initial unaligned bytes = 0x%x ihcp_strategy: instance %d: fifo full while transferring leading bytes! ihcp_strategy: instance %d: dma required, dma buffer virtual address = 0x%x, total buffer size = 0x%x ihcp_strategy: instance %d: cookie number != 0, calling ddi_dma_nextcookie ihcp_strategy: instance %d: processing cookie #0x%x, phys address = 0x%x, size = 0x%x ihcp_strategy: instance %d: dma count > 3, building iopb number 0x%x ihcp_strategy: instance %d: cookie dma address not aligned! ihcp_strategy: instance %d: cookie size not 0 mod 4 and not last cookie! ihcp_strategy: instance %d: not last iopb, writing pointer to next cookie ihcp_strategy: instance %d: last iopb, setting end of chain bit ihcp_strategy: instance %d: done with iopb number 0x%x, new mapped add = 0x%x, new buffer size = 0x%x ihcp_strategy: instance %d: syncing iopb memory, iopb_count = 0x%x, size sync'd = 0x%x ihcp_strategy: instance %d: ddi_dma_sync failure! ihcp_strategy: instance %d: no dma, waiting for <1/2 full ihcp_strategy: instance %d: not <1/2 full, setting up for interrupt ihcp_strategy: instance %d: drv_getparm error! ihcp_strategy: instance %d: calling cv_timedwait_sig, time_now = %d, unit_p->dma_time = %d ihcp_strategy: instance %d: dma not done after cv_timedwait_sig ihcp_strategy: instance %d: dma not done after abort! ihcp_strategy: instance %d: cv_timedait_sig returns 0x%x ihcp_strategy: instance %d: timeout while waiting for interrupt! ihcp_strategy: instance %d: signal received while waiting for interrupt ihcp_strategy: instance %d: number of trailing bytes = 0x%x, buffer address = 0x%x ihcp_strategy: instance %d: sending trailing bytes ihcp_strategy: instance %d: fifo full while transferring trailing bytes! ihcp_attachihcp_getinfo_init_info_finiihcp_detachihcp_openihcp_closeihcp_writeihcp_ioctlihcp_intrihcp_strategyihcp mutexihcp cvihcp power cvsg_list_lengthddi_pseudovers_speed_defcent_speed_defmode_defdma_time_defrdy_time_def14:15:05Jun 21 2000IKON hardcopy - 16 June, 2000 @!!0# `      %H1 ;@!F!=Q0#U+\`,er~ 0O Q  "8@T]p 0=Q\r%x^ (19J^lx1BI]h^nv~ihcp.debugihcp_driver.cslave_attrihcp_cb_opsihcp_openihcp_closeihcp_writeihcp_ioctlihcp_opsihcp_getinfoihcp_attachihcp_detachmodldrvmodlinkagestate_headread_dump_0ihcp_intrread_dump_1ihcp_strategyddi_remove_intrgetminorddi_dma_addr_bind_handlephysioddi_dma_mem_freeddi_dma_unbind_handlebiodoneddi_dma_free_handleddi_getlddi_dma_nextcookieddi_remove_minor_nodepci_config_getbdrv_usecwaitpci_config_getlcv_signalddi_dma_alloc_handlecv_destroymutex_enterddi_report_devbp_mapinnulldevdelaymutex_destroyddi_regs_map_setupddi_add_intrddi_soft_state_freemutex_exitddi_soft_state_zalloc_infosprintfmod_installpci_config_teardownddi_dev_nregscopyout_initddi_set_driver_privatecv_broadcastddi_dma_mem_allocnodevddi_intr_hilevelddi_get_soft_stateddi_getpropnochpollcv_initpci_config_setupddi_soft_state_finimod_driveropsddi_prop_opddi_dma_syncddi_get_iblock_cookieminphysdrv_usectohzddi_create_minor_nodepci_config_putbmod_infopci_config_putlddi_putlbp_mapoutddi_get_instancedrv_getparmddi_regs_map_freecv_timedwait_sigcopyinddi_soft_state_initmod_remove_finicmn_errcv_waitddi_dma_buf_bind_handlemutex_init<>4@(#)debug.h 1.22 97/05/15 SMI@(#)isa_defs.h 1.20 99/05/04 SMI@(#)types.h 1.65 99/11/15 SMI@(#)feature_tests.h 1.18 99/07/26 SMI@(#)machtypes.h 1.8 99/05/04 SMI@(#)machtypes.h 1.1 99/05/04 SMI@(#)inttypes.h 1.2 98/01/16 SMI@(#)int_types.h 1.6 97/08/20 SMI@(#)int_limits.h 1.6 99/08/06 SMI@(#)int_const.h 1.2 96/07/08 SMI@(#)int_fmtio.h 1.2 96/07/08 SMI@(#)types32.h 1.4 98/02/13 SMI@(#)select.h 1.16 98/04/27 SMI@(#)param.h 1.75 99/11/15 SMI@(#)buf.h 1.44 99/04/14 SMI@(#)t_lock.h 1.45 98/02/01 SMI@(#)machlock.h 1.20 99/05/04 SMI@(#)time.h 2.64 99/10/05 SMI@(#)time_impl.h 1.5 99/10/05 SMI@(#)mutex.h 1.20 98/02/01 SMI@(#)rwlock.h 1.9 98/02/18 SMI@(#)semaphore.h 1.5 98/02/01 SMI@(#)thread.h 1.103 99/11/20 SMI@(#)klwp.h 1.36 99/07/28 SMI@(#)condvar.h 1.10 98/02/18 SMI@(#)signal.h 1.54 99/07/26 SMI@(#)signal_iso.h 1.1 99/08/09 SMI@(#)unistd.h 1.37 98/10/28 SMI@(#)siginfo.h 1.54 98/03/27 SMI@(#)machsig.h 1.10 99/08/15 SMI@(#)faultcode.h 1.15 92/07/14 SMI@(#)pcb.h 1.15 99/08/15 SMI@(#)reg.h 1.16 99/05/04 SMI@(#)reg.h 1.3 99/08/05 SMI@(#)msacct.h 1.7 93/07/13 SMI@(#)ucontext.h 1.7 99/05/04 SMI@(#)regset.h 1.5 99/05/04 SMI@(#)lwp.h 1.30 98/01/06 SMI@(#)synch.h 1.37 99/11/16 SMI@(#)kstat.h 1.15 99/07/26 SMI@(#)errno.h 1.19 98/01/14 SMI@(#)conf.h 1.59 99/05/26 SMI@(#)systm.h 1.110 99/11/24 SMI@(#)proc.h 1.133 99/11/20 SMI@(#)cred.h 1.21 97/01/09 SMI@(#)user.h 1.59 99/08/31 SMI@(#)resource.h 1.25 98/06/30 SMI@(#)model.h 1.20 97/09/22 SMI@(#)auxv.h 1.26 98/01/13 SMI@(#)watchpoint.h 1.6 98/01/06 SMI@(#)seg_enum.h 1.3 95/12/22 SMI@(#)copyops.h 1.4 98/07/17 SMI@(#)aio_req.h 1.2 94/11/11 SMI@(#)uio.h 1.29 97/06/29 SMI@(#)timer.h 1.17 99/06/05 SMI@(#)segment.h 1.14 99/05/04 SMI@(#)utrap.h 1.5 99/01/05 SMI@(#)refstr.h 1.1 99/03/31 SMI@(#)dditypes.h 1.26 98/03/04 SMI@(#)varargs.h 1.45 99/05/04 SMI@(#)va_list.h 1.12 99/05/04 SMI@(#)devops.h 1.42 99/04/21 SMI@(#)poll.h 1.28 98/11/23 SMI@(#)as.h 1.69 99/08/31 SMI@(#)seg.h 1.59 99/05/04 SMI@(#)vnode.h 1.85 99/07/30 SMI@(#)hat.h 1.86 99/06/01 SMI@(#)page.h 1.124 99/06/01 SMI@(#)ddidmareq.h 1.25 98/01/24 SMI@(#)ddimapreq.h 1.14 96/06/25 SMI@(#)mman.h 1.38 99/05/19 SMI@(#)ddipropdefs.h 1.15 99/04/05 SMI@(#)ddidevmap.h 1.12 99/05/28 SMI@(#)nexusdefs.h 1.14 99/04/08 SMI@(#)nexusintr.h 1.7 99/04/05 SMI@(#)file.h 1.60 99/08/31 SMI@(#)map.h 1.26 99/09/13 SMI@(#)open.h 1.9 93/11/01 SMI@(#)stat.h 1.2 99/05/19 SMI@(#)kmem.h 1.29 99/04/14 SMI@(#)vmem.h 1.3 99/12/04 SMI@(#)cmn_err.h 1.29 99/03/23 SMI@(#)ddi.h 1.32 98/01/06 SMI@(#)stream.h 1.85 99/12/15 SMI@(#)strmdep.h 1.10 98/01/06 SMI@(#)strft.h 1.1 99/07/30 SMI@(#)sunddi.h 1.108 99/10/13 SMI@(#)ddi_implfuncs.h 1.31 99/06/02 SMI@(#)ddi_isa.h 1.17 99/07/14 SMI@(#)devctl.h 1.13 99/04/14 SMI@(#)dma_engine.h 1.9 98/01/06 SMI@(#)sunpm.h 1.6 99/10/11 SMI@(#)modctl.h 1.64 99/11/24 SMI@(#)ioccom.h 1.14 97/10/22 SMI@(#)pci.h 1.23 99/10/11 SMIacomp: Sun WorkShop 6 2000/04/07 C 5.1.text.rodata1.rodata.data1.data.bss.symtab.strtab.stab.index.comment.shstrtab.rel.text.rel.data.stab.indexstr%7'2E'C  CQT!P FPC"Zy$5   `#"WY[[L[UuX1X #VV Z!YT[\T"s!^6Wy# !hT-TtSSReVR0# #1RER$QVXQ\i`0P$f\1]OeO)&"GU$T%&%q%0%u&&5'q)a*:G"?***e8+?,)?32/A2.k z133IB3.333 4_ 4g4443B5mA'5R 1G+557+M!A+/ L,P,I+IIHH@;D ,DC_,C7C(CBB-$BAw.A|A(a><9hA9@y6@R-?q?-I)1->eR><)>=;<;<<}9-_;;;:::::z;](H 8 OOO";NNNN1NNNNNN!SNNNNNNN#ONNNNNNNNNNONNNNONNN> De:4 JOW\ TN ](WRT+ R[][QfQ5P0/_Y_]2_c1].]X]LC`?C>CMCe6C5C<C<C?C_)CO*C*C$.Z.F.;Z.7.#`|-`"T"%j &V & &G &&&N e bXOJOj@,aK!#4#Q##!#"##4Q#O4AuW'UU&U U UdMU;MUMU%7e*I*** * *t**H**?*e*** ***#***V=*\*0[*Z*VZ*Y*SX**J)*;*=*=*?1*-*o'*'*)*'*.*(*#(*A(*Z(*x(*(*3*:*4*+*,)*8*5*X7*7*7*7*=9*78*-Y>--w///,z,NNQV1?'6 ']''~'E '; $H G)-))i ))))X )g )x ) ){ ) ) )w )1T 1KKKUK5KEK ^ ^ ^^ ^^ ^M^z ^ ^<^^^ ^O^]^>^^^ ^ ^m9.9:2 22 2&22 2 22 2 2222 2 2 2 2 2222 2 222R33#3YO3pQ3" 3!3" "" "" "d" ""r" ""b"BfMM 888)8s8 8u8888 8 8 88gS ;;; ; ;;;;8;-;; ;I; ; ;;$ ;!<L<P<<<aN<]<$!<,I E=xFZ\9ZZM8Z8Z7Zn;Z9Z9ZZ_Z+Zn7Z47Z7Z6ZZ{Zn<ZZn:Z6Z~5ZZr4Z)Z6ZZ2=Z2Zl=Z2Z2ZF0Z=Zx2Z>Z)0ZZM>ZH:Z6Z>Z2Z1Z1ZZ1ZZ8Z9Zd&ZgZFZ[ZZZZZyZZZ 0ZYZ/ZYZXZXZXZXZI.ZWZWZ@ZXZ@Z~WZUZUZIZfPZIPZ,PZPZOZ8/Z|HZ!HZ1ZZYZZGZWZBZ XZVZSZV$ZZ7Z3GZ/ZmGZCZp/ZZUZPZ[Z]Z[ZZZQVZ@EZpEZEZEZEZEZFZ7FZTFZ$Z-ZZZ[ZU/ZFZZ<d/Cd<'d>CdCd' d0dBDdpd3DdHd<dg0d<dd#IdAdmdBd.dId dCd$d!dHd#dMd$d<dx)dMd;dfd dd ,dh*d~.ddY d/d0>dd=d*d:dldBd:Bd%df d?d+Bd&d$d*dh>dPdAdHdr ddld:d9d9d2IddY-dd0d?+d$dN+dd6dlOd(Ad+dOd>dAddtAdd<dz!d8-d#dYd+d5ddPd#d>d6 dd_Qd5dd.5dQdd,dLdRd;d8Rd5dRd0dRddSd4dd{Sd;d4d4TddoTdf,d0dTddTd4dTd"4dNUd-%dAd;dndVd;d4dlVdddVddWd+d3d=Wddodx%d-d@@dd 1d8Xd#d3d|Xd@d|&d@d-dd?dYdd^Ydd:d?dd3dI3dZd:d5d"d>d:d!d\d:3dx?d0?d-dPd2dS[dd%d*d:2d[dd\ddb\d1d\dd\d-"d$d8]ddW,dN"dAdedJIQJJJ+J"JIJf#JZ!J\\x40thPHQDL8H(H,H|H$Hp6l66<6 6@6ihcp_driver.cXa ; V=3.1 ; R=Sun WorkShop 6 2000/04/07 C 5.1/usr/wdw/ihcp.mutex; /opt/SUNWspro/bin/../WS6/bin/cc -c -D_KERNEL -DDEBUG -c ihcp_driver.c -W0,-xp8^<^2-p،%p *p"2:$ F O\|Y ؤc mh