From: David Brownell <david-b@pacbell.net>
To: Amit Gupta <amit_jobs05@inbox.com>
Cc: linux-omap-open-source@linux.omap.com
Subject: Re: FSUSB Port 0 in OMAP2430 SDP
Date: Sun, 19 Aug 2007 15:21:31 -0700 [thread overview]
Message-ID: <200708191521.31286.david-b@pacbell.net> (raw)
In-Reply-To: <78d6ed630708181310l2b72418cu6914b29eb760e73@mail.gmail.com>
On Saturday 18 August 2007, Amit Gupta wrote:
> Hi David
>
> Thanks for the prompt reply.
>
> I already have ISP-1301 data sheet available with me. Its available
> online at the following link: -
> http://balloonboard.org/hardware/300/ds/ISP1301.pdf
>
> Now as per the OTG Control Register (address 0x06/0x07), there is an
> ID_PULLDOWN bit and the Vbus_DRV. Now I tried with the following
> instruction: -
>
> I2Cwrite(0x06,0x30) ;// Setting the Vbus_drv and ID_pulldown
> I2Cread(0x06)
>
> And when I read back I2Cread(0x06) after the above instruction, I got
> the value as 0x19. So it did not set the Vbus_drv bit. Kindly justify
> this behavior.
Something's not working the way you expect. :)
Why don't you try reading all the readable registers and making
sure their values make sense. Are you talking to the isp1301, even?
Maybe your I2Cwrite()/I2Cread() routines are broken... the driver
certainly doesn't have such routines, and neither does Linux.
You *ARE* working in Linux, right?
> >>Undo your muxing of the transceiver linkup pins
> >>as GPIOs. Make sure they're set up properly (4 wires? 6? etc) and
> >>that the isp1301_omap driver handles that mode. (ISTR it didn't
> >>handle all possible modes as originally written; no need to.)
>
> I have found that ISP needs to be configured in three-pin DAT/SE0
> bi-directional mode, so I have done pin/mux configuration for
> Usb0_dat, Usb0_se0 and Usb0_txen. I am not sure whether I need to do
> pin configuration for usb0_puen?
You're missing the point of my suggestion: make sure that you've
got communication with the transceiver working right, before you
work on getting the OMAP to talk to the transceiver.
If I understand your question, you're asking whether the peripheral
mode's D+ pullup should be handled by OMAP or by the transceiver.
Considering the transceiver has individual control of pullups and
pulldowns on both D+ and D-, and that the hardware is set up to
handle both peripheral and host modes, it should be evident why
the OMAP leaves that issue up to the transceiver...
> This is all that needs to be done at
> the OMAP done along with the host controller configuration, which is
> already sending the SOF (after configuration like setting OHCI, clock,
> interrupts, syscon registers). I don't need to set any OTG_CTRL
> registers.
>
> I am not using powered hub, but still in the absence of that I think
> there should be certain interrupt on connection of device.
Like I said, the whole point of my suggestion is to sort out
(first) whether the transceiver setup is working right, apart from
the USB data signaling, and then (second) whether the data signaling
is working right.
So far you haven't done enough of the first part to know whether
it's reasonable to expect such an IRQ.
> >>The ID pin is simple: a Mini-A connector grounds it, a Mini-B one
> >>lets it float. So it connects to a weak pull-up, and the transceiver
> >>will report its state as either grounded (so the initial OTG state
> >>is A_IDLE and it should enumerate in the host role) or high (so the
> >>initial OTG state is B_IDLE and it should enumerate in peripheral >>role).
> >>There's a bit in one of the OMAP OTG controller registers that reports
> >>the ID pin. It gets read from the transceiver ... *OR* it can be
> >>forced to either value, if the system doesn't pay attention to OTG
> >>and always runs as host (or as peripheral).
>
> Mini A and Mini B difference is clear,
> As far as I can understand from the above statement is that role of
> transceiver is just to transmit and receive the signals to the
> host/function controller at the OMAP end,
"Just" do that? I don't see how I ever said that. Even in non-OTG
modes it has to do a lot more than that during connection setup.
Plus there's entry/exit to transceiver lowpower modes...
Your basic problem report is that it doesn't even get to connection
setup. This indicates that the FIRST problem you need to get past
relates to the transceiver setup.
- Dave
> but rather it does lot more
> in case of OTG (OTG controller) since it gives info of different
> voltage level changes which makes OTG controller perform intelligent
> decision (like A & B devices State). Kindly confirm.
>
> Thanks & Regards
>
> Amit
>
>
>
>
>
>
>
>
>
>
prev parent reply other threads:[~2007-08-19 22:21 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-04 19:37 FSUSB Port 0 in OAMP2430 SDP Amit Gupta
2007-08-06 0:18 ` Felipe Balbi
2007-08-06 18:54 ` Amit Gupta
2007-08-06 19:11 ` Felipe Balbi
2007-08-06 19:29 ` Woodruff, Richard
2007-08-06 20:10 ` Amit Gupta
2007-08-08 20:28 ` Fwd: " Amit Gupta
2007-08-08 20:39 ` Felipe Balbi
2007-08-08 21:07 ` Amit Gupta
2007-08-09 11:19 ` Felipe Balbi
2007-08-09 18:36 ` Amit Gupta
2007-08-18 0:54 ` David Brownell
2007-08-18 18:16 ` Amit Gupta
2007-08-18 18:57 ` David Brownell
2007-08-18 20:10 ` Amit Gupta
2007-08-19 22:21 ` David Brownell [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200708191521.31286.david-b@pacbell.net \
--to=david-b@pacbell.net \
--cc=amit_jobs05@inbox.com \
--cc=linux-omap-open-source@linux.omap.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox