static inline int drci_rd_reg()

in most_usb.c [139:160]


static inline int drci_rd_reg(struct usb_device *dev, u16 reg, u16 *buf)
{
	int retval;
	__le16 *dma_buf;
	u8 req_type = USB_DIR_IN | USB_TYPE_VENDOR | USB_RECIP_DEVICE;

	dma_buf = kzalloc(sizeof(*dma_buf), GFP_KERNEL);
	if (!dma_buf)
		return -ENOMEM;

	retval = usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
				 DRCI_READ_REQ, req_type,
				 0x0000,
				 reg, dma_buf, sizeof(*dma_buf),
				 USB_CTRL_GET_TIMEOUT);
	*buf = le16_to_cpu(*dma_buf);
	kfree(dma_buf);

	if (retval < 0)
		return retval;
	return 0;
}