`
`'.\''.
`
`1':
`'I'
`IIi:
`Jli·
`
`li:
`Ji!:
`
`iiJ
`li
`1
`
`1
`
`ill
`
`jl
`il! ,'·;
`ii
`iii
`
`1li
`·
`,::.
`
`II
`l,
`!I
`1·
`
`July, 1993
`
`PCMCIA @ 1992, 1993
`
`Printed in the United States of America.
`
`@ Printed on recycled paper .
`
`1030 East Duane Avenue, Suite G, Sunnyvale, CA 94086
`
`Personal Computer Memory Card International Association
`
`~
`~
`
`by any other means without the prior written permission of PCMCIA.
`All Rights reserved. No part of this publication may be reproduced or transmitted in any form or
`Copyright@ 1992, 1993 by Personal Computer Memory Card International Association (PCMCIA).
`
`Fax: (408) 720-9416
`Tel: (408) 720-0107
`Sunnyvale, CA 94086
`SuiteG
`1030 East Duane Avenue
`Personal Computer Memory Card International Association
`
`Published by:
`
`Iii ,,,
`''I I{
`''I l :,1
`'ji:
`iT
`!1
`
`AS 0310310l3d 38 A \>'VI T~lb~~,';'i SIHl :301lON
`
`(3.aoo ·s·n H m11l .'Y:i !. '!911:!Adoo
`
`Release2.1
`PCMCIA CARD SERVICES SPECIFICATION
`
`July, 1993
`November, 1992
`December, 1991
`Date Published
`
`Release 2.1
`Release2.0
`Draft 1.00
`Edition
`
`Release Record
`
`BLACKBERRY Ex. 1019, page 1
`
`
`
`1 -1
`
`PCMCIA © 1992
`
`July, 1993
`
`INTRODUCTION
`
`SECTION -1
`
`Release 2.0
`PCMCIA CARD SERVICES SPECIFICATION
`
`Release 2.1
`PCMCIA CARD SERVICES SPECIFICATION
`
`BLACKBERRY Ex. 1019, page 2
`
`
`
`July, 1993
`
`1 -2
`
`3.4.6 Reset ........................................................................................................................................................... 3-16
`3.4.5 Exclusive ...................................................................................................................................................... 3-16
`3.4.4 Ejection/Insertion Requests ......................................................................................................................... 3-15
`3.4.3 Status Change ............................................................................................................................................. 3-15
`3.4.2 Registration Completion .............................................................................................................................. 3-15
`3.4.1 Insertion ....................................................................................................................................................... 3-14
`3.4 Callback Interfaces .......................................................................................................................... 3-14
`
`3.3.5 Advanced Client Services ............................................................................................................................ 3-13
`3.3.4 Client Utilities ............................................................................................................................................... 3-12
`3.3.3 Bulk Memory Services ................................................................................................................................. 3-12
`3.3.2 Resource Management ............................................................................................................................... 3-11
`3.3. 1.2 Basic Card Support .......................................................................................................................... 3-1 1
`3.3. 1.1 Client Registration ............................................................................................................................ 3-10
`3.3.1 Client Services ............................................................................................................................................. 3-10
`3.3 Function Groups ................................................................................................................................ 3-9
`
`3.2.4 Return Codes ................................................................................................................................................. 3-8
`3.2.3 Initialization of Card Services ........................................................................................................................ 3-7
`3.2.2 Presence Detection ....................................................................................................................................... 3-7
`3.2.1 .5 Multi-Byte Fields ................................................................................................................................. 3-7
`3.2.1.4 Reserved Fields .................................................................................................................................. 3-7
`3.2. 1.3 Logical Sockets .................................................................................................................................. 3-7
`3.2.1.2 Argument Packet ................................................................................................................................ 3-6
`3.2.1.1 Basic Operation .................................................................................................................................. 3-6
`3.2.1 Calling Conventions ....................................................................................................................................... 3-6
`3.2 Programming Interface ...................................................................................................................... 3-6
`
`3.1.5 Client Device Drivers ..................................................................................................................................... 3-5
`3.1.4 Memory Technology Drivers .......................................................................................................................... 3-4
`3.1.3 Card Services ................................................................................................................................................ 3-4
`3.1.2 Socket Services ............................................................................................................................................. 3·4
`3.1. 1 Hardware Layer (PC Cards, Sockets, and Adapters) .................................................................................... 3·3
`3.1 Architecture ........................................................................................................................................ 3-3
`
`2.1 Overview ............................................................................................................................................ 2-3
`
`FUNCTIONAL DESCRIPTION
`
`OVERVIEW
`
`1.4 Terms and Abbreviations .................................................................................................................. 1-3
`
`1.3 Related Documents ............................................................................................................................ 1-3
`
`1.2 Scope ................................................................................................................................................... 1-3
`
`1.1 Purpose ............................................................................................................................................... 1-3
`
`INTRODUCTION
`
`Release 2.1
`PCMCIA PC CARD S'fAN9AREl
`
`$/E/lVICG"S SPt?CiFI-
`
`Release 2.0
`PCMCIA CARD SERVICES SPECIFICATION
`
`BLACKBERRY Ex. 1019, page 3
`
`
`
`iii
`
`July, 1993
`
`PCMCIA «:> 1992, 1993
`
`«:> 1992,
`
`July, 1993
`
`5.24 MapMemPage (14H) ....................................................................................................................... 5-43
`
`5.23 MaplogWindow (13H) ................................................................................................................... 5-42
`
`5.22 MaplogSocket (12H) ..................................................................................................................... 5-41
`
`5.21 GetTupleData (ODH) ....................................................................................................................... 5·39
`
`5.20 GetStatus (OCH) ............................................................................................................................. 5-37
`
`5.19 GetNextTuple (OAH) ....................................................................................................................... 5·35
`
`5.18 GetNextReglon (09H) ..................................................................................................................... 5-34
`
`5.17 GetNextPartltlon (08H) .................................................................................................................. 5-32
`
`5.16 GetNextCIIent (2AH) ...................................................................................................................... 5·31
`
`5.15 GetFirstTuple (07H) ....................................................................................................................... 5-30
`
`5.14 GetFirstReglon (06H) ...................................................................................................................... 5-29
`
`5.13 GetFirstPartltion (05H) .................................................................................................................. 5-25
`
`5.12 GetFirstCIIent (OEH) ...................................................................................................................... 5-24
`
`5.11 GetEventMask (2EH) ..................................................................................................................... 5-22
`
`5.10 GetConflguratlonlnfo (04H) .......................................................................................................... 5-20
`
`5.9 GetCIIentlnfo (03H) .......................................................................................................................... 5·17
`
`5.8 GetCardServlceslnfo (OBH) ............................................................................................................ 5-15
`
`5.7 DereglsterEraseQueue (25H) .......................................................................................................... 5-14
`
`5.6 DereglsterCiient (02H) ..................................................................................................................... 5·13
`
`5.5 CopyMemory (01H) .......................................................................................................................... 5-11
`
`5.4 CloseMemory (DOH) ......................................................................................................................... 5-10
`
`5.3 CheckEraseQueue (26H) ................................................................................................................... 5·9
`
`5.2 AdjustResourcelnfo (35H) ................................................................................................................ 5·6
`
`5.1 AddSocketServlces (32H) .............................................................................................................. 5-5.8
`
`5.0 AccessConfigurattonReglster (36H) ................................................................................................. 5-5
`
`FUNCTION REFERENCE
`
`4.12 CIS Access ........................................................................................................................................ 4-4
`
`4.11 Tlmeouts ........................................................................................................................................... 4-4
`
`4.10.3 Abnormal Termination ................................................................................................................................. 4~4
`4.1 0.2 Configuration ............................................................................................................................................... 4~4
`4.10.1 Range Checking of Arguments .................................................................................................................... 4-4
`
`4.10 Interface Assumptlons ..................................................................................................................... 4-4
`
`4.9 Use of Socket Servlces ...................................................................................................................... 4-3
`
`4.8 Multiple Partitioned Memory Cards .................................................................................................. 4·3
`
`4.7 Mixed Media Memory Cards .............................................................................................................. 4-3
`
`4.6 Interrupts Per Socket ......................................................................................................................... 4-3
`
`4.5 BIOS or Device Driver ........................................................................................................................ 4-3
`
`SERVICES sP;;-CIF!0'\·7'1orl
`
`Release 2.1
`PCMCIA PC CARD STAN9AR9-
`
`'·I d! • "0/lO'I
`
`; ·-j
`
`I
`
`•
`
`4.4 EDC Generatlon .................................................................................................................................. 4·3
`
`4.3 Com press I on ...................................................................................................................................... 4-3
`
`4.2 Auto Configuration of 1/0 Cards ....................................................................................................... 4-3
`
`4.1 Power Management ............................................................................................................................ 4-3
`
`ASSUMPTIONS AND CONSTRAINTS
`
`3.6.9 Tuple Usage ................................................................................................................................................ 3-37
`3.6.8 Virt~al Memory Partitions/Regions .............................................................................................................. 3-36
`3.6.7 Media Access Table .................................................................................................................................... 3-35
`3.6.6 Card Services Request Retries ................................................................................................................... 3-34
`3.6.5 Blocking ....................................................................................................................................................... 3-34
`3.6,4 Erase Queuing ............................................................................................................................................. 3-34
`3.6.3 MTD Helper Interface .................................................................................................................................. 3-33
`3.6.2 Card Services/MTD Interface ...................................................................................................................... 3-31
`3.6.1 Registration .................................................................................................................................................. 3-30
`3.6 Memory Technology Drivers ........................................................................................................... 3-30
`
`3.5.25 WRITE_PROTECT.. .................................................................................................................................. 3-30
`3.5.24 SS_UPDATED ........................................................................................................................................... 3-30
`3.5.23 TIMER_EXPIRED ...................................................................................................................................... 3-29
`3.5.22 RESET _REQUEST ................................................................................................................................... 3-29
`3.5.21 RESET _PHYSICAL ................................................................................................................................... 3-28
`3.5.20 RESET_ COMPLETE ................................................................................................................................. 3-28
`3.5.19 REGISTRATION_ COMPLETE .................................................................................................................. 3-28
`3.5.18 PM_ SUSPEND .......................................................................................................................................... 3-27
`3.5.17 PM_RESUME ............................................................................................................................................ 3-27
`3.5.16 INSERTION_ REQUEST ............................................................................................................................ 3-27
`3.5.15 INSERTION_ COMPLETE ......................................................................................................................... 3-27
`3.5.14 EXCLUSIVE_ REQUEST ............................................................................................................................ 3-26
`3.5.13 EXCLUSIVE_ COMPLETE ......................................................................................................................... 3-26
`3.5.12 ERASE_COMPLETE ................................................................................................................................. 3-25
`3.5.11 EJECTION_REQUEST .............................................................................................................................. 3-25
`3.5.1 0 EJECTION_ COMPLETE ........................................................................................................................... 3-24
`3.5.9 CLIENT _INFO ............................................................................................................................................. 3-24
`3.5.8 CARD_ UNLOCK .......................................................................................................................................... 3-23
`3.5. 7 CARD_ RESET ............................................................................................................................................. 3-23
`3.5.6 CARD_REMOVAL ....................................................................................................................................... 3-22
`3.5.5 CARD_READY ............................................................................................................................................ 3-22
`3.5.4 CARD_LOCK ............................................................................................................................................... 3-21
`3.5.3 CARD _INSERTION ..................................................................................................................................... 3-20
`3.5.2 BATTERY_ LOW .......................................................................................................................................... 3-19
`3.5.1 BATTERY_ DEAD ........................................................................................................................................ 3-19
`3.5 Events ................................................................................................................................................ 3-19
`
`3.4.10 Timer .......................................................................................................................................................... 3-17
`3.4.9 MTD Request.. ............................................................................................................................................. 3-17
`3.4.8 Erase Completion ........................................................................................................................................ 3-17
`3.4.7 Client Information ......................................................................................................................................... 3-16
`
`_ :3011orf
`
`A a a3l::l3.Lo~d :1::;
`_ ·r:moQ ·s·n n :111'') ,,_ "'""!Jdo~f"
`
`.·
`
`Release 2.1
`PCMCIA PC CARD STANDARD
`
`BLACKBERRY Ex. 1019, page 4
`
`
`
`'
`'i:FMtC<!?s SPCctt= 1 c4Tto\/
`
`Release 2.1
`PCMCIA PC CARD S'FANE>AfiE>
`
`. . ' '.t :)t rRO i ECTED B'f
`
`~. PYnlu:,' ~a. (TiTLE 17 U.S. CODE)
`CO
`
`.. , ·. . .
`
`.NOTICE: Tll!S H·~-~,. '·"" o-, _
`
`•
`
`,
`
`BY
`
`-
`
`v
`
`July, 1993
`
`PCMCIA © 1992, 1993
`
`<!:)1
`
`July, 1993
`
`iv
`
`F.5 CardWrlteWordsAI ............................................................................................................................ F-5
`
`F.4 CardWrlteWords ................................................................................................................................ F-5
`
`F.3 CardWrlteWordAI .............................................................................................................................. F-5
`
`F.2 CardWrlteByteAI ................................................................................................................................ F·5
`
`F.1 CardWrlteWord .................................................................................................................................. F-5
`
`F.O CardWrlteByte ................................................................................................................................... F·5
`
`F.5 CardReadWordsAI ............................................................................................................................ F-4
`
`F.4 CardReadWords ................................................................................................................................ F-4
`
`F.3 CardReadWordAI .............................................................................................................................. F-4
`
`F.2 CardReadByteAI.. .............................................................................................................................. F-4
`
`F.1 CardReadWord ......................................................... : ........................................................................ F-4
`
`F.O CardReadByte ................................................................................................................................... F-4
`
`F.2 CardSetAutolnc ................................................................................................................................. F-3
`
`F.1 CardSetAddress ................................................................................................................................ F-3
`
`REFERENCE
`MEDIA ACCESS FUNCTIONS FOR INTEL 8086
`
`E.5 MTOROYMask (04H) .......................................................................................................................... E-5
`
`E.4 MTOSetVpp (03H) .............................................................................................................................. E-5
`
`E.3 MTORequestWindow (02H) .............................................................................................................. E-4
`
`E.2 MTOReleaseWindow (01 H) ............................................................................................................... E-4
`
`E.1 MTOModlfyWindow (OOH) ................................................................................................................. E-3
`
`MTD HELPER FUNCTION REFERENCE
`
`0.6 /nte/80286 Protect Mode OS/2 ......................................................................................................... D-6
`
`0.5 Intel 60386 Flat Protect Mode (SAMPLE) ........................................................................................ 0-6
`
`0.4 Intel 60386 Protect Mode (SAMPLE) ............................................................................................... 0·5
`
`0.3 Intel 60286 Protect Mode (SAMPLE) ............................................................................................ 0-4.a
`
`0.2 Intel 6086 Real Mode OOS ................................................................................................................ 0·3
`
`0.1 Add/ReplaceSocketServlces ........................................................................................................... 0-3
`
`PROCESSOR BINDINGS
`
`C.1 Return Codes .................................................................................................................................... C-3
`
`RETURN CODES
`
`B.1 Event Codes ...................................................................................................................................... B-3
`
`EVENT CODES
`
`A.1 Function Codes ................................................................................................................................. A·3
`
`FUNCTION CODES
`
`5.54 WrlteMemory (24H) ........................................................................................................................ 5-87
`
`5.53 VendorSpeclflc (34H) .................................................................................................................... 5-86
`
`5.52 ValldateCIS (2BH) .......................................................................................................................... 5·65
`
`5.51 SetReglon (29H) ............................................................................................................................. 5·83
`
`5.50 SetEventMask (31 H) ...................................................................................................................... 5·81
`
`5.49 ReturnSSEntry (23H) ..................................................................................................................... 5·60
`
`5.48 ResetCard (11 H) ............................................................................................................................. 5·79
`
`5.47 RequestWindow (21H) ................................................................................................................... 5-76
`
`5.48 RequestSocketMask (22H) ............................................................................................................ 5-75
`
`5.45 RequestiRQ (20H) .......................................................................................................................... 5-72
`
`5.44 RequestiO (1 FH) ............................................................................................................................ 5-70
`
`5.43 RequestExcluslve (2CH) ............................................................................................................... 5-69
`
`5.42 RequestConflguratlon (30H) ......................................................................................................... 5·67
`
`5.41 ReplaceSocketServlces (33H) ...................................................................................................... 5·66
`
`5.40 ReleaseWindow (1 0H) ................................................................................................................... 5·65
`
`5.39 ReleaseSocketMask (2FH) ............................................................................................................ 5·64
`
`5.36 ReleaseiRQ (1 CH) .......................................................................................................................... 5-63
`
`5.37 ReleaseiO (1 BH) ............................................................................................................................. 5·62
`
`5.36 ReleaseExcluslve (20H) ................................................................................................................ 5-61
`
`5.35 ReleaseConflguratlon (1 EH) ......................................................................................................... 5-60
`
`5.34 ReglsterTimer (28H) ...................................................................................................................... 5-59
`
`5.33 ReglsterMTO (1AH) ........................................................................................................................ 5·57
`
`5.32 ReglsterEraseQueue (OFH) ........................................................................................................... 5·55
`
`5.31 ReglsterCI/ent (10H) &,ag ReadMemef)' !19Hj ............................................................................ 5·53
`
`5.30 ReadMemory (19H) &.31 Reglelerl;:lleRI !19Hj ............................................................................ 5·52
`
`5.29 OpenMemory (18H) ........................................................................................................................ 5·50
`
`5.28 ModifyWindow (17H) ..................................................................................................................... 5·48
`
`5.27 ModlfyConflguratlon (27H) ........................................................................................................... 5-46
`
`5.26 MapPhyWindow (16H) ................................................................................................................... 5-45
`
`5.25 MapPhySocket (15H) .......................................................................................... : .......................... 5-44
`
`•
`· · ODE)
`
`···'"-'iECTEO
`
`·• 1111 Lc 77 uS C
`" • C· t pr,r,-
`
`·.·-··•c: !,!tVo
`
`}VUifG£; TH/S ;\L1i:o,,
`
`:u;c· .... __
`
`RIGH · ·
`
`Copy
`
`Release 2.1
`PCMCIA PC CARD STANDARD
`
`-
`
`BLACKBERRY Ex. 1019, page 5
`
`
`
`1 -3
`
`July, 1993
`
`1992,1993
`
`PCMCIA©
`
`'1993
`
`vi
`
`Host. ............................................... The computer which contains an adapter with one or more
`
`sockets.
`
`managed system resources. Mast be """ i!ere le be 'Ialit!.
`
`Handle ........................................... A Card Services assigned identifier associated with Card Services
`
`End-user ........................................ A person who uses a computer.
`
`Compatible with ISA 8-bit and 16-bit adapter cards.
`bus-mastering capabilities. Not compatible with Micro Channel.
`feature 32-bit addressing and
`personal computers
`an expansion bus promoted by manufacturers of IBM-compatible
`EISA ............................................... Acronym for Extended Industry Standard Architecture. Refers to
`
`that
`
`Client. ............................................. A user of Card Services functions. May be a device driver, utility
`
`program or application program.
`
`CIS .................................................. Acronym for Card Information Structure.
`
`ASCIIZ ........................................... A text string in ASCII format terminated with a byte of zero.
`
`Adapter .......................................... The hardware which connects a computer bus to PC Card sockets.
`Terms and Abbreviations
`
`1.4
`
`Personal Computer Memory Card International Association.
`PCMCIA, PCMCIA Socket Services Inte1jace Specification, Release 2.14.{), April1993 ~levember 199:!,
`Memory Card International Association.
`PCMCIA PC Card Standard, Release 2.1 ~. April 1993 ~levember 1992, Personal Computer
`Machines.
`IBM, IBM-AT Technical Reference Manual, First Edition, March 1984, International Business
`available in the following documents is not duplicated within tnis document.
`This section identifies documents related to the Card Services Interface Specification. Infom1ation
`
`1.3 Related Documents
`
`b) create programs that access and use PC Cards and sockets in a host computer.
`a) create a Card Services implementation on a host computer, and
`This document is intended to provide enough information for software developers to
`Scope
`
`manipulates PC Cards and sockets.
`programs. This specification is intended to be independent of the hardware that actually
`that access Card Services and may be device drivers, configuration utilities or application
`sockets (these terms are defined below) to be shared by multiple clients. Clients are the programs
`This document describes the interface provided by Card Services which allows PC Cards and
`Purpose
`
`1.2
`
`1.1
`
`Release 2.1
`PCMCIA CARD SERVICES SPECIFICATION
`
`INTRODUCTION
`
`Purpose
`INTRODUCTION
`
`•
`
`1.1 OS Critical Section Handllng ............................................................................................................... l-3
`
`OS CRITICAL SECTION HANDLING
`
`H.1 Client Callback Argument Usage .................................................................................................... H-3
`
`CLIENT CALLBACK ARGUMENT USAGE
`
`G.1 Argument Usage Referemce ....................................................................