-/*
- * Use the first port only by default. Override with hmc_mode option.
- *
- * NOTE: Many OMAP-1510 Innovators supposedly have bad wiring for the USB ports
- * 1 & 2, so only port 0 will work. To use the OHCI on the first port, use
- * the Innovator USB client cable with a client-to-client connector and modify
- * either the cable or the hub to feed 5V VBUS back to Innovator. VBUS should
- * be the red lead in the cable.
- *
- * To mount USB hard disk as root, see the patch for do_mounts.c that tries
- * remounting the root, and use root=0801 if your root is on sda1. Does not
- * work with devfs.
- */
-static int default_hmc_mode = 16;
-static int hmc_mode = 1234;
-
-/*
- * Set the USB host pin multiplexing and the selected HMC mode
- */
-static int omap_usb_set_hmc_mode(int hmc_mode)
-{
- unsigned int val;
-
- switch (hmc_mode) {
- case 0:
- /* 0: function, 1: disabled, 2: disabled */
- omap_cfg_reg(W4_USB_PUEN);
- omap_cfg_reg(R18_1510_USB_GPIO0);
- break;
- case 4:
- /* 0: function 1: host 2: host */
- omap_cfg_reg(usb1_speed);
- omap_cfg_reg(usb1_susp);
- omap_cfg_reg(usb1_seo);
- omap_cfg_reg(usb1_txen);
- omap_cfg_reg(usb1_txd);
- omap_cfg_reg(usb1_vp);
- omap_cfg_reg(usb1_vm);
- omap_cfg_reg(usb1_rcv);
- omap_cfg_reg(usb2_susp);
- omap_cfg_reg(usb2_seo);
- omap_cfg_reg(usb2_txen);
- omap_cfg_reg(usb2_txd);
- omap_cfg_reg(usb2_vp);
- omap_cfg_reg(usb2_vm);
- omap_cfg_reg(usb2_rcv);
- break;
- case 16:
- /* 0: host, 1: disabled, 2: disabled */
- omap_cfg_reg(W9_USB0_TXEN);
- omap_cfg_reg(AA9_USB0_VP);
- omap_cfg_reg(Y5_USB0_RCV);
- omap_cfg_reg(R9_USB0_VM);
- omap_cfg_reg(V6_USB0_TXD);
- omap_cfg_reg(W5_USB0_SE0);
- break;
- default:
- printk("Unknown USB host configuration: %i\n", hmc_mode);
- return -ENODEV;
- }