garmin_data_p 170 drivers/usb/serial/garmin_gps.c static int gsp_next_packet(struct garmin_data *garmin_data_p); garmin_data_p 257 drivers/usb/serial/garmin_gps.c static int pkt_add(struct garmin_data *garmin_data_p, garmin_data_p 275 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 276 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_QUEUING; garmin_data_p 277 drivers/usb/serial/garmin_gps.c result = list_empty(&garmin_data_p->pktlist); garmin_data_p 278 drivers/usb/serial/garmin_gps.c pkt->seq = garmin_data_p->seq_counter++; garmin_data_p 279 drivers/usb/serial/garmin_gps.c list_add_tail(&pkt->list, &garmin_data_p->pktlist); garmin_data_p 280 drivers/usb/serial/garmin_gps.c state = garmin_data_p->state; garmin_data_p 281 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 283 drivers/usb/serial/garmin_gps.c dev_dbg(&garmin_data_p->port->dev, garmin_data_p 290 drivers/usb/serial/garmin_gps.c gsp_next_packet(garmin_data_p); garmin_data_p 297 drivers/usb/serial/garmin_gps.c static struct garmin_packet *pkt_pop(struct garmin_data *garmin_data_p) garmin_data_p 302 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 303 drivers/usb/serial/garmin_gps.c if (!list_empty(&garmin_data_p->pktlist)) { garmin_data_p 304 drivers/usb/serial/garmin_gps.c result = (struct garmin_packet *)garmin_data_p->pktlist.next; garmin_data_p 307 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 313 drivers/usb/serial/garmin_gps.c static void pkt_clear(struct garmin_data *garmin_data_p) garmin_data_p 318 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 319 drivers/usb/serial/garmin_gps.c while (!list_empty(&garmin_data_p->pktlist)) { garmin_data_p 320 drivers/usb/serial/garmin_gps.c result = (struct garmin_packet *)garmin_data_p->pktlist.next; garmin_data_p 324 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 333 drivers/usb/serial/garmin_gps.c static int gsp_send_ack(struct garmin_data *garmin_data_p, __u8 pkt_id) garmin_data_p 340 drivers/usb/serial/garmin_gps.c dev_dbg(&garmin_data_p->port->dev, "%s - pkt-id: 0x%X.\n", __func__, garmin_data_p 363 drivers/usb/serial/garmin_gps.c send_to_tty(garmin_data_p->port, pkt, l); garmin_data_p 379 drivers/usb/serial/garmin_gps.c static int gsp_rec_packet(struct garmin_data *garmin_data_p, int count) garmin_data_p 381 drivers/usb/serial/garmin_gps.c struct device *dev = &garmin_data_p->port->dev; garmin_data_p 383 drivers/usb/serial/garmin_gps.c const __u8 *recpkt = garmin_data_p->inbuffer+GSP_INITIAL_OFFSET; garmin_data_p 384 drivers/usb/serial/garmin_gps.c __le32 *usbdata = (__le32 *) garmin_data_p->inbuffer; garmin_data_p 390 drivers/usb/serial/garmin_gps.c usb_serial_debug_data(&garmin_data_p->port->dev, __func__, garmin_data_p 424 drivers/usb/serial/garmin_gps.c garmin_write_bulk(garmin_data_p->port, garmin_data_p->inbuffer, garmin_data_p 429 drivers/usb/serial/garmin_gps.c if (isAbortTrfCmnd(garmin_data_p->inbuffer)) { garmin_data_p 430 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 431 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_DROP_DATA; garmin_data_p 432 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 433 drivers/usb/serial/garmin_gps.c pkt_clear(garmin_data_p); garmin_data_p 459 drivers/usb/serial/garmin_gps.c static int gsp_receive(struct garmin_data *garmin_data_p, garmin_data_p 462 drivers/usb/serial/garmin_gps.c struct device *dev = &garmin_data_p->port->dev; garmin_data_p 476 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 477 drivers/usb/serial/garmin_gps.c dest = garmin_data_p->inbuffer; garmin_data_p 478 drivers/usb/serial/garmin_gps.c size = garmin_data_p->insize; garmin_data_p 479 drivers/usb/serial/garmin_gps.c dleSeen = garmin_data_p->flags & FLAGS_GSP_DLESEEN; garmin_data_p 480 drivers/usb/serial/garmin_gps.c skip = garmin_data_p->flags & FLAGS_GSP_SKIP; garmin_data_p 481 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 520 drivers/usb/serial/garmin_gps.c gsp_rec_packet(garmin_data_p, size); garmin_data_p 547 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 549 drivers/usb/serial/garmin_gps.c garmin_data_p->insize = size; garmin_data_p 553 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_GSP_SKIP; garmin_data_p 555 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= ~FLAGS_GSP_SKIP; garmin_data_p 558 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_GSP_DLESEEN; garmin_data_p 560 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= ~FLAGS_GSP_DLESEEN; garmin_data_p 562 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 565 drivers/usb/serial/garmin_gps.c if (gsp_next_packet(garmin_data_p) > 0) garmin_data_p 566 drivers/usb/serial/garmin_gps.c garmin_data_p->state = STATE_ACTIVE; garmin_data_p 568 drivers/usb/serial/garmin_gps.c garmin_data_p->state = STATE_GSP_WAIT_DATA; garmin_data_p 582 drivers/usb/serial/garmin_gps.c static int gsp_send(struct garmin_data *garmin_data_p, garmin_data_p 585 drivers/usb/serial/garmin_gps.c struct device *dev = &garmin_data_p->port->dev; garmin_data_p 595 drivers/usb/serial/garmin_gps.c garmin_data_p->state, count); garmin_data_p 597 drivers/usb/serial/garmin_gps.c k = garmin_data_p->outsize; garmin_data_p 600 drivers/usb/serial/garmin_gps.c garmin_data_p->outsize = 0; garmin_data_p 604 drivers/usb/serial/garmin_gps.c memcpy(garmin_data_p->outbuffer+k, buf, count); garmin_data_p 606 drivers/usb/serial/garmin_gps.c garmin_data_p->outsize = k; garmin_data_p 609 drivers/usb/serial/garmin_gps.c pktid = getPacketId(garmin_data_p->outbuffer); garmin_data_p 610 drivers/usb/serial/garmin_gps.c datalen = getDataLength(garmin_data_p->outbuffer); garmin_data_p 622 drivers/usb/serial/garmin_gps.c usb_serial_debug_data(&garmin_data_p->port->dev, __func__, k, garmin_data_p 623 drivers/usb/serial/garmin_gps.c garmin_data_p->outbuffer); garmin_data_p 625 drivers/usb/serial/garmin_gps.c garmin_data_p->outsize = 0; garmin_data_p 627 drivers/usb/serial/garmin_gps.c if (getLayerId(garmin_data_p->outbuffer) != GARMIN_LAYERID_APPL) { garmin_data_p 629 drivers/usb/serial/garmin_gps.c getLayerId(garmin_data_p->outbuffer)); garmin_data_p 646 drivers/usb/serial/garmin_gps.c src = garmin_data_p->outbuffer+GARMIN_PKTHDR_LENGTH; garmin_data_p 652 drivers/usb/serial/garmin_gps.c src = garmin_data_p->outbuffer+GARMIN_PKTHDR_LENGTH; garmin_data_p 656 drivers/usb/serial/garmin_gps.c dst = garmin_data_p->outbuffer+GPS_OUT_BUFSIZ-datalen; garmin_data_p 661 drivers/usb/serial/garmin_gps.c dst = garmin_data_p->outbuffer; garmin_data_p 686 drivers/usb/serial/garmin_gps.c i = dst-garmin_data_p->outbuffer; garmin_data_p 688 drivers/usb/serial/garmin_gps.c send_to_tty(garmin_data_p->port, garmin_data_p->outbuffer, i); garmin_data_p 690 drivers/usb/serial/garmin_gps.c garmin_data_p->pkt_id = pktid; garmin_data_p 691 drivers/usb/serial/garmin_gps.c garmin_data_p->state = STATE_WAIT_TTY_ACK; garmin_data_p 700 drivers/usb/serial/garmin_gps.c static int gsp_next_packet(struct garmin_data *garmin_data_p) garmin_data_p 705 drivers/usb/serial/garmin_gps.c while ((pkt = pkt_pop(garmin_data_p)) != NULL) { garmin_data_p 706 drivers/usb/serial/garmin_gps.c dev_dbg(&garmin_data_p->port->dev, "%s - next pkt: %d\n", __func__, pkt->seq); garmin_data_p 707 drivers/usb/serial/garmin_gps.c result = gsp_send(garmin_data_p, pkt->data, pkt->size); garmin_data_p 732 drivers/usb/serial/garmin_gps.c static int nat_receive(struct garmin_data *garmin_data_p, garmin_data_p 743 drivers/usb/serial/garmin_gps.c if (garmin_data_p->insize >= GARMIN_PKTHDR_LENGTH) garmin_data_p 745 drivers/usb/serial/garmin_gps.c +getDataLength(garmin_data_p->inbuffer); garmin_data_p 752 drivers/usb/serial/garmin_gps.c dev_dbg(&garmin_data_p->port->dev, garmin_data_p 755 drivers/usb/serial/garmin_gps.c garmin_data_p->insize = 0; garmin_data_p 759 drivers/usb/serial/garmin_gps.c len -= garmin_data_p->insize; garmin_data_p 763 drivers/usb/serial/garmin_gps.c dest = garmin_data_p->inbuffer garmin_data_p 764 drivers/usb/serial/garmin_gps.c + garmin_data_p->insize; garmin_data_p 766 drivers/usb/serial/garmin_gps.c garmin_data_p->insize += len; garmin_data_p 772 drivers/usb/serial/garmin_gps.c if (garmin_data_p->insize >= GARMIN_PKTHDR_LENGTH) { garmin_data_p 774 drivers/usb/serial/garmin_gps.c getDataLength(garmin_data_p->inbuffer); garmin_data_p 775 drivers/usb/serial/garmin_gps.c if (garmin_data_p->insize >= len) { garmin_data_p 776 drivers/usb/serial/garmin_gps.c garmin_write_bulk(garmin_data_p->port, garmin_data_p 777 drivers/usb/serial/garmin_gps.c garmin_data_p->inbuffer, garmin_data_p 779 drivers/usb/serial/garmin_gps.c garmin_data_p->insize = 0; garmin_data_p 783 drivers/usb/serial/garmin_gps.c if (isAbortTrfCmnd(garmin_data_p->inbuffer)) { garmin_data_p 784 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, garmin_data_p 786 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_DROP_DATA; garmin_data_p 788 drivers/usb/serial/garmin_gps.c &garmin_data_p->lock, flags); garmin_data_p 789 drivers/usb/serial/garmin_gps.c pkt_clear(garmin_data_p); garmin_data_p 804 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 805 drivers/usb/serial/garmin_gps.c __le32 *pkt = (__le32 *)garmin_data_p->privpkt; garmin_data_p 811 drivers/usb/serial/garmin_gps.c pkt[4] = __cpu_to_le32(garmin_data_p->mode); garmin_data_p 812 drivers/usb/serial/garmin_gps.c pkt[5] = __cpu_to_le32(garmin_data_p->serial_num); garmin_data_p 826 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 828 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 829 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= ~(CLEAR_HALT_REQUIRED); garmin_data_p 830 drivers/usb/serial/garmin_gps.c garmin_data_p->state = STATE_RESET; garmin_data_p 831 drivers/usb/serial/garmin_gps.c garmin_data_p->serial_num = 0; garmin_data_p 832 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 848 drivers/usb/serial/garmin_gps.c static int garmin_clear(struct garmin_data *garmin_data_p) garmin_data_p 853 drivers/usb/serial/garmin_gps.c pkt_clear(garmin_data_p); garmin_data_p 855 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 856 drivers/usb/serial/garmin_gps.c garmin_data_p->insize = 0; garmin_data_p 857 drivers/usb/serial/garmin_gps.c garmin_data_p->outsize = 0; garmin_data_p 858 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 866 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 884 drivers/usb/serial/garmin_gps.c garmin_data_p->state = STATE_ACTIVE; garmin_data_p 896 drivers/usb/serial/garmin_gps.c usb_kill_anchored_urbs(&garmin_data_p->write_urbs); garmin_data_p 908 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 910 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 911 drivers/usb/serial/garmin_gps.c garmin_data_p->mode = initial_mode; garmin_data_p 912 drivers/usb/serial/garmin_gps.c garmin_data_p->count = 0; garmin_data_p 913 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= FLAGS_SESSION_REPLY1_SEEN; garmin_data_p 914 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 919 drivers/usb/serial/garmin_gps.c if (garmin_data_p->state == STATE_RESET) garmin_data_p 922 drivers/usb/serial/garmin_gps.c garmin_data_p->state = STATE_ACTIVE; garmin_data_p 929 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 932 drivers/usb/serial/garmin_gps.c __func__, garmin_data_p->mode, garmin_data_p->state, garmin_data_p 933 drivers/usb/serial/garmin_gps.c garmin_data_p->flags); garmin_data_p 935 drivers/usb/serial/garmin_gps.c garmin_clear(garmin_data_p); garmin_data_p 939 drivers/usb/serial/garmin_gps.c usb_kill_anchored_urbs(&garmin_data_p->write_urbs); garmin_data_p 942 drivers/usb/serial/garmin_gps.c if (garmin_data_p->state != STATE_RESET) garmin_data_p 943 drivers/usb/serial/garmin_gps.c garmin_data_p->state = STATE_DISCONNECTED; garmin_data_p 952 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = garmin_data_p 957 drivers/usb/serial/garmin_gps.c if (garmin_data_p->mode == MODE_GARMIN_SERIAL) { garmin_data_p 958 drivers/usb/serial/garmin_gps.c gsp_send_ack(garmin_data_p, garmin_data_p 979 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 984 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 985 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= ~FLAGS_DROP_DATA; garmin_data_p 986 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 1012 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 1013 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= APP_REQ_SEEN; garmin_data_p 1014 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 1016 drivers/usb/serial/garmin_gps.c if (garmin_data_p->mode == MODE_GARMIN_SERIAL) { garmin_data_p 1017 drivers/usb/serial/garmin_gps.c pkt_clear(garmin_data_p); garmin_data_p 1018 drivers/usb/serial/garmin_gps.c garmin_data_p->state = STATE_GSP_WAIT_DATA; garmin_data_p 1023 drivers/usb/serial/garmin_gps.c usb_anchor_urb(urb, &garmin_data_p->write_urbs); garmin_data_p 1046 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 1047 drivers/usb/serial/garmin_gps.c __le32 *privpkt = (__le32 *)garmin_data_p->privpkt; garmin_data_p 1051 drivers/usb/serial/garmin_gps.c if (garmin_data_p->state == STATE_RESET) garmin_data_p 1060 drivers/usb/serial/garmin_gps.c memcpy(garmin_data_p->privpkt, buf, len); garmin_data_p 1062 drivers/usb/serial/garmin_gps.c pktsiz = getDataLength(garmin_data_p->privpkt); garmin_data_p 1063 drivers/usb/serial/garmin_gps.c pktid = getPacketId(garmin_data_p->privpkt); garmin_data_p 1066 drivers/usb/serial/garmin_gps.c getLayerId(garmin_data_p->privpkt) == garmin_data_p 1073 drivers/usb/serial/garmin_gps.c garmin_clear(garmin_data_p); garmin_data_p 1079 drivers/usb/serial/garmin_gps.c garmin_data_p->mode = __le32_to_cpu(privpkt[3]); garmin_data_p 1081 drivers/usb/serial/garmin_gps.c __func__, garmin_data_p->mode); garmin_data_p 1098 drivers/usb/serial/garmin_gps.c garmin_data_p->mode); garmin_data_p 1105 drivers/usb/serial/garmin_gps.c if (garmin_data_p->mode == MODE_GARMIN_SERIAL) { garmin_data_p 1106 drivers/usb/serial/garmin_gps.c return gsp_receive(garmin_data_p, buf, count); garmin_data_p 1108 drivers/usb/serial/garmin_gps.c return nat_receive(garmin_data_p, buf, count); garmin_data_p 1119 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 1120 drivers/usb/serial/garmin_gps.c return GPS_OUT_BUFSIZ-garmin_data_p->outsize; garmin_data_p 1124 drivers/usb/serial/garmin_gps.c static void garmin_read_process(struct garmin_data *garmin_data_p, garmin_data_p 1130 drivers/usb/serial/garmin_gps.c if (garmin_data_p->flags & FLAGS_DROP_DATA) { garmin_data_p 1132 drivers/usb/serial/garmin_gps.c dev_dbg(&garmin_data_p->port->dev, "%s - pkt dropped\n", __func__); garmin_data_p 1133 drivers/usb/serial/garmin_gps.c } else if (garmin_data_p->state != STATE_DISCONNECTED && garmin_data_p 1134 drivers/usb/serial/garmin_gps.c garmin_data_p->state != STATE_RESET) { garmin_data_p 1139 drivers/usb/serial/garmin_gps.c if (garmin_data_p->flags & FLAGS_QUEUING) { garmin_data_p 1140 drivers/usb/serial/garmin_gps.c pkt_add(garmin_data_p, data, data_length); garmin_data_p 1144 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 1145 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= APP_RESP_SEEN; garmin_data_p 1146 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 1148 drivers/usb/serial/garmin_gps.c if (garmin_data_p->mode == MODE_GARMIN_SERIAL) { garmin_data_p 1149 drivers/usb/serial/garmin_gps.c pkt_add(garmin_data_p, data, data_length); garmin_data_p 1151 drivers/usb/serial/garmin_gps.c send_to_tty(garmin_data_p->port, data, garmin_data_p 1164 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 1177 drivers/usb/serial/garmin_gps.c garmin_read_process(garmin_data_p, data, urb->actual_length, 1); garmin_data_p 1180 drivers/usb/serial/garmin_gps.c (garmin_data_p->flags & FLAGS_BULK_IN_RESTART) != 0) { garmin_data_p 1181 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 1182 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= ~FLAGS_BULK_IN_RESTART; garmin_data_p 1183 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 1191 drivers/usb/serial/garmin_gps.c if ((garmin_data_p->flags & FLAGS_THROTTLED) == 0) { garmin_data_p 1200 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 1201 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= ~FLAGS_BULK_IN_ACTIVE; garmin_data_p 1202 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 1212 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 1242 drivers/usb/serial/garmin_gps.c if ((garmin_data_p->flags & FLAGS_BULK_IN_ACTIVE) == 0) { garmin_data_p 1251 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 1252 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_BULK_IN_ACTIVE; garmin_data_p 1253 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, garmin_data_p 1258 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 1259 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_BULK_IN_RESTART; garmin_data_p 1260 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 1267 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 1268 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_SESSION_REPLY1_SEEN; garmin_data_p 1269 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 1272 drivers/usb/serial/garmin_gps.c garmin_data_p->serial_num = __le32_to_cpup( garmin_data_p 1276 drivers/usb/serial/garmin_gps.c __func__, garmin_data_p->serial_num); garmin_data_p 1279 drivers/usb/serial/garmin_gps.c garmin_read_process(garmin_data_p, data, urb->actual_length, 0); garmin_data_p 1294 drivers/usb/serial/garmin_gps.c static int garmin_flush_queue(struct garmin_data *garmin_data_p) garmin_data_p 1299 drivers/usb/serial/garmin_gps.c if ((garmin_data_p->flags & FLAGS_THROTTLED) == 0) { garmin_data_p 1300 drivers/usb/serial/garmin_gps.c pkt = pkt_pop(garmin_data_p); garmin_data_p 1302 drivers/usb/serial/garmin_gps.c send_to_tty(garmin_data_p->port, pkt->data, pkt->size); garmin_data_p 1304 drivers/usb/serial/garmin_gps.c mod_timer(&garmin_data_p->timer, (1)+jiffies); garmin_data_p 1307 drivers/usb/serial/garmin_gps.c spin_lock_irqsave(&garmin_data_p->lock, flags); garmin_data_p 1308 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= ~FLAGS_QUEUING; garmin_data_p 1309 drivers/usb/serial/garmin_gps.c spin_unlock_irqrestore(&garmin_data_p->lock, flags); garmin_data_p 1319 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 1323 drivers/usb/serial/garmin_gps.c spin_lock_irq(&garmin_data_p->lock); garmin_data_p 1324 drivers/usb/serial/garmin_gps.c garmin_data_p->flags |= FLAGS_QUEUING|FLAGS_THROTTLED; garmin_data_p 1325 drivers/usb/serial/garmin_gps.c spin_unlock_irq(&garmin_data_p->lock); garmin_data_p 1332 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 1335 drivers/usb/serial/garmin_gps.c spin_lock_irq(&garmin_data_p->lock); garmin_data_p 1336 drivers/usb/serial/garmin_gps.c garmin_data_p->flags &= ~FLAGS_THROTTLED; garmin_data_p 1337 drivers/usb/serial/garmin_gps.c spin_unlock_irq(&garmin_data_p->lock); garmin_data_p 1341 drivers/usb/serial/garmin_gps.c if (garmin_data_p->mode == MODE_NATIVE) garmin_data_p 1342 drivers/usb/serial/garmin_gps.c garmin_flush_queue(garmin_data_p); garmin_data_p 1344 drivers/usb/serial/garmin_gps.c if ((garmin_data_p->flags & FLAGS_BULK_IN_ACTIVE) != 0) { garmin_data_p 1360 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = from_timer(garmin_data_p, t, timer); garmin_data_p 1363 drivers/usb/serial/garmin_gps.c if (garmin_data_p->mode == MODE_NATIVE) garmin_data_p 1364 drivers/usb/serial/garmin_gps.c if (garmin_data_p->flags & FLAGS_QUEUING) garmin_data_p 1365 drivers/usb/serial/garmin_gps.c garmin_flush_queue(garmin_data_p); garmin_data_p 1373 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p; garmin_data_p 1375 drivers/usb/serial/garmin_gps.c garmin_data_p = kzalloc(sizeof(struct garmin_data), GFP_KERNEL); garmin_data_p 1376 drivers/usb/serial/garmin_gps.c if (!garmin_data_p) garmin_data_p 1379 drivers/usb/serial/garmin_gps.c timer_setup(&garmin_data_p->timer, timeout_handler, 0); garmin_data_p 1380 drivers/usb/serial/garmin_gps.c spin_lock_init(&garmin_data_p->lock); garmin_data_p 1381 drivers/usb/serial/garmin_gps.c INIT_LIST_HEAD(&garmin_data_p->pktlist); garmin_data_p 1382 drivers/usb/serial/garmin_gps.c garmin_data_p->port = port; garmin_data_p 1383 drivers/usb/serial/garmin_gps.c garmin_data_p->state = 0; garmin_data_p 1384 drivers/usb/serial/garmin_gps.c garmin_data_p->flags = 0; garmin_data_p 1385 drivers/usb/serial/garmin_gps.c garmin_data_p->count = 0; garmin_data_p 1386 drivers/usb/serial/garmin_gps.c init_usb_anchor(&garmin_data_p->write_urbs); garmin_data_p 1387 drivers/usb/serial/garmin_gps.c usb_set_serial_port_data(port, garmin_data_p); garmin_data_p 1395 drivers/usb/serial/garmin_gps.c kfree(garmin_data_p); garmin_data_p 1403 drivers/usb/serial/garmin_gps.c struct garmin_data *garmin_data_p = usb_get_serial_port_data(port); garmin_data_p 1405 drivers/usb/serial/garmin_gps.c usb_kill_anchored_urbs(&garmin_data_p->write_urbs); garmin_data_p 1407 drivers/usb/serial/garmin_gps.c del_timer_sync(&garmin_data_p->timer); garmin_data_p 1408 drivers/usb/serial/garmin_gps.c kfree(garmin_data_p);