hsep              242 drivers/usb/gadget/udc/s3c-hsudc.c static void s3c_hsudc_complete_request(struct s3c_hsudc_ep *hsep,
hsep              245 drivers/usb/gadget/udc/s3c-hsudc.c 	unsigned int stopped = hsep->stopped;
hsep              246 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc *hsudc = hsep->dev;
hsep              251 drivers/usb/gadget/udc/s3c-hsudc.c 	if (!ep_index(hsep)) {
hsep              253 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->bEndpointAddress &= ~USB_DIR_IN;
hsep              256 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->stopped = 1;
hsep              258 drivers/usb/gadget/udc/s3c-hsudc.c 	usb_gadget_giveback_request(&hsep->ep, &hsreq->req);
hsep              260 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->stopped = stopped;
hsep              268 drivers/usb/gadget/udc/s3c-hsudc.c static void s3c_hsudc_nuke_ep(struct s3c_hsudc_ep *hsep, int status)
hsep              272 drivers/usb/gadget/udc/s3c-hsudc.c 	while (!list_empty(&hsep->queue)) {
hsep              273 drivers/usb/gadget/udc/s3c-hsudc.c 		hsreq = list_entry(hsep->queue.next,
hsep              275 drivers/usb/gadget/udc/s3c-hsudc.c 		s3c_hsudc_complete_request(hsep, hsreq, status);
hsep              288 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep;
hsep              294 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep = &hsudc->ep[epnum];
hsep              295 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->stopped = 1;
hsep              296 drivers/usb/gadget/udc/s3c-hsudc.c 		s3c_hsudc_nuke_ep(hsep, -ESHUTDOWN);
hsep              328 drivers/usb/gadget/udc/s3c-hsudc.c static int s3c_hsudc_write_fifo(struct s3c_hsudc_ep *hsep,
hsep              332 drivers/usb/gadget/udc/s3c-hsudc.c 	u32 max = ep_maxpacket(hsep);
hsep              335 drivers/usb/gadget/udc/s3c-hsudc.c 	void __iomem *fifo = hsep->fifo;
hsep              344 drivers/usb/gadget/udc/s3c-hsudc.c 	writel(length, hsep->dev->regs + S3C_BWCR);
hsep              358 drivers/usb/gadget/udc/s3c-hsudc.c 		s3c_hsudc_complete_request(hsep, hsreq, 0);
hsep              374 drivers/usb/gadget/udc/s3c-hsudc.c static int s3c_hsudc_read_fifo(struct s3c_hsudc_ep *hsep,
hsep              377 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc *hsudc = hsep->dev;
hsep              381 drivers/usb/gadget/udc/s3c-hsudc.c 	void __iomem *fifo = hsep->fifo;
hsep              384 drivers/usb/gadget/udc/s3c-hsudc.c 	offset = (ep_index(hsep)) ? S3C_ESR : S3C_EP0SR;
hsep              397 drivers/usb/gadget/udc/s3c-hsudc.c 	is_short = (rlen < hsep->ep.maxpacket);
hsep              412 drivers/usb/gadget/udc/s3c-hsudc.c 		s3c_hsudc_complete_request(hsep, hsreq, 0);
hsep              429 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep = &hsudc->ep[ep_idx];
hsep              441 drivers/usb/gadget/udc/s3c-hsudc.c 		if (list_empty(&hsep->queue))
hsep              444 drivers/usb/gadget/udc/s3c-hsudc.c 		hsreq = list_entry(hsep->queue.next,
hsep              446 drivers/usb/gadget/udc/s3c-hsudc.c 		if ((s3c_hsudc_write_fifo(hsep, hsreq) == 0) &&
hsep              448 drivers/usb/gadget/udc/s3c-hsudc.c 			s3c_hsudc_write_fifo(hsep, hsreq);
hsep              462 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep = &hsudc->ep[ep_idx];
hsep              478 drivers/usb/gadget/udc/s3c-hsudc.c 		if (list_empty(&hsep->queue))
hsep              481 drivers/usb/gadget/udc/s3c-hsudc.c 		hsreq = list_entry(hsep->queue.next,
hsep              483 drivers/usb/gadget/udc/s3c-hsudc.c 		if (((s3c_hsudc_read_fifo(hsep, hsreq)) == 0) &&
hsep              485 drivers/usb/gadget/udc/s3c-hsudc.c 			s3c_hsudc_read_fifo(hsep, hsreq);
hsep              499 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep = our_ep(_ep);
hsep              500 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc *hsudc = hsep->dev;
hsep              506 drivers/usb/gadget/udc/s3c-hsudc.c 	if (value && ep_is_in(hsep) && !list_empty(&hsep->queue))
hsep              510 drivers/usb/gadget/udc/s3c-hsudc.c 	set_index(hsudc, ep_index(hsep));
hsep              511 drivers/usb/gadget/udc/s3c-hsudc.c 	offset = (ep_index(hsep)) ? S3C_ECR : S3C_EP0CR;
hsep              516 drivers/usb/gadget/udc/s3c-hsudc.c 		if (ep_index(hsep))
hsep              518 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->stopped = 1;
hsep              521 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->stopped = hsep->wedge = 0;
hsep              525 drivers/usb/gadget/udc/s3c-hsudc.c 	if (ep_is_in(hsep) && !list_empty(&hsep->queue) && !value) {
hsep              526 drivers/usb/gadget/udc/s3c-hsudc.c 		hsreq = list_entry(hsep->queue.next,
hsep              529 drivers/usb/gadget/udc/s3c-hsudc.c 			s3c_hsudc_write_fifo(hsep, hsreq);
hsep              543 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep = our_ep(_ep);
hsep              545 drivers/usb/gadget/udc/s3c-hsudc.c 	if (!hsep)
hsep              548 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->wedge = 1;
hsep              561 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep;
hsep              566 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep = &hsudc->ep[ep_num];
hsep              569 drivers/usb/gadget/udc/s3c-hsudc.c 			if (set || !hsep->wedge)
hsep              570 drivers/usb/gadget/udc/s3c-hsudc.c 				s3c_hsudc_set_halt(&hsep->ep, set);
hsep              590 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep;
hsep              605 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep = &hsudc->ep[epnum];
hsep              606 drivers/usb/gadget/udc/s3c-hsudc.c 		reply = cpu_to_le16(hsep->stopped ? 1 : 0);
hsep              627 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep = &hsudc->ep[0];
hsep              631 drivers/usb/gadget/udc/s3c-hsudc.c 	s3c_hsudc_nuke_ep(hsep, -EPROTO);
hsep              635 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->bEndpointAddress |= USB_DIR_IN;
hsep              638 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->bEndpointAddress &= ~USB_DIR_IN;
hsep              670 drivers/usb/gadget/udc/s3c-hsudc.c 			hsep->bEndpointAddress &= ~USB_DIR_IN;
hsep              677 drivers/usb/gadget/udc/s3c-hsudc.c 			s3c_hsudc_set_halt(&hsep->ep, 1);
hsep              679 drivers/usb/gadget/udc/s3c-hsudc.c 			hsep->bEndpointAddress &= ~USB_DIR_IN;
hsep              693 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep = &hsudc->ep[0];
hsep              704 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->stopped = 0;
hsep              706 drivers/usb/gadget/udc/s3c-hsudc.c 		s3c_hsudc_nuke_ep(hsep, -ECONNABORTED);
hsep              708 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->bEndpointAddress &= ~USB_DIR_IN;
hsep              714 drivers/usb/gadget/udc/s3c-hsudc.c 		if (ep_is_in(hsep)) {
hsep              715 drivers/usb/gadget/udc/s3c-hsudc.c 			if (list_empty(&hsep->queue))
hsep              718 drivers/usb/gadget/udc/s3c-hsudc.c 			hsreq = list_entry(hsep->queue.next,
hsep              720 drivers/usb/gadget/udc/s3c-hsudc.c 			s3c_hsudc_write_fifo(hsep, hsreq);
hsep              728 drivers/usb/gadget/udc/s3c-hsudc.c 			if (!ep_is_in(hsep)) {
hsep              729 drivers/usb/gadget/udc/s3c-hsudc.c 				if (list_empty(&hsep->queue))
hsep              731 drivers/usb/gadget/udc/s3c-hsudc.c 				hsreq = list_entry(hsep->queue.next,
hsep              733 drivers/usb/gadget/udc/s3c-hsudc.c 				s3c_hsudc_read_fifo(hsep, hsreq);
hsep              751 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep;
hsep              756 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep = our_ep(_ep);
hsep              759 drivers/usb/gadget/udc/s3c-hsudc.c 		|| hsep->bEndpointAddress != desc->bEndpointAddress
hsep              760 drivers/usb/gadget/udc/s3c-hsudc.c 		|| ep_maxpacket(hsep) < usb_endpoint_maxp(desc))
hsep              764 drivers/usb/gadget/udc/s3c-hsudc.c 		&& usb_endpoint_maxp(desc) != ep_maxpacket(hsep))
hsep              768 drivers/usb/gadget/udc/s3c-hsudc.c 	hsudc = hsep->dev;
hsep              774 drivers/usb/gadget/udc/s3c-hsudc.c 	set_index(hsudc, hsep->bEndpointAddress);
hsep              778 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->stopped = hsep->wedge = 0;
hsep              779 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->ep.desc = desc;
hsep              780 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->ep.maxpacket = usb_endpoint_maxp(desc);
hsep              783 drivers/usb/gadget/udc/s3c-hsudc.c 	__set_bit(ep_index(hsep), hsudc->regs + S3C_EIER);
hsep              798 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep = our_ep(_ep);
hsep              799 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc *hsudc = hsep->dev;
hsep              802 drivers/usb/gadget/udc/s3c-hsudc.c 	if (!_ep || !hsep->ep.desc)
hsep              807 drivers/usb/gadget/udc/s3c-hsudc.c 	set_index(hsudc, hsep->bEndpointAddress);
hsep              808 drivers/usb/gadget/udc/s3c-hsudc.c 	__clear_bit(ep_index(hsep), hsudc->regs + S3C_EIER);
hsep              810 drivers/usb/gadget/udc/s3c-hsudc.c 	s3c_hsudc_nuke_ep(hsep, -ESHUTDOWN);
hsep              812 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->ep.desc = NULL;
hsep              813 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->stopped = 1;
hsep              867 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep;
hsep              878 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep = our_ep(_ep);
hsep              879 drivers/usb/gadget/udc/s3c-hsudc.c 	hsudc = hsep->dev;
hsep              884 drivers/usb/gadget/udc/s3c-hsudc.c 	set_index(hsudc, hsep->bEndpointAddress);
hsep              889 drivers/usb/gadget/udc/s3c-hsudc.c 	if (!ep_index(hsep) && _req->length == 0) {
hsep              891 drivers/usb/gadget/udc/s3c-hsudc.c 		s3c_hsudc_complete_request(hsep, hsreq, 0);
hsep              896 drivers/usb/gadget/udc/s3c-hsudc.c 	if (list_empty(&hsep->queue) && !hsep->stopped) {
hsep              897 drivers/usb/gadget/udc/s3c-hsudc.c 		offset = (ep_index(hsep)) ? S3C_ESR : S3C_EP0SR;
hsep              898 drivers/usb/gadget/udc/s3c-hsudc.c 		if (ep_is_in(hsep)) {
hsep              901 drivers/usb/gadget/udc/s3c-hsudc.c 				(s3c_hsudc_write_fifo(hsep, hsreq) == 1))
hsep              906 drivers/usb/gadget/udc/s3c-hsudc.c 				   && (s3c_hsudc_read_fifo(hsep, hsreq) == 1))
hsep              912 drivers/usb/gadget/udc/s3c-hsudc.c 		list_add_tail(&hsreq->queue, &hsep->queue);
hsep              927 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep = our_ep(_ep);
hsep              928 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc *hsudc = hsep->dev;
hsep              932 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep = our_ep(_ep);
hsep              933 drivers/usb/gadget/udc/s3c-hsudc.c 	if (!_ep || hsep->ep.name == ep0name)
hsep              938 drivers/usb/gadget/udc/s3c-hsudc.c 	list_for_each_entry(hsreq, &hsep->queue, queue) {
hsep              947 drivers/usb/gadget/udc/s3c-hsudc.c 	set_index(hsudc, hsep->bEndpointAddress);
hsep              948 drivers/usb/gadget/udc/s3c-hsudc.c 	s3c_hsudc_complete_request(hsep, hsreq, -ECONNRESET);
hsep              974 drivers/usb/gadget/udc/s3c-hsudc.c 				struct s3c_hsudc_ep *hsep, int epnum)
hsep              982 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->bEndpointAddress = USB_DIR_IN;
hsep              985 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->bEndpointAddress |= epnum;
hsep              987 drivers/usb/gadget/udc/s3c-hsudc.c 		snprintf(hsep->name, sizeof(hsep->name), "ep%d%s", epnum, dir);
hsep              989 drivers/usb/gadget/udc/s3c-hsudc.c 		snprintf(hsep->name, sizeof(hsep->name), "%s", ep0name);
hsep              991 drivers/usb/gadget/udc/s3c-hsudc.c 	INIT_LIST_HEAD(&hsep->queue);
hsep              992 drivers/usb/gadget/udc/s3c-hsudc.c 	INIT_LIST_HEAD(&hsep->ep.ep_list);
hsep              994 drivers/usb/gadget/udc/s3c-hsudc.c 		list_add_tail(&hsep->ep.ep_list, &hsudc->gadget.ep_list);
hsep              996 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->dev = hsudc;
hsep              997 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->ep.name = hsep->name;
hsep              998 drivers/usb/gadget/udc/s3c-hsudc.c 	usb_ep_set_maxpacket_limit(&hsep->ep, epnum ? 512 : 64);
hsep              999 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->ep.ops = &s3c_hsudc_ep_ops;
hsep             1000 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->fifo = hsudc->regs + S3C_BR(epnum);
hsep             1001 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->ep.desc = NULL;
hsep             1002 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->stopped = 0;
hsep             1003 drivers/usb/gadget/udc/s3c-hsudc.c 	hsep->wedge = 0;
hsep             1006 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->ep.caps.type_control = true;
hsep             1007 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->ep.caps.dir_in = true;
hsep             1008 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->ep.caps.dir_out = true;
hsep             1010 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->ep.caps.type_iso = true;
hsep             1011 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->ep.caps.type_bulk = true;
hsep             1012 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->ep.caps.type_int = true;
hsep             1016 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->ep.caps.dir_in = true;
hsep             1018 drivers/usb/gadget/udc/s3c-hsudc.c 		hsep->ep.caps.dir_out = true;
hsep             1021 drivers/usb/gadget/udc/s3c-hsudc.c 	writel(hsep->ep.maxpacket, hsudc->regs + S3C_MPR);
hsep             1069 drivers/usb/gadget/udc/s3c-hsudc.c 	struct s3c_hsudc_ep *hsep;
hsep             1114 drivers/usb/gadget/udc/s3c-hsudc.c 				hsep = &hsudc->ep[ep_idx];
hsep             1115 drivers/usb/gadget/udc/s3c-hsudc.c 				hsep->stopped = 1;
hsep             1116 drivers/usb/gadget/udc/s3c-hsudc.c 				s3c_hsudc_nuke_ep(hsep, -ECONNRESET);
hsep             1133 drivers/usb/gadget/udc/s3c-hsudc.c 			hsep = &hsudc->ep[ep_idx];
hsep             1136 drivers/usb/gadget/udc/s3c-hsudc.c 			if (ep_is_in(hsep))