This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4VM: GPIO Timing Control

Part Number: TDA4VM

Hi team,

Here's an issue from the customer may need your help:

After a normal start up, including power reset, UBOOT, and kernel, all pins of the device can be pulled high and low in a software-programd order, right? There should not be cases where GPIOs or function pin from different domains are started together, correct?

The customer hopes that when the device starts up normally, the GPIO of the MCU domain or the main domain can be pulled high to control the power up of other power chips on the board. But this sequence, whether it's GPIO in the MCU domain or GPIO in the main domain, is pulled high and pulled low in the desired timing.

Could you help check this case? Thanks.

Best Regards,

Cherry

  • Cherry,

    Sorry did not get the question. Can you please elaborate the the exact question? What do you mean by controlling pull down/high in desired timing? 

    Regards,

    Brijesh

  • Hi Brijesh,

    Thanks for your support and got some clarification from the customer as follows:

    On the board, there are other communications, such as can and Ethernet modules, in addition to the TDA4 minimum system. Each module has power, reset, GPIO, and communication, and TDA4 control is required to enable the chip that supplies it.
    If power, enable, reset, and GPIO are not in the same domain for the same module, some timing relationship needs to be met for the module.

    So can these mentioned above guarantee that you can pull high and low as required by your software, even if you are not in the same domain? For example, power enable and reset for main domain needs to be pulled high, followed by a specified time to pull high, and then by communication. Is this requirement for TDA4 met between different domains?

    Thanks and regards,

    Cherry

  • Hi Cherry,

    I would require help from HW team here.

    Regards,

    Brijesh

  • Hi,team

        How about this question

    Regards

  • Hi Brijesh,

    May I know is there any updates?

    Thanks and regards,

    Cherry

  • Cherry,

    Software can write to the corresponding bits with the timing control somehow built into the software (e.g., with wait() statements probably, Brijesh can help refine the answer).  But the timing delta at the GPIO will not be very precise, but should be "good enough" to manually control say an enable and/or reset signal to a module.  

    Regards,

    Kyle

  • Assuming one processor (example an A72) is controlling the GPIO (MCU and MAIN domain) – then the exact order can be maintained.  If the R5 in the MCU is setting some GPIO and A72 in MAIN is setting other GPIO, then order is not guaranteed (unless other handshaking is implemented.)

    Any GPIO can be used for this purpose (power, enable, reset, etc).  However – some GPIO also double as BOOTMODE pins.  These pins may have pull-up/down requirements during reset.  If these pins are used to enable power, reset, etc…then design could inadvertently enable peripherals before software even begins to configure GPIO. 

  • Hi,Robert

         thanks for your reply