GPIO states when bootloader is running

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi

   

On my boards I have found that if the bootloader is running (USB boot selected PMODE=F11), some GPIO pins are driven avtively. As an example, GPIO[51] is driven low by the FX3. If the FX3 is hold in reset, the GPIOs seem to be in high impedance state. There are also other GPIOs affected, but GPIO[51] is the one I was investigating since it is important for us that this pin is high impedance state.

   

 

   

I have found this behaviour of GPIO[51] on our custom hardware with the CYUSB3014 production code 1149 and the Cypress Rev 2 DVK Kit having production code 1113. Has somebody else also observed such behaviour?

   

 

   

At this point I would like to get a statement from Cypress, how the bootloader is initialising the GPIOs. As you guys have access to the bootloader code, it should be easy enough to tell us. Thanks.

   

 

   

Regards

   

 

   

Silvio

0 Likes
11 Replies
Anonymous
Not applicable

Hi Silvio,

   

As it is related to bootloader it would be a good idea to discuss this over a tech support case. Please create a tech support case (MyAccount -> MyCases) so that we can take a deeper look into this.

   

Regards,

   

Anand

0 Likes
LiMa_282146
Level 4
Level 4
First like given

Hi,

   

Is there any update on this issue. GPIO50 and 57 also seem to be actively driven. Could Cypress let us know the default states of all the GPIO. They do not all default as inputs and this will cause problems if their initial state is not known

   

 

   

Sodafarl

0 Likes
Anonymous
Not applicable

I have still an open webcase on this. So far Cypress admitted that they were able to repeat the reported behaviour on GPIO[51] but apparently not all boards tested behaved the same.

   

 

   

My feeling was already before that more pins than GPIO[51] are affected and now Sodafarl is finding the same. I think Cypress needs to clarify this asap.

   

 

   

-Silvio

0 Likes
Anonymous
Not applicable

I'll follow-up with our team and provide an update on this as soon as possible.

   

Regards,

   

Anand

0 Likes
Anonymous
Not applicable

In the meantime I got the following information. GPIO[0..32] are still missing though.

   

 

   

                        

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

GPIO#

Pin State

33

Tri-state

34

Tri-state

35

Tri-state

36

Tri-state

37

Tri-state

38

Tri-state

39

Tri-state

40

Tri-state

41

Tri-state

42

Low

43

Tri-state

44

Tri-state

45

High

 

 

46

Tri-state

47

Tri-state

48

Tri-state

49

Tri-state

50

Tri-state

51

Low

52

Tri-state

53

High

54

Tri-state

55

High

56

Tri-state

57

Tri-state

0 Likes
Anonymous
Not applicable

Silvio,

   

Saw the case. Was just about to post it.

   

Thanks for posting it here.

   

Regards,

   

Anand

0 Likes
Anonymous
Not applicable

Our experience on the rev 3 DVK has been that the bootloader won't enumerate over USB if any of the following are being driven during boot:

   

GPIO[0] - GPIO[8]

   

GPIO[10]-GPIO[15]

   

GPIO[18]-GPIO[19]

   

GPIO[29]
 

0 Likes
Anonymous
Not applicable

 Has there been any official word from Cypress on this issue? 

0 Likes
Anonymous
Not applicable

Hi,

   

GPIO # 33 to 57 are same as Silvio posted above ( Sil posted on 09 May 2012 11:05 PM PST ).

   

GPIO # 0 to 29 are in "Tri-state".

   

GPIO # 30 to 32 are "inputs to the FX3".

   

Thanks,

   

sai krishna.

0 Likes
Anonymous
Not applicable

 To force a GPIO to tri-state, please use the API as follows:

   

CyU3PGpioSetIoMode(GPIO_NUMBER,0);

   

-Madhu

0 Likes
StSt_296371
Level 1
Level 1

Hello,

   

I've got a question regarding the Knowledge Base article "FX3 GPIO Pin Condition During Reset - KBA86731" (http://www.cypress.com/?id=4&rID=91267):

   

The document defines the default GPIO states for "USB Boot mode". What about the "SPI Boot mode"? Do the same default GPIO states apply for this boot mode?

   

Regards,

   

Stefan

   

===============================================================================================

   

2015-03-05 Update:

   

 

   

Hello,

   

meanwhile I found the information I'd looked for in the AN76405 "FX3 Boot Options" (see Table #29):

   

http://www.cypress.com/?docID=49862

   

 

   

Regards,

   

Stefan

0 Likes