]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/netat/adsp_internal.h
xnu-1228.15.4.tar.gz
[apple/xnu.git] / bsd / netat / adsp_internal.h
index 80d0983bb62c325d652ded066ad92671925994bd..a26ff49af88c2ccac89a19f73cb309325853ec16 100644 (file)
@@ -1,14 +1,19 @@
 /*
  * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
  *
- * @APPLE_LICENSE_HEADER_START@
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  * 
  * This file contains Original Code and/or Modifications of Original Code
  * as defined in and that are subject to the Apple Public Source License
  * Version 2.0 (the 'License'). You may not use this file except in
- * compliance with the License. Please obtain a copy of the License at
- * http://www.opensource.apple.com/apsl/ and read it before using this
- * file.
+ * compliance with the License. The rights granted to you under the License
+ * may not be used to create, or enable the creation or redistribution of,
+ * unlawful or unlicensed copies of an Apple operating system, or to
+ * circumvent, violate, or enable the circumvention or violation of, any
+ * terms of an Apple operating system software license agreement.
+ * 
+ * Please obtain a copy of the License at
+ * http://www.opensource.apple.com/apsl/ and read it before using this file.
  * 
  * The Original Code and all software distributed under the License are
  * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
@@ -18,7 +23,7 @@
  * Please see the License for the specific language governing rights and
  * limitations under the License.
  * 
- * @APPLE_LICENSE_HEADER_END@
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  */
 #ifndef _NETAT_ADSP_INTERNAL_H_
 #define _NETAT_ADSP_INTERNAL_H_
@@ -245,9 +250,6 @@ typedef struct ccb {
     ADSP_OPEN_DATA of;         /* Holds the data for the open exchange */
     gref_t *gref;                      /* The queue associated with the CCB */
     gbuf_t *sp_mp;
-    atlock_t lock;
-    atlock_t lockClose;
-    atlock_t lockRemove;
 } CCB, *CCBPtr;
 
 
@@ -353,6 +355,56 @@ extern GLOBAL adspGlobal;
 /* Address of ptr to list of ccb's */
 #define AT_ADSP_STREAMS ((CCB **)&(adspGlobal.ccbList))
 
+void CheckSend(CCBPtr);
+
+struct qlink {
+       struct qlink *qlinkp;
+};
+
+int qAddToEnd(struct qlink **, struct qlink *);
+
+void adspioc_ack(int, gbuf_t *, gref_t *);
+int CalcRecvWdw(CCBPtr);
+int calcRecvQ(CCBPtr);
+int CalcSendQFree(CCBPtr);
+int adsp_sendddp(CCBPtr, gbuf_t *, int, AddrUnion *, int);
+int CheckReadQueue(CCBPtr);
+int CheckOkToClose(CCBPtr);
+
+int RXData(CCBPtr, gbuf_t *, ADSP_FRAMEPtr, int);
+int RXFResetAck(CCBPtr, ADSP_FRAMEPtr);
+int RxClose(CCBPtr);
+void CheckRecvSeq(CCBPtr, ADSP_FRAMEPtr);
+int RXFReset(CCBPtr, ADSP_FRAMEPtr);
+int RXAttention(CCBPtr, gbuf_t *, ADSP_FRAMEPtr, int);
+CCBPtr FindSender(ADSP_FRAMEPtr, AddrUnion);
+void DoClose(CCBPtr, int, int);
+void completepb(CCBPtr, struct adspcmd *);
+int adspReadAttention(CCBPtr, struct adspcmd *);
+int adspMode(struct adspcmd *);
+int CompleteQueue(struct adspcmd **, int);
+
+void CleanupGlobals(void);
+void InitGlobals(void);
+void TimerStop(void);
+void TimerTick(void);
+
+void SndMsgUp(gref_t *, gbuf_t *);
+int adspDeassignSocket(CCBPtr);
+unsigned char adspAssignSocket(gref_t *gref, int);
+int adspWriteHandler(gref_t *, gbuf_t *);
+int adspReadHandler(gref_t *, gbuf_t *);
+
+int adsp_wput(gref_t *gref, gbuf_t *m);
+int adspRelease(gref_t *);
+int adsp_close(gref_t *);
+int adspAllocateCCB(gref_t *);
+
+void NotifyUser(CCBPtr);
+void UrgentUser(CCBPtr);
+
+unsigned short NextCID(void);
+
 #endif /* KERNEL_PRIVATE */
 #endif /* __APPLE_API_OBSOLETE */