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.

GPIO1 driver



I got to know if we need to driver GOIP1, we need to configure the MLBP_SIG_IO_CTRL_FOR_GPb7b8 and MLBP_SIG_IO_CTRL_FOR_GPb9b10

The code likes the below,

#define MLBP_SIG_IO_CTRL_FOR_GPb7b8                0x48140E18
#define MLBP_SIG_IO_CTRL_FOR_GPb9b10               0x48140E1c

#define MLBP_SIG_IO_CTRL_VAL                       0x3F    //set 3LSB to enable: 2 lvcmos buffer, padn receiver, padp receiver

          WR_MEM_32(MLBP_SIG_IO_CTRL_FOR_GPb7b8,   MLBP_SIG_IO_CTRL_VAL);              
          WR_MEM_32(MLBP_SIG_IO_CTRL_FOR_GPb9b10,  MLBP_SIG_IO_CTRL_VAL);

But I look thru datasheet and TRM, and got nothing about these two registerations, could you please tell me the bits map about them, thanks.

  • Wedden,

    Attached is the doc for those registers and the GEL file to toggle GPIO on our EVM.  These registers, MLBP_SIG_IO_CTRL and MLBP_DAT_IO_CTRL, are needed only for GPIO1[7:10].

    BR,

    Viet

    GPIO1.gel
  • Since I can attached only 1 file at a time.  I have to do again for registers definition here.

    MLBP_CLK.pdf
  • Hi Veit

    I want to toggle the 7th pin of port 1  in the  U-BOOT for dm8148  and i am toggling it by doing pull up and pull down at the time of muxing does it a right way

    my code is below

    but my code is hang at    printf("enabling the 7th pin of port 1 as output\n");

    static void gpio_pad_config_mux(void)
    {
        unsigned int i;
         __raw_writel(MLBP_SIG_IO_CTRL_VAL, MLBP_SIG_IO_CTRL_FOR_GPb7b8);              
             __raw_writel(MLBP_SIG_IO_CTRL_VAL, MLBP_SIG_IO_CTRL_FOR_GPb9b10);

        printf("enabling the 7th pin of port 1 as output\n");
        while(1)
        {
        __raw_writel(0x000E0080, 0x481408F4);//GP1[7]
        for(i=0; i<0xffff; i++)
        {}
        __raw_writel(0x000f0080, 0x481408f4);
        
        for(i=0; i<0xffff; i++)
        {}
        }
    }

    BR

    Abhishek.

  • Hi Abhishek,

    Abhishek Kumar47 said:
    I want to toggle the 7th pin of port 1 

    Do you mean GP1[7]? Note that GP1[7] signal can be routed on two physical pins: W1 and W6.

    Abhishek Kumar47 said:
    but my code is hang at    printf("enabling the 7th pin of port 1 as output\n");

    Does your code print this message and hang after, or it hangs before print this message?

    Abhishek Kumar47 said:
    static void gpio_pad_config_mux(void)

    In which u-boot file you add this function?

    BR
    Pavel