From feb9dbdf87036dbf7ff35260b4f0454173aaf5cd Mon Sep 17 00:00:00 2001 From: Tony Lindgren Date: Fri, 27 Oct 2006 22:37:31 +0300 Subject: [PATCH] musb_hdrc: Fix TEST_PACKET again Also allow start sending it with echo T > /proc/driver/musb_hdrc Signed-off-by: Tony Lindgren Signed-off-by: David Brownell --- drivers/usb/musb/musb_procfs.c | 10 ++++++++++ drivers/usb/musb/plat_uds.c | 4 +++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/drivers/usb/musb/musb_procfs.c b/drivers/usb/musb/musb_procfs.c index 4303cfcf52a..9b8994068bc 100644 --- a/drivers/usb/musb/musb_procfs.c +++ b/drivers/usb/musb/musb_procfs.c @@ -626,6 +626,7 @@ done: * E rElinquish bus (OTG) * H request host mode * h cancel host request + * T start sending TEST_PACKET * D set/query the debug level */ static int musb_proc_write(struct file *file, const char __user *buffer, @@ -696,6 +697,14 @@ static int musb_proc_write(struct file *file, const char __user *buffer, } break; + case 'T': + if (pBase) { + musb_load_testpacket(musb); + musb_writeb(pBase, MGC_O_HDRC_TESTMODE, + MGC_M_TEST_PACKET); + } + break; + #if (MUSB_DEBUG>0) /* set/read debug level */ case 'D':{ @@ -733,6 +742,7 @@ static int musb_proc_write(struct file *file, const char __user *buffer, INFO("I/i: hispeed enable/disable\n"); INFO("F: force session start\n"); INFO("H: host mode\n"); + INFO("T: start sending TEST_PACKET\n"); INFO("D: set/read dbug level\n"); break; #endif diff --git a/drivers/usb/musb/plat_uds.c b/drivers/usb/musb/plat_uds.c index 31a513531fe..e02f672113b 100644 --- a/drivers/usb/musb/plat_uds.c +++ b/drivers/usb/musb/plat_uds.c @@ -334,10 +334,12 @@ static const u8 musb_test_packet[53] = { void musb_load_testpacket(struct musb *musb) { + void __iomem *regs = musb->aLocalEnd[0].regs; + MGC_SelectEnd(musb->pRegs, 0); musb_write_fifo(musb->control_ep, sizeof(musb_test_packet), musb_test_packet); - musb_writew(musb->pRegs, MGC_O_HDRC_CSR0, MGC_M_CSR0_TXPKTRDY); + musb_writew(regs, MGC_O_HDRC_CSR0, MGC_M_CSR0_TXPKTRDY); } /*-------------------------------------------------------------------------*/ -- 2.41.1