aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/usb/musb/musb_core.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
index b7e2d1b09ac1..c4893267b4e2 100644
--- a/drivers/usb/musb/musb_core.c
+++ b/drivers/usb/musb/musb_core.c
@@ -1095,6 +1095,36 @@ static struct fifo_cfg __initdata mode_4_cfg[] = {
1095{ .hw_ep_num = 15, .style = FIFO_RXTX, .maxpacket = 1024, }, 1095{ .hw_ep_num = 15, .style = FIFO_RXTX, .maxpacket = 1024, },
1096}; 1096};
1097 1097
1098/* mode 5 - fits in 8KB */
1099static struct fifo_cfg __initdata mode_5_cfg[] = {
1100{ .hw_ep_num = 1, .style = FIFO_TX, .maxpacket = 512, },
1101{ .hw_ep_num = 1, .style = FIFO_RX, .maxpacket = 512, },
1102{ .hw_ep_num = 2, .style = FIFO_TX, .maxpacket = 512, },
1103{ .hw_ep_num = 2, .style = FIFO_RX, .maxpacket = 512, },
1104{ .hw_ep_num = 3, .style = FIFO_TX, .maxpacket = 512, },
1105{ .hw_ep_num = 3, .style = FIFO_RX, .maxpacket = 512, },
1106{ .hw_ep_num = 4, .style = FIFO_TX, .maxpacket = 512, },
1107{ .hw_ep_num = 4, .style = FIFO_RX, .maxpacket = 512, },
1108{ .hw_ep_num = 5, .style = FIFO_TX, .maxpacket = 512, },
1109{ .hw_ep_num = 5, .style = FIFO_RX, .maxpacket = 512, },
1110{ .hw_ep_num = 6, .style = FIFO_TX, .maxpacket = 32, },
1111{ .hw_ep_num = 6, .style = FIFO_RX, .maxpacket = 32, },
1112{ .hw_ep_num = 7, .style = FIFO_TX, .maxpacket = 32, },
1113{ .hw_ep_num = 7, .style = FIFO_RX, .maxpacket = 32, },
1114{ .hw_ep_num = 8, .style = FIFO_TX, .maxpacket = 32, },
1115{ .hw_ep_num = 8, .style = FIFO_RX, .maxpacket = 32, },
1116{ .hw_ep_num = 9, .style = FIFO_TX, .maxpacket = 32, },
1117{ .hw_ep_num = 9, .style = FIFO_RX, .maxpacket = 32, },
1118{ .hw_ep_num = 10, .style = FIFO_TX, .maxpacket = 32, },
1119{ .hw_ep_num = 10, .style = FIFO_RX, .maxpacket = 32, },
1120{ .hw_ep_num = 11, .style = FIFO_TX, .maxpacket = 32, },
1121{ .hw_ep_num = 11, .style = FIFO_RX, .maxpacket = 32, },
1122{ .hw_ep_num = 12, .style = FIFO_TX, .maxpacket = 32, },
1123{ .hw_ep_num = 12, .style = FIFO_RX, .maxpacket = 32, },
1124{ .hw_ep_num = 13, .style = FIFO_RXTX, .maxpacket = 512, },
1125{ .hw_ep_num = 14, .style = FIFO_RXTX, .maxpacket = 1024, },
1126{ .hw_ep_num = 15, .style = FIFO_RXTX, .maxpacket = 1024, },
1127};
1098 1128
1099/* 1129/*
1100 * configure a fifo; for non-shared endpoints, this may be called 1130 * configure a fifo; for non-shared endpoints, this may be called
@@ -1210,6 +1240,10 @@ static int __init ep_config_from_table(struct musb *musb)
1210 cfg = mode_4_cfg; 1240 cfg = mode_4_cfg;
1211 n = ARRAY_SIZE(mode_4_cfg); 1241 n = ARRAY_SIZE(mode_4_cfg);
1212 break; 1242 break;
1243 case 5:
1244 cfg = mode_5_cfg;
1245 n = ARRAY_SIZE(mode_5_cfg);
1246 break;
1213 } 1247 }
1214 1248
1215 printk(KERN_DEBUG "%s: setup fifo_mode %d\n", 1249 printk(KERN_DEBUG "%s: setup fifo_mode %d\n",