Kindly, set the IOA register with the desired values to be output on the pins.
The SFR address for IOA register is 0x80 and not 0xB0. Please refer to the EZUSB(R) Technical Reference Manual.
sorry, the 0xB0 was my bad, but it was a typo only in the post here. In the firmware I already had 0x80 but with no effect.
Also the problem seems to be to get the pin to work as an output.
No matter what I do it stays in high-Z.
I have now connected an LED to VCC via a 10k resistor and an LED to GND via a 10k resistor.
So if the pin is high-Z like with input pins, both LEDs are lit up just a bit, because no current flows into or out of the pin.
If I apply 0v or 3.3v to the pin externally via a 1k resistor one of the LEDs goes dark and the other one is lit up more, just as expected when the pin is at 0v or 3.3v.
This way I can easily see if the pin is 0, 1 or high-Z.
As I said before, the pin is always high-Z, no matter what I do.
I checked especially with PA3, because PA3 output enable is not overridden by any alternate function like some other PortA pins, but even on PA3 I only get high-Z.
The data transfer over the EP6 works like a charm and it ceases to work if I configure EP6 as an Out-Endpoint, so I am sure that the first part of the firmware is executed and then the OEA=0A should get executed, too.
Can anything else prevent the PortA GPIOs from being outputs?
Ok, for whatever reason OEA=0x0a had been translated to indirect addressing, which does not work with the SFR.
I changed it manually to direct addressing and it is working now.