Lines Matching refs:port
499 struct SerialDevice *port = NULL; in UsbSerialDeviceAlloc() local
506 port = (struct SerialDevice *)OsalMemCalloc(sizeof(*port)); in UsbSerialDeviceAlloc()
507 if (port == NULL) { in UsbSerialDeviceAlloc()
511 if (OsalMutexInit(&port->lock) != HDF_SUCCESS) { in UsbSerialDeviceAlloc()
513 OsalMemFree(port); in UsbSerialDeviceAlloc()
516 port->lineCoding.dwDTERate = CPU_TO_LE32(DATARATE); in UsbSerialDeviceAlloc()
517 port->lineCoding.bCharFormat = USB_CDC_1_STOP_BITS; in UsbSerialDeviceAlloc()
518 port->lineCoding.bParityType = USB_CDC_NO_PARITY; in UsbSerialDeviceAlloc()
519 port->lineCoding.bDataBits = DATA_BITS_LENGTH; in UsbSerialDeviceAlloc()
520 acm->lineCoding = port->lineCoding; in UsbSerialDeviceAlloc()
521 acm->port = port; in UsbSerialDeviceAlloc()
522 port->acm = acm; in UsbSerialDeviceAlloc()
529 struct SerialDevice *port = acm->port; in UsbSeriaDevicelFree() local
531 if (port == NULL) { in UsbSeriaDevicelFree()
535 OsalMemFree(port); in UsbSeriaDevicelFree()
536 port = NULL; in UsbSeriaDevicelFree()
539 static int32_t UsbSerialRead(struct SerialDevice *port, struct HdfSBuf *reply) in UsbSerialRead() argument
541 struct AcmDevice *acm = port->acm; in UsbSerialRead()
554 if (DataFifoIsEmpty(&port->readFifo)) { in UsbSerialRead()
562 buf = (uint8_t *)OsalMemCalloc(DataFifoLen(&port->readFifo) + 1); in UsbSerialRead()
569 len = DataFifoRead(&port->readFifo, buf, DataFifoLen(&port->readFifo)); in UsbSerialRead()
588 static int32_t SerialSetBaudrate(struct SerialDevice *port, const struct HdfSBuf *data) in SerialSetBaudrate() argument
590 struct AcmDevice *acm = port->acm; in SerialSetBaudrate()
597 port->lineCoding.dwDTERate = CPU_TO_LE32(baudRate); in SerialSetBaudrate()
598 if (memcmp(&acm->lineCoding, &port->lineCoding, sizeof(struct UsbCdcLineCoding))) { in SerialSetBaudrate()
600 …memcpy_s(&acm->lineCoding, sizeof(struct UsbCdcLineCoding), &port->lineCoding, sizeof(port->lineCo… in SerialSetBaudrate()
607 __func__, (port->lineCoding.dwDTERate), port->lineCoding.bCharFormat, in SerialSetBaudrate()
608 port->lineCoding.bParityType, port->lineCoding.bDataBits); in SerialSetBaudrate()
620 static int32_t SerialGetBaudrate(struct SerialDevice *port, struct HdfSBuf *reply) in SerialGetBaudrate() argument
622 uint32_t baudRate = LE32_TO_CPU(port->lineCoding.dwDTERate); in SerialGetBaudrate()
634 static int32_t SerialOpen(struct SerialDevice *port, struct HdfSBuf *data) in SerialOpen() argument
640 if ((port == NULL) || (data == NULL)) { in SerialOpen()
645 acm = port->acm; in SerialOpen()
667 ret = UsbSerialAllocFifo(&port->readFifo, READ_BUF_SIZE); in SerialOpen()
682 UsbSerialFreeFifo(&port->readFifo); in SerialOpen()
686 static int32_t SerialClose(struct SerialDevice *port, struct HdfSBuf *data) in SerialClose() argument
690 if ((port == NULL) || (data == NULL)) { in SerialClose()
695 if (port->acm == NULL) { in SerialClose()
710 OsalMutexLock(&port->acm->readLock); in SerialClose()
711 UsbSerialFreeFifo(&port->readFifo); in SerialClose()
712 OsalMutexUnlock(&port->acm->readLock); in SerialClose()
714 UsbSerialRelease(port->acm); in SerialClose()
719 static int32_t SerialWrite(struct SerialDevice *port, struct HdfSBuf *data) in SerialWrite() argument
727 if (port == NULL) { in SerialWrite()
731 acm = port->acm; in SerialWrite()
794 static int32_t SerialWriteSync(const struct SerialDevice *port, const struct HdfSBuf *data) in SerialWriteSync() argument
802 if (port == NULL) { in SerialWriteSync()
806 acm = port->acm; in SerialWriteSync()
849 static int32_t UsbSerialReadSync(const struct SerialDevice *port, const struct HdfSBuf *reply) in UsbSerialReadSync() argument
853 struct AcmDevice *acm = port->acm; in UsbSerialReadSync()
905 static int32_t SerialAddOrRemoveInterface(int32_t cmd, const struct SerialDevice *port, const struc… in SerialAddOrRemoveInterface() argument
908 (void)port; in SerialAddOrRemoveInterface()
918 struct SerialDevice *port = NULL; in UsbSerialDeviceDispatch() local
936 port = acm->port; in UsbSerialDeviceDispatch()
937 if (port == NULL) { in UsbSerialDeviceDispatch()
942 return SerialOpen(port, data); in UsbSerialDeviceDispatch()
944 return SerialClose(port, data); in UsbSerialDeviceDispatch()
946 return SerialWrite(port, data); in UsbSerialDeviceDispatch()
948 return UsbSerialRead(port, reply); in UsbSerialDeviceDispatch()
950 return SerialGetBaudrate(port, reply); in UsbSerialDeviceDispatch()
952 return SerialSetBaudrate(port, data); in UsbSerialDeviceDispatch()
954 return SerialWriteSync(port, data); in UsbSerialDeviceDispatch()
956 return UsbSerialReadSync(port, reply); in UsbSerialDeviceDispatch()
959 return SerialAddOrRemoveInterface(cmd, port, data); in UsbSerialDeviceDispatch()
1124 if (acm == NULL || acm->port == NULL) { in AcmReadBulkCallback()
1138 if (DataFifoIsFull(&acm->port->readFifo)) { in AcmReadBulkCallback()
1139 DataFifoSkip(&acm->port->readFifo, size); in AcmReadBulkCallback()
1141 uint32_t count = DataFifoWrite(&acm->port->readFifo, data, size); in AcmReadBulkCallback()