From: Sanchayan Maity <maitysanchayan@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] Query on the ci_udc driver for USB client implementation
Date: Wed, 05 Nov 2014 15:50:04 +0530 [thread overview]
Message-ID: <5459F9D4.5010507@gmail.com> (raw)
In-Reply-To: <20141104172822.694593e4@amdc2363>
On Tuesday 04 November 2014 09:58 PM, Lukasz Majewski wrote:
> Hi Sanchayan,
>
>> On Tuesday 04 November 2014 10:25 AM, Marek Vasut wrote:
>>> On Monday, November 03, 2014 at 04:46:48 PM, Fabio Estevam wrote:
>>>> On Mon, Nov 3, 2014 at 3:33 AM, Sanchayan Maity
>>>>
>>>> <maitysanchayan@gmail.com> wrote:
>>>>> Hello,
>>>>>
>>>>> Any pointers?
>>>>
>>>> Adding Marek and Stefan on Cc in case they can provide some help.
>>>>
>>>> Regards,
>>>>
>>>> Fabio Estevam
>>>>
>>>>> Thanks & Regards,
>>>>> Sanchayan Maity.
>>>>>
>>>>> On Thursday 30 October 2014 11:14 AM, Sanchayan Maity wrote:
>>>>>> Hello,
>>>>>>
>>>>>> I am currently implementing USB Host and client support for
>>>>>> Freescale Vybrid platform in u-boot. I managed to get the host
>>>>>> implementation working.
>>>>>>
>>>>>> For the host side, usb start calls usb_init(), which in turns
>>>>>> call, usb_lowlevel_init(), from there into the ehic_hcd_init()
>>>>>> of my implementation. So, setting up the necessary clocks and
>>>>>> plls for USB in my implementation and then setting up the
>>>>>> usb_ehci, ehci_hccr and echi_hcor structures was all. The flow
>>>>>> and setup required i was able to trace.
>>>>>>
>>>>>> The USB client part is not clear to me. I was thinking i can use
>>>>>> the ci_udc driver somehow to implement the client part. How can
>>>>>> i use the ci_udc driver to implement client functionality?. From
>>>>>> what i could see, the usb_gadget_driver_register() is suppose to
>>>>>> be the first call. But, i couldn't trace from where this gets
>>>>>> called or the flow and setup is suppose to be. OR Is a separate
>>>>>> client driver required and nothing generic can be used akin to
>>>>>> how it could be done for host?
>>>
>>> See include/configs/sansa_fuze_plus.h , you need the gadget driver
>>> for the function you want to implement , in this case it's ethernet
>>> for example (selected via CONFIG_USB_ETH_CDC ).
>>>
>>> An example of DFU/UMS can be found in
>>> include/configs/exynos4-common.h and to activate those, you need to
>>> use the 'dfu' or 'ums' commands.
>>
>> Thank you Marek. I had enabled usb ether options already and was
>> trying to test USB client functionality with RNDIS. For some reason
>> it was not working and i was not able to trace the issue and
>> subsequently was not sure about the client part. Your inputs cleared
>> my doubts. I tried UMS and DFU. UMS is working just fine and i can
>> download the respective images through DFU. Though this DFU is not
>> working full proof, but, i can figure that out now i feel.
>
> I'm very happy that UMS is working seamlessly. What kind of trouble do
> you have with DFU?
Hello,
I have a memory alignment problem with DFU as of now.
mtdparts is as below
device nand0 <fsl_nfc>, # parts = 4
#: name size offset mask_flags
0: vf-bcb 0x00020000 0x00000000 1
1: u-boot 0x00160000 0x00020000 1
2: u-boot-env 0x00080000 0x00180000 0
3: ubi 0x3fe00000 0x00200000 0
active partition: nand0,0 - (vf-bcb) 0x00020000 @ 0x00000000
defaults:
mtdids : nand0=fsl_nfc
mtdparts: mtdparts=fsl_nfc:128k(vf-bcb)ro,1408k(u-boot)ro,512k(u-boot-env),-(ubi)
As per the above, setenv dfu_alt_info "vf-bcb part 0,1;u-boot part 0,2;ubi part 0,4"
and CONFIG_SYS_CACHELINE_SIZE is 32.
I have a ubifs image and i was trying to write it by running "dfu 0 nand 4" in u-boot
and "sudo dfu-util -D ubifs.img -a ubi" on the host. I got the error as below.
"dfu_get_buf: Could not memalign 0x800000 bytes
Setting CONFIG_SYS_DFU_DATA_BUF_SIZE to (1024*1024) resolved this. After this, trying
an update as above, did not give me an updated ubi (which i check by booting to user space)
and doing a nand erase.part on ubi partition and then repeating the procedure results in
""Bad Linux ARM zImage magic!". After looking a bit online, at the below two links
http://lists.denx.de/pipermail/u-boot/2013-May/155089.html
http://www.linux-mtd.infradead.org/faq/ubifs.html#L_mkfubifs
I started trying ubinize. Getting the memory alignment issues again now :). I have
tried 1, 2, 4 and 8Mb for the dfu data buffer size. So i am trying to figure this
out at the moment. I am probably missing something. :)
--Best Regards,
Sanchayan.
>
>>
>> Thanks again for your inputs. Cheers!
>>
>> Best Regards,
>> Sanchayan.
>>
>>>
>>>>>> Sorry if i am asking this question in the wrong place. I
>>>>>> couldn't find anyone in the u-boot IRC channel nor find
>>>>>> something similar to the kernel-newbies mailing list.
>>>
>>> There isn't any, so ask away ;-)
>>>
>>>>>> Hope i am asking the right questions.
>>> [...]
>>>
>>> Best regards,
>>> Marek Vasut
>>>
>
>
>
next prev parent reply other threads:[~2014-11-05 10:20 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-30 5:44 [U-Boot] Query on the ci_udc driver for USB client implementation Sanchayan Maity
2014-11-03 5:33 ` Sanchayan Maity
2014-11-03 15:46 ` Fabio Estevam
2014-11-04 4:55 ` Marek Vasut
2014-11-04 14:05 ` Sanchayan Maity
2014-11-04 16:28 ` Lukasz Majewski
2014-11-05 10:20 ` Sanchayan Maity [this message]
2014-11-06 9:07 ` Lukasz Majewski
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=5459F9D4.5010507@gmail.com \
--to=maitysanchayan@gmail.com \
--cc=u-boot@lists.denx.de \
/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