Example #1
0
static void acm_enumerate(USBConfiguration *conf)
{
	acm_is_ready = 0;

	USBInterface *acm_if = usb_add_interface(conf, 0, 0, 0x0a, 0, 0, usb_add_string_descriptor("IF0"));
	usb_add_endpoint(acm_if, ACM_EP_SEND, USBIn, USBBulk);
	usb_add_endpoint(acm_if, ACM_EP_RECV, USBOut, USBBulk);

	if(!acm_send_buffer)
		acm_send_buffer = memalign(DMA_ALIGN, ACM_BUFFER_SIZE);

	if(!acm_recv_buffer)
		acm_recv_buffer = memalign(DMA_ALIGN, ACM_BUFFER_SIZE);
}
Example #2
0
static void enumerateHandler(USBInterface* interface) {
	usb_add_endpoint(interface, 1, USBIn, USBBulk);
	usb_add_endpoint(interface, 2, USBOut, USBBulk);
	usb_add_endpoint(interface, 3, USBIn, USBInterrupt);
	usb_add_endpoint(interface, 4, USBOut, USBInterrupt);

	if(!controlSendBuffer)
		controlSendBuffer = memalign(DMA_ALIGN, 512);

	if(!controlRecvBuffer)
		controlRecvBuffer = memalign(DMA_ALIGN, 512);

	if(!dataSendBuffer)
		dataSendBuffer = memalign(DMA_ALIGN, 512);

	if(!dataRecvBuffer)
		dataRecvBuffer = commandRecvBuffer = memalign(DMA_ALIGN, 512);
}