AnsweredAssumed Answered

IMX7D IO multiplexing

Question asked by 其东 刘 on Apr 11, 2019
Latest reply on Apr 14, 2019 by igorpadykov

Hello everyone
      The chip model I am using is MCIMX7D7DVM10SD. We refer to the official website of the official website MCIMX7SABRE development board. We are using the eMMC approach. Therefore, we want to use the SD1_CLK pin as a normal GPIO port. But we are multiplexing this IO port and using it as an output. But when we measure this IO port, we get a low level. Below is our code. Is there any problem with our configuration?

        compatible = "comen,ssd2828";
        pinctrl-names = "default";
        pintctrl-0 = <&pinctrl_ssd2828>;
        status = "okay";
        gpio-mosi = <&gpio5 0 0>;
        gpio-miso = <&gpio5 1 0>;
        gpio-sclk = <&gpio5 2 0>;
        gpio-cs = <&gpio5 3 0>;                   //fail
        ssd2828-reset = <&gpio3 4 1>;    


        fsl,pins = <
                    MX7D_PAD_SD1_CLK__GPIO5_IO3 0x37      //fail
//                    MX7D_PAD_SD1_CLK__GPIO5_IO3 0x59      //fail
//                    MX7D_PAD_SD1_CLK__GPIO5_IO3 0x18      //fail
//                    MX7D_PAD_SD1_CLK__GPIO5_IO3 0x1b      //fail


ssd2828_info_data->spi_cs = of_get_named_gpio(node, "gpio-cs", 0);   //success

ret = gpio_request(ssd2828_info_data->spi_cs, "cs");                              //success

ret = gpio_direction_output(ssd2828_info_data->spi_cs, 1);                   //success,  but  Measurement level is 0

We are using GPIO5-IO3, this pin has not been able to work as we expected, its level has been 0

I hope everyone can help.