Re: [U-Boot] Query on the ci_udc driver for USB client implementation

2014-11-06 Thread Lukasz Majewski
Hi Sanchayan,

 
 
 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
 
  maitysancha...@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
  #: namesizeoffset  mask_flags
  0: vf-bcb  0x0002  0x  1
  1: u-boot  0x0016  0x0002  1
  2: u-boot-env  0x0008  0x0018  0
  3: ubi 0x3fe0  0x0020  0
 
 active partition: nand0,0 - (vf-bcb) 0x0002 @ 0x
 
 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 0x80 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. :)

On our boards we have eMMC memory, so I'm not so familiar with NAND
DFU problems.

However, I would advise you to pose this question to any of AM335x
boards maintainer (e.g. Tom Rini) since they use NAND on their boards.

 
 --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
 
  
  
  



-- 
Best regards,

Lukasz Majewski

Samsung RD Institute Poland (SRPOL) | Linux Platform Group
___
U-Boot mailing list
U-Boot@lists.denx.de

Re: [U-Boot] Query on the ci_udc driver for USB client implementation

2014-11-05 Thread Sanchayan Maity


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

 maitysancha...@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
 #: namesizeoffset  mask_flags
 0: vf-bcb  0x0002  0x  1
 1: u-boot  0x0016  0x0002  1
 2: u-boot-env  0x0008  0x0018  0
 3: ubi 0x3fe0  0x0020  0

active partition: nand0,0 - (vf-bcb) 0x0002 @ 0x

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 0x80 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

 
 
 
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] Query on the ci_udc driver for USB client implementation

2014-11-04 Thread Lukasz Majewski
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
 
  maitysancha...@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?

 
 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
  



-- 
Best regards,

Lukasz Majewski

Samsung RD Institute Poland (SRPOL) | Linux Platform Group
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] Query on the ci_udc driver for USB client implementation

2014-11-04 Thread Sanchayan Maity
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

 maitysancha...@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. 

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
 
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] Query on the ci_udc driver for USB client implementation

2014-11-03 Thread Sanchayan Maity
Hello,

Any pointers? 

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?
 
 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. 
 
 Hope i am asking the right questions. 
 
 Thanks  Regards,
 Sanchayan Maity.
 
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] Query on the ci_udc driver for USB client implementation

2014-11-03 Thread Fabio Estevam
On Mon, Nov 3, 2014 at 3:33 AM, Sanchayan Maity
maitysancha...@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?

 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.

 Hope i am asking the right questions.

 Thanks  Regards,
 Sanchayan Maity.

 ___
 U-Boot mailing list
 U-Boot@lists.denx.de
 http://lists.denx.de/mailman/listinfo/u-boot
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] Query on the ci_udc driver for USB client implementation

2014-11-03 Thread Marek Vasut
On Monday, November 03, 2014 at 04:46:48 PM, Fabio Estevam wrote:
 On Mon, Nov 3, 2014 at 3:33 AM, Sanchayan Maity
 
 maitysancha...@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.

  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
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Query on the ci_udc driver for USB client implementation

2014-10-29 Thread Sanchayan Maity
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?

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. 

Hope i am asking the right questions. 

Thanks  Regards,
Sanchayan Maity.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot