High speed UART not working


#1

Hi,

I configured High speed uart as per low speed peripheral programming guide.
The changes I have done are as follows:
Changes in arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi:

aliases {
        serial0 = &blsp1_uart2;
        serial1 = &blsp1_uart1; /* Added for high speed uart */
};
&blsp1_uart1 {
    status = "ok";
};

Changes in arch/arm64/boot/dts/qcom/msm8916.dtsi:

 blsp1_uart1: uart@78af000 {
        compatible = "qcom,msm-hsuart-v14";
        reg = <0x78af000 0x200>,
              <0x7884000 0x23000>;
        reg-names = "core_mem", "bam_mem";
        interrupt-names = "core_irq", "bam_irq", "wakeup_irq";
        #address-cells = <0>;
        interrupt-parent = <&blsp1_uart1>;
        interrupts = <0 1 2>;
        #interrupt-cells = <1>;
        interrupt-map-mask = <0xffffffff>;
        interrupt-map = <0 &intc 0 107 0
                1 &intc 0 238 0
                2 &msm_gpio 1 0>;

        qcom,bam-tx-ep-pipe-index = <0>;
        qcom,bam-rx-ep-pipe-index = <1>;
        qcom,master-id = <86>;

        clocks = <&clock_gcc clk_gcc_blsp1_uart1_apps_clk>,
             <&clock_gcc clk_gcc_blsp1_ahb_clk>;
        clock-names = "core_clk", "iface_clk";
        qcom,msm-bus,name = "blsp1_uart1";
        qcom,msm-bus,num-cases = <2>;
        qcom,msm-bus,num-paths = <1>;
        qcom,msm-bus,vectors-KBps =
                <86 512 0 0>,
                <86 512 500 800>;
        pinctrl-names = "sleep", "default";
        pinctrl-0 = <&hsuart_sleep>;
        pinctrl-1 = <&hsuart_active>;
        status = "okay";
    };

Changes in arch/arm64/boot/dts/qcom/msm8916-pinctrl.dtsi:

 blsp1_uart1_active {
            qcom,pins = <&gp 0>, <&gp 1>, <&gp 2>, <&gp 3>;
            qcom,num-grp-pins = <4>;
            qcom,pin-func = <2>;
                label = "blsp1_uart1_active";
            hsuart_active: default {
                drive-strength = <16>;
                bias-disable;
            };
        };
blsp1_uart1_sleep {
            qcom,pins = <&gp 0>, <&gp 1>, <&gp 2>, <&gp 3>;
            qcom,num-grp-pins = <4>;
            qcom,pin-func = <2>;
            label = "blsp1_uart1_sleep";
            hsuart_sleep: sleep {
                drive-strength = <2>;
                bias-disable;
            };
        };

and also below flags are enabled in msm_defconfig:

CONFIG_SERIAL_MSM_HS=y
CONFIG_SERIAL_MSM_HSL=y
CONFIG_SERIAL_MSM_HS_CONSOLE=y
CONFIG_SERIAL_MSM_HSL_CONSOLE=y
CONFIG_SERIAL_MSM_SMD=y

When I execute echo 1 > /sys/kernel/debug/msm_serial_hs/loopback.0 it crashes and my board is rebooted.
Can anyone help me with this?


#2

Is this an Android or a Debian kernel?


#3

hi ldts-jro,

Thanks for the reply.

This thread is regarding to Android kernel not for the Debian kernel.

Regards,
Deepak