panning of dsi's frame buffer is slow.

I am using TX2 (L4T 28.2.1) which enabled DSI.
But there is a problem. Panning the frame buffer of DSI is slow. (It takes about 1 second)

In comparison, this phenomenon does not occur when TX1 (L4T 24.2.1) is used.

Comparing TX1 and TX2, there is a difference in the configuration of TEGRA_NVDISPLAY. Is this something related?

thanks.

k.doi,

Please share the method to reproduce your error. Thanks.

Add the following code to line 306 of nvdisp_stub.c.

if (!of_device_is_available(np_panel)) {
    np_panel = of_get_child_by_name(np_primary,
        "panel-p-wuxga-10-1");
    pr_info("np_panel = %s\n", np_panel?np_panel->name:"null");
    if (of_device_is_available(np_panel) && dc_out)
        tegra_panel_register_ops(dc_out,
            &dsi_p_wuxga_10_1_ops);
}

and modify tegra186-quill-p3310-1000-a00-00-base.dts as follows.

Replace the nvdisplay@15200000 node in line 191 with the node below.

nvdisplay@15200000 {
    status = "okay";
    nvidia,dc-or-node = "/host1x/dsi";
};

Add the following node next to the node of nvdisplay@15220000.

dsi {
    status = "okay";
    compatible = "nvidia,tegra186-dsi";
    reg = <0x0 0x15300000 0x0 0x00040000>, /* DSI */
          <0x0 0x15400000 0x0 0x00040000>, /* DSIB */
          <0x0 0x15900000 0x0 0x00040000>, /* DSIC */
          <0x0 0x15940000 0x0 0x00040000>, /* DSID */
          <0x0 0x15880000 0x0 0x00010000>; /* DSI_PADCTL */
    nvidia,dsi-controller-vs = <DSI_VS_1>;

    panel-p-wuxga-10-1 {
        status = "okay";
        compatible = "p,wuxga-10-1";
        nvidia,dsi-instance = <DSI_INSTANCE_0>;
        nvidia,dsi-n-data-lanes = <4>;
        nvidia,dsi-pixel-format = <TEGRA_DSI_PIXEL_FORMAT_24BIT_P>;
        nvidia,dsi-refresh-rate = <60>;
        nvidia,dsi-video-data-type = <TEGRA_DSI_VIDEO_TYPE_VIDEO_MODE>;
        nvidia,dsi-video-clock-mode = <TEGRA_DSI_VIDEO_CLOCK_CONTINUOUS>;
        nvidia,dsi-video-burst-mode = <TEGRA_DSI_VIDEO_NONE_BURST_MODE_WITH_SYNC_END>;
        nvidia,dsi-controller-vs = <DSI_VS_1>;
        nvidia,dsi-virtual-channel = <TEGRA_DSI_VIRTUAL_CHANNEL_0>;
        nvidia,dsi-panel-reset = <TEGRA_DSI_ENABLE>;
        nvidia,dsi-power-saving-suspend = <TEGRA_DSI_ENABLE>;
        /* init and suspend cmds are copied from panel-s-wuxga-8-0.dtsi */
        nvidia,dsi-pkt-seq =
             <CMD_VS LEN_SHORT CMD_BLNK LEN_HSYNC CMD_HE LEN_SHORT PKT_LP LINE_STOP>,
             <CMD_VE LEN_SHORT CMD_BLNK LEN_HSYNC CMD_HE LEN_SHORT PKT_LP LINE_STOP>,
             <CMD_HS LEN_SHORT CMD_BLNK LEN_HSYNC CMD_HE LEN_SHORT PKT_LP LINE_STOP>,
             <CMD_HS LEN_SHORT CMD_BLNK LEN_HSYNC CMD_HE LEN_SHORT CMD_BLNK LEN_HBP CMD_RGB_24BPP LEN_HACTIVE3 CMD_BLNK LEN_HFP LINE_STOP>,
             <CMD_HS LEN_SHORT CMD_BLNK LEN_HSYNC CMD_HE LEN_SHORT PKT_LP LINE_STOP>,
             <CMD_HS LEN_SHORT CMD_BLNK LEN_HSYNC CMD_HE LEN_SHORT CMD_BLNK LEN_HBP CMD_RGB_24BPP LEN_HACTIVE3 CMD_BLNK LEN_HFP LINE_STOP>;
        disp-default-out {
            nvidia,out-type = <TEGRA_DC_OUT_DSI>;
            nvidia,out-width = <217>;
            nvidia,out-height = <135>;
            nvidia,out-flags = <TEGRA_DC_OUT_CONTINUOUS_MODE>;
            nvidia,out-parent-clk = "pll_d";
            nvidia,out-xres = <1920>;
            nvidia,out-yres = <1080>;
        };
        display-timings {
            1920x1080-32-60Hz {
                clock-frequency = <128246400>;
                hactive = <1920>;
                vactive = <1080>;
                hfront-porch = <12>;
                hback-porch = <16>;
                hsync-len = <4>;
                vfront-porch = <10>;
                vback-porch = <4>;
                vsync-len = <1>;
                nvidia,h-ref-to-sync = <4>;
                nvidia,v-ref-to-sync = <1>;
            };
        };
        smartdimmer {
            status = "disabled";
            nvidia,use-auto-pwm = <0>;
            nvidia,hw-update-delay = <0>;
            nvidia,bin-width = <0xffffffff>;
            nvidia,aggressiveness = <5>;
            nvidia,use-vid-luma = <0>;
            nvidia,phase-in-settings = <0>;
            nvidia,phase-in-adjustments = <0>;
            nvidia,k-limit-enable = <1>;
            nvidia,k-limit = <200>;
            nvidia,sd-window-enable = <0>;
            nvidia,soft-clipping-enable= <1>;
            nvidia,soft-clipping-threshold = <128>;
            nvidia,smooth-k-enable = <1>;
            nvidia,smooth-k-incr = <4>;
            nvidia,coeff = <5 9 2>;
            nvidia,fc = <0 0>;
            nvidia,blp = <1024 255>;
            nvidia,bltf = <57 65 73 82
                       92 103 114 125
                       138 150 164 178
                       193 208 224 241>;
            nvidia,lut = <255 255 255
                      199 199 199
                      153 153 153
                      116 116 116
                      85 85 85
                      59 59 59
                      36 36 36
                      17 17 17
                      0 0 0>;
            nvidia,use-vpulse2 = <1>;
            nvidia,bl-device-name = "pwm-backlight";
        };
        nvdisp-cmu {
            nvidia,panel-csc = < 0x10000 0x00000 0x00000 0x00000
                         0x00000 0x10000 0x00000 0x00000
                         0x00000 0x00000 0x10000 0x00000 >;
            nvidia,cmu-lut = <
                    0x6000 0x6000 0x6000 0x60ce 0x60ce 0x60ce
                    0x619d 0x619d 0x619d 0x626c 0x626c 0x626c
                    0x632d 0x632d 0x632d 0x63d4 0x63d4 0x63d4
                    0x6469 0x6469 0x6469 0x64f0 0x64f0 0x64f0
                    0x656b 0x656b 0x656b 0x65df 0x65df 0x65df
                    0x664a 0x664a 0x664a 0x66b0 0x66b0 0x66b0
                    0x6711 0x6711 0x6711 0x676d 0x676d 0x676d
                    0x67c4 0x67c4 0x67c4 0x6819 0x6819 0x6819
                    0x686a 0x686a 0x686a 0x68b8 0x68b8 0x68b8
                    0x6904 0x6904 0x6904 0x694d 0x694d 0x694d
                    0x6994 0x6994 0x6994 0x69d8 0x69d8 0x69d8
                    0x6a1b 0x6a1b 0x6a1b 0x6a5d 0x6a5d 0x6a5d
                    0x6a9c 0x6a9c 0x6a9c 0x6ada 0x6ada 0x6ada
                    0x6b17 0x6b17 0x6b17 0x6b52 0x6b52 0x6b52
                    0x6b8c 0x6b8c 0x6b8c 0x6bc5 0x6bc5 0x6bc5
                    0x6bfd 0x6bfd 0x6bfd 0x6c33 0x6c33 0x6c33
                    0x6c69 0x6c69 0x6c69 0x6c9e 0x6c9e 0x6c9e
                    0x6cd1 0x6cd1 0x6cd1 0x6d04 0x6d04 0x6d04
                    0x6d36 0x6d36 0x6d36 0x6d67 0x6d67 0x6d67
                    0x6d98 0x6d98 0x6d98 0x6dc7 0x6dc7 0x6dc7
                    0x6df6 0x6df6 0x6df6 0x6e25 0x6e25 0x6e25
                    0x6e52 0x6e52 0x6e52 0x6e7f 0x6e7f 0x6e7f
                    0x6eac 0x6eac 0x6eac 0x6ed7 0x6ed7 0x6ed7
                    0x6f03 0x6f03 0x6f03 0x6f2d 0x6f2d 0x6f2d
                    0x6f58 0x6f58 0x6f58 0x6f81 0x6f81 0x6f81
                    0x6faa 0x6faa 0x6faa 0x6fd3 0x6fd3 0x6fd3
                    0x6ffb 0x6ffb 0x6ffb 0x7023 0x7023 0x7023
                    0x704b 0x704b 0x704b 0x7071 0x7071 0x7071
                    0x7098 0x7098 0x7098 0x70be 0x70be 0x70be
                    0x70e4 0x70e4 0x70e4 0x7109 0x7109 0x7109
                    0x712e 0x712e 0x712e 0x7153 0x7153 0x7153
                    0x7177 0x7177 0x7177 0x719b 0x719b 0x719b
                    0x71bf 0x71bf 0x71bf 0x71e2 0x71e2 0x71e2
                    0x7205 0x7205 0x7205 0x7227 0x7227 0x7227
                    0x724a 0x724a 0x724a 0x726c 0x726c 0x726c
                    0x728e 0x728e 0x728e 0x72af 0x72af 0x72af
                    0x72d0 0x72d0 0x72d0 0x72f1 0x72f1 0x72f1
                    0x7312 0x7312 0x7312 0x7333 0x7333 0x7333
                    0x7353 0x7353 0x7353 0x7373 0x7373 0x7373
                    0x7392 0x7392 0x7392 0x73b2 0x73b2 0x73b2
                    0x73d1 0x73d1 0x73d1 0x73f0 0x73f0 0x73f0
                    0x740f 0x740f 0x740f 0x742d 0x742d 0x742d
                    0x744c 0x744c 0x744c 0x746a 0x746a 0x746a
                    0x7488 0x7488 0x7488 0x74a6 0x74a6 0x74a6
                    0x74c3 0x74c3 0x74c3 0x74e0 0x74e0 0x74e0
                    0x74fe 0x74fe 0x74fe 0x751b 0x751b 0x751b
                    0x7537 0x7537 0x7537 0x7554 0x7554 0x7554
                    0x7570 0x7570 0x7570 0x758d 0x758d 0x758d
                    0x75a9 0x75a9 0x75a9 0x75c4 0x75c4 0x75c4
                    0x75e0 0x75e0 0x75e0 0x75fc 0x75fc 0x75fc
                    0x7617 0x7617 0x7617 0x7632 0x7632 0x7632
                    0x764d 0x764d 0x764d 0x7668 0x7668 0x7668
                    0x7683 0x7683 0x7683 0x769e 0x769e 0x769e
                    0x76b8 0x76b8 0x76b8 0x76d3 0x76d3 0x76d3
                    0x76ed 0x76ed 0x76ed 0x7707 0x7707 0x7707
                    0x7721 0x7721 0x7721 0x773b 0x773b 0x773b
                    0x7754 0x7754 0x7754 0x776e 0x776e 0x776e
                    0x7787 0x7787 0x7787 0x77a0 0x77a0 0x77a0
                    0x77b9 0x77b9 0x77b9 0x77d2 0x77d2 0x77d2
                    0x77eb 0x77eb 0x77eb 0x7804 0x7804 0x7804
                    0x781d 0x781d 0x781d 0x7835 0x7835 0x7835
                    0x784e 0x784e 0x784e 0x7866 0x7866 0x7866
                    0x787e 0x787e 0x787e 0x7896 0x7896 0x7896
                    0x78ae 0x78ae 0x78ae 0x78c6 0x78c6 0x78c6
                    0x78dd 0x78dd 0x78dd 0x78f5 0x78f5 0x78f5
                    0x790d 0x790d 0x790d 0x7924 0x7924 0x7924
                    0x793b 0x793b 0x793b 0x7952 0x7952 0x7952
                    0x796a 0x796a 0x796a 0x7981 0x7981 0x7981
                    0x7997 0x7997 0x7997 0x79ae 0x79ae 0x79ae
                    0x79c5 0x79c5 0x79c5 0x79db 0x79db 0x79db
                    0x79f2 0x79f2 0x79f2 0x7a08 0x7a08 0x7a08
                    0x7a1f 0x7a1f 0x7a1f 0x7a35 0x7a35 0x7a35
                    0x7a4b 0x7a4b 0x7a4b 0x7a61 0x7a61 0x7a61
                    0x7a77 0x7a77 0x7a77 0x7a8d 0x7a8d 0x7a8d
                    0x7aa3 0x7aa3 0x7aa3 0x7ab8 0x7ab8 0x7ab8
                    0x7ace 0x7ace 0x7ace 0x7ae3 0x7ae3 0x7ae3
                    0x7af9 0x7af9 0x7af9 0x7b0e 0x7b0e 0x7b0e
                    0x7b24 0x7b24 0x7b24 0x7b39 0x7b39 0x7b39
                    0x7b4e 0x7b4e 0x7b4e 0x7b63 0x7b63 0x7b63
                    0x7b78 0x7b78 0x7b78 0x7b8d 0x7b8d 0x7b8d
                    0x7ba2 0x7ba2 0x7ba2 0x7bb6 0x7bb6 0x7bb6
                    0x7bcb 0x7bcb 0x7bcb 0x7be0 0x7be0 0x7be0
                    0x7bf4 0x7bf4 0x7bf4 0x7c08 0x7c08 0x7c08
                    0x7c1d 0x7c1d 0x7c1d 0x7c31 0x7c31 0x7c31
                    0x7c45 0x7c45 0x7c45 0x7c59 0x7c59 0x7c59
                    0x7c6e 0x7c6e 0x7c6e 0x7c82 0x7c82 0x7c82
                    0x7c96 0x7c96 0x7c96 0x7ca9 0x7ca9 0x7ca9
                    0x7cbd 0x7cbd 0x7cbd 0x7cd1 0x7cd1 0x7cd1
                    0x7ce5 0x7ce5 0x7ce5 0x7cf8 0x7cf8 0x7cf8
                    0x7d0c 0x7d0c 0x7d0c 0x7d1f 0x7d1f 0x7d1f
                    0x7d33 0x7d33 0x7d33 0x7d46 0x7d46 0x7d46
                    0x7d59 0x7d59 0x7d59 0x7d6d 0x7d6d 0x7d6d
                    0x7d80 0x7d80 0x7d80 0x7d93 0x7d93 0x7d93
                    0x7da6 0x7da6 0x7da6 0x7db9 0x7db9 0x7db9
                    0x7dcc 0x7dcc 0x7dcc 0x7ddf 0x7ddf 0x7ddf
                    0x7df2 0x7df2 0x7df2 0x7e04 0x7e04 0x7e04
                    0x7e17 0x7e17 0x7e17 0x7e2a 0x7e2a 0x7e2a
                    0x7e3c 0x7e3c 0x7e3c 0x7e4f 0x7e4f 0x7e4f
                    0x7e61 0x7e61 0x7e61 0x7e74 0x7e74 0x7e74
                    0x7e86 0x7e86 0x7e86 0x7e98 0x7e98 0x7e98
                    0x7eab 0x7eab 0x7eab 0x7ebd 0x7ebd 0x7ebd
                    0x7ecf 0x7ecf 0x7ecf 0x7ee1 0x7ee1 0x7ee1
                    0x7ef3 0x7ef3 0x7ef3 0x7f05 0x7f05 0x7f05
                    0x7f17 0x7f17 0x7f17 0x7f29 0x7f29 0x7f29
                    0x7f3b 0x7f3b 0x7f3b 0x7f4d 0x7f4d 0x7f4d
                    0x7f5e 0x7f5e 0x7f5e 0x7f70 0x7f70 0x7f70
                    0x7f82 0x7f82 0x7f82 0x7f93 0x7f93 0x7f93
                    0x7fa5 0x7fa5 0x7fa5 0x7fb6 0x7fb6 0x7fb6
                    0x7fc8 0x7fc8 0x7fc8 0x7fd9 0x7fd9 0x7fd9
                    0x7feb 0x7feb 0x7feb 0x7ffc 0x7ffc 0x7ffc
                    0x800d 0x800d 0x800d 0x801e 0x801e 0x801e
                    0x8030 0x8030 0x8030 0x8041 0x8041 0x8041
                    0x8052 0x8052 0x8052 0x8063 0x8063 0x8063
                    0x8074 0x8074 0x8074 0x8085 0x8085 0x8085
                    0x8096 0x8096 0x8096 0x80a7 0x80a7 0x80a7
                    0x80b7 0x80b7 0x80b7 0x80c8 0x80c8 0x80c8
                    0x80d9 0x80d9 0x80d9 0x80ea 0x80ea 0x80ea
                    0x80fa 0x80fa 0x80fa 0x810b 0x810b 0x810b
                    0x811c 0x811c 0x811c 0x812c 0x812c 0x812c
                    0x813d 0x813d 0x813d 0x814d 0x814d 0x814d
                    0x815d 0x815d 0x815d 0x816e 0x816e 0x816e
                    0x817e 0x817e 0x817e 0x818e 0x818e 0x818e
                    0x819f 0x819f 0x819f 0x81af 0x81af 0x81af
                    0x81bf 0x81bf 0x81bf 0x81cf 0x81cf 0x81cf
                    0x81df 0x81df 0x81df 0x81ef 0x81ef 0x81ef
                    0x81ff 0x81ff 0x81ff 0x820f 0x820f 0x820f
                    0x821f 0x821f 0x821f 0x822f 0x822f 0x822f
                    0x823f 0x823f 0x823f 0x824f 0x824f 0x824f
                    0x825f 0x825f 0x825f 0x826f 0x826f 0x826f
                    0x827e 0x827e 0x827e 0x828e 0x828e 0x828e
                    0x829e 0x829e 0x829e 0x82ad 0x82ad 0x82ad
                    0x82bd 0x82bd 0x82bd 0x82cc 0x82cc 0x82cc
                    0x82dc 0x82dc 0x82dc 0x82eb 0x82eb 0x82eb
                    0x82fb 0x82fb 0x82fb 0x830a 0x830a 0x830a
                    0x831a 0x831a 0x831a 0x8329 0x8329 0x8329
                    0x8338 0x8338 0x8338 0x8348 0x8348 0x8348
                    0x8357 0x8357 0x8357 0x8366 0x8366 0x8366
                    0x8375 0x8375 0x8375 0x8385 0x8385 0x8385
                    0x8394 0x8394 0x8394 0x83a3 0x83a3 0x83a3
                    0x83b2 0x83b2 0x83b2 0x83c1 0x83c1 0x83c1
                    0x83d0 0x83d0 0x83d0 0x83df 0x83df 0x83df
                    0x83ee 0x83ee 0x83ee 0x83fd 0x83fd 0x83fd
                    0x840c 0x840c 0x840c 0x841a 0x841a 0x841a
                    0x8429 0x8429 0x8429 0x8438 0x8438 0x8438
                    0x8447 0x8447 0x8447 0x8455 0x8455 0x8455
                    0x8464 0x8464 0x8464 0x8473 0x8473 0x8473
                    0x8481 0x8481 0x8481 0x8490 0x8490 0x8490
                    0x849f 0x849f 0x849f 0x84ad 0x84ad 0x84ad
                    0x84bc 0x84bc 0x84bc 0x84ca 0x84ca 0x84ca
                    0x84d9 0x84d9 0x84d9 0x84e7 0x84e7 0x84e7
                    0x84f5 0x84f5 0x84f5 0x8504 0x8504 0x8504
                    0x8512 0x8512 0x8512 0x8521 0x8521 0x8521
                    0x852f 0x852f 0x852f 0x853d 0x853d 0x853d
                    0x854b 0x854b 0x854b 0x855a 0x855a 0x855a
                    0x8568 0x8568 0x8568 0x8576 0x8576 0x8576
                    0x8584 0x8584 0x8584 0x8592 0x8592 0x8592
                    0x85a0 0x85a0 0x85a0 0x85ae 0x85ae 0x85ae
                    0x85bc 0x85bc 0x85bc 0x85ca 0x85ca 0x85ca
                    0x85d8 0x85d8 0x85d8 0x85e6 0x85e6 0x85e6
                    0x85f4 0x85f4 0x85f4 0x8602 0x8602 0x8602
                    0x8610 0x8610 0x8610 0x861e 0x861e 0x861e
                    0x862c 0x862c 0x862c 0x8639 0x8639 0x8639
                    0x8647 0x8647 0x8647 0x8655 0x8655 0x8655
                    0x8663 0x8663 0x8663 0x8670 0x8670 0x8670
                    0x867e 0x867e 0x867e 0x868c 0x868c 0x868c
                    0x8699 0x8699 0x8699 0x86a7 0x86a7 0x86a7
                    0x86b5 0x86b5 0x86b5 0x86c2 0x86c2 0x86c2
                    0x86d0 0x86d0 0x86d0 0x86dd 0x86dd 0x86dd
                    0x86eb 0x86eb 0x86eb 0x86f8 0x86f8 0x86f8
                    0x8705 0x8705 0x8705 0x8713 0x8713 0x8713
                    0x8720 0x8720 0x8720 0x872e 0x872e 0x872e
                    0x873b 0x873b 0x873b 0x8748 0x8748 0x8748
                    0x8756 0x8756 0x8756 0x8763 0x8763 0x8763
                    0x8770 0x8770 0x8770 0x877d 0x877d 0x877d
                    0x878b 0x878b 0x878b 0x8798 0x8798 0x8798
                    0x87a5 0x87a5 0x87a5 0x87b2 0x87b2 0x87b2
                    0x87bf 0x87bf 0x87bf 0x87cc 0x87cc 0x87cc
                    0x87d9 0x87d9 0x87d9 0x87e6 0x87e6 0x87e6
                    0x87f3 0x87f3 0x87f3 0x8801 0x8801 0x8801
                    0x880e 0x880e 0x880e 0x881a 0x881a 0x881a
                    0x8827 0x8827 0x8827 0x8834 0x8834 0x8834
                    0x8841 0x8841 0x8841 0x884e 0x884e 0x884e
                    0x885b 0x885b 0x885b 0x8868 0x8868 0x8868
                    0x8875 0x8875 0x8875 0x8882 0x8882 0x8882
                    0x888e 0x888e 0x888e 0x889b 0x889b 0x889b
                    0x88a8 0x88a8 0x88a8 0x88b5 0x88b5 0x88b5
                    0x88c1 0x88c1 0x88c1 0x88ce 0x88ce 0x88ce
                    0x88db 0x88db 0x88db 0x88e7 0x88e7 0x88e7
                    0x88f4 0x88f4 0x88f4 0x8900 0x8900 0x8900
                    0x890d 0x890d 0x890d 0x891a 0x891a 0x891a
                    0x8926 0x8926 0x8926 0x8933 0x8933 0x8933
                    0x893f 0x893f 0x893f 0x894c 0x894c 0x894c
                    0x8958 0x8958 0x8958 0x8965 0x8965 0x8965
                    0x8971 0x8971 0x8971 0x897d 0x897d 0x897d
                    0x898a 0x898a 0x898a 0x8996 0x8996 0x8996
                    0x89a3 0x89a3 0x89a3 0x89af 0x89af 0x89af
                    0x89bb 0x89bb 0x89bb 0x89c8 0x89c8 0x89c8
                    0x89d4 0x89d4 0x89d4 0x89e0 0x89e0 0x89e0
                    0x89ec 0x89ec 0x89ec 0x89f9 0x89f9 0x89f9
                    0x8a05 0x8a05 0x8a05 0x8a11 0x8a11 0x8a11
                    0x8a1d 0x8a1d 0x8a1d 0x8a29 0x8a29 0x8a29
                    0x8a36 0x8a36 0x8a36 0x8a42 0x8a42 0x8a42
                    0x8a4e 0x8a4e 0x8a4e 0x8a5a 0x8a5a 0x8a5a
                    0x8a66 0x8a66 0x8a66 0x8a72 0x8a72 0x8a72
                    0x8a7e 0x8a7e 0x8a7e 0x8a8a 0x8a8a 0x8a8a
                    0x8a96 0x8a96 0x8a96 0x8aa2 0x8aa2 0x8aa2
                    0x8aae 0x8aae 0x8aae 0x8aba 0x8aba 0x8aba
                    0x8ac6 0x8ac6 0x8ac6 0x8ad2 0x8ad2 0x8ad2
                    0x8ade 0x8ade 0x8ade 0x8aea 0x8aea 0x8aea
                    0x8af5 0x8af5 0x8af5 0x8b01 0x8b01 0x8b01
                    0x8b0d 0x8b0d 0x8b0d 0x8b19 0x8b19 0x8b19
                    0x8b25 0x8b25 0x8b25 0x8b31 0x8b31 0x8b31
                    0x8b3c 0x8b3c 0x8b3c 0x8b48 0x8b48 0x8b48
                    0x8b54 0x8b54 0x8b54 0x8b60 0x8b60 0x8b60
                    0x8b6b 0x8b6b 0x8b6b 0x8b77 0x8b77 0x8b77
                    0x8b83 0x8b83 0x8b83 0x8b8e 0x8b8e 0x8b8e
                    0x8b9a 0x8b9a 0x8b9a 0x8ba6 0x8ba6 0x8ba6
                    0x8bb1 0x8bb1 0x8bb1 0x8bbd 0x8bbd 0x8bbd
                    0x8bc8 0x8bc8 0x8bc8 0x8bd4 0x8bd4 0x8bd4
                    0x8bdf 0x8bdf 0x8bdf 0x8beb 0x8beb 0x8beb
                    0x8bf6 0x8bf6 0x8bf6 0x8c02 0x8c02 0x8c02
                    0x8c0d 0x8c0d 0x8c0d 0x8c19 0x8c19 0x8c19
                    0x8c24 0x8c24 0x8c24 0x8c30 0x8c30 0x8c30
                    0x8c3b 0x8c3b 0x8c3b 0x8c47 0x8c47 0x8c47
                    0x8c52 0x8c52 0x8c52 0x8c5d 0x8c5d 0x8c5d
                    0x8c69 0x8c69 0x8c69 0x8c74 0x8c74 0x8c74
                    0x8c80 0x8c80 0x8c80 0x8c8b 0x8c8b 0x8c8b
                    0x8c96 0x8c96 0x8c96 0x8ca1 0x8ca1 0x8ca1
                    0x8cad 0x8cad 0x8cad 0x8cb8 0x8cb8 0x8cb8
                    0x8cc3 0x8cc3 0x8cc3 0x8ccf 0x8ccf 0x8ccf
                    0x8cda 0x8cda 0x8cda 0x8ce5 0x8ce5 0x8ce5
                    0x8cf0 0x8cf0 0x8cf0 0x8cfb 0x8cfb 0x8cfb
                    0x8d06 0x8d06 0x8d06 0x8d12 0x8d12 0x8d12
                    0x8d1d 0x8d1d 0x8d1d 0x8d28 0x8d28 0x8d28
                    0x8d33 0x8d33 0x8d33 0x8d3e 0x8d3e 0x8d3e
                    0x8d49 0x8d49 0x8d49 0x8d54 0x8d54 0x8d54
                    0x8d5f 0x8d5f 0x8d5f 0x8d6a 0x8d6a 0x8d6a
                    0x8d75 0x8d75 0x8d75 0x8d80 0x8d80 0x8d80
                    0x8d8b 0x8d8b 0x8d8b 0x8d96 0x8d96 0x8d96
                    0x8da1 0x8da1 0x8da1 0x8dac 0x8dac 0x8dac
                    0x8db7 0x8db7 0x8db7 0x8dc2 0x8dc2 0x8dc2
                    0x8dcd 0x8dcd 0x8dcd 0x8dd8 0x8dd8 0x8dd8
                    0x8de3 0x8de3 0x8de3 0x8dee 0x8dee 0x8dee
                    0x8df9 0x8df9 0x8df9 0x8e04 0x8e04 0x8e04
                    0x8e0e 0x8e0e 0x8e0e 0x8e19 0x8e19 0x8e19
                    0x8e24 0x8e24 0x8e24 0x8e2f 0x8e2f 0x8e2f
                    0x8e3a 0x8e3a 0x8e3a 0x8e44 0x8e44 0x8e44
                    0x8e4f 0x8e4f 0x8e4f 0x8e5a 0x8e5a 0x8e5a
                    0x8e65 0x8e65 0x8e65 0x8e6f 0x8e6f 0x8e6f
                    0x8e7a 0x8e7a 0x8e7a 0x8e85 0x8e85 0x8e85
                    0x8e90 0x8e90 0x8e90 0x8e9a 0x8e9a 0x8e9a
                    0x8ea5 0x8ea5 0x8ea5 0x8eb0 0x8eb0 0x8eb0
                    0x8eba 0x8eba 0x8eba 0x8ec5 0x8ec5 0x8ec5
                    0x8ecf 0x8ecf 0x8ecf 0x8eda 0x8eda 0x8eda
                    0x8ee5 0x8ee5 0x8ee5 0x8eef 0x8eef 0x8eef
                    0x8efa 0x8efa 0x8efa 0x8f04 0x8f04 0x8f04
                    0x8f0f 0x8f0f 0x8f0f 0x8f19 0x8f19 0x8f19
                    0x8f24 0x8f24 0x8f24 0x8f2e 0x8f2e 0x8f2e
                    0x8f39 0x8f39 0x8f39 0x8f43 0x8f43 0x8f43
                    0x8f4e 0x8f4e 0x8f4e 0x8f58 0x8f58 0x8f58
                    0x8f63 0x8f63 0x8f63 0x8f6d 0x8f6d 0x8f6d
                    0x8f78 0x8f78 0x8f78 0x8f82 0x8f82 0x8f82
                    0x8f8c 0x8f8c 0x8f8c 0x8f97 0x8f97 0x8f97
                    0x8fa1 0x8fa1 0x8fa1 0x8fac 0x8fac 0x8fac
                    0x8fb6 0x8fb6 0x8fb6 0x8fc0 0x8fc0 0x8fc0
                    0x8fcb 0x8fcb 0x8fcb 0x8fd5 0x8fd5 0x8fd5
                    0x8fdf 0x8fdf 0x8fdf 0x8fea 0x8fea 0x8fea
                    0x8ff4 0x8ff4 0x8ff4 0x8ffe 0x8ffe 0x8ffe
                    0x9008 0x9008 0x9008 0x9013 0x9013 0x9013
                    0x901d 0x901d 0x901d 0x9027 0x9027 0x9027
                    0x9031 0x9031 0x9031 0x903c 0x903c 0x903c
                    0x9046 0x9046 0x9046 0x9050 0x9050 0x9050
                    0x905a 0x905a 0x905a 0x9064 0x9064 0x9064
                    0x906e 0x906e 0x906e 0x9079 0x9079 0x9079
                    0x9083 0x9083 0x9083 0x908d 0x908d 0x908d
                    0x9097 0x9097 0x9097 0x90a1 0x90a1 0x90a1
                    0x90ab 0x90ab 0x90ab 0x90b5 0x90b5 0x90b5
                    0x90bf 0x90bf 0x90bf 0x90c9 0x90c9 0x90c9
                    0x90d3 0x90d3 0x90d3 0x90dd 0x90dd 0x90dd
                    0x90e7 0x90e7 0x90e7 0x90f1 0x90f1 0x90f1
                    0x90fb 0x90fb 0x90fb 0x9105 0x9105 0x9105
                    0x910f 0x910f 0x910f 0x9119 0x9119 0x9119
                    0x9123 0x9123 0x9123 0x912d 0x912d 0x912d
                    0x9137 0x9137 0x9137 0x9141 0x9141 0x9141
                    0x914b 0x914b 0x914b 0x9155 0x9155 0x9155
                    0x915f 0x915f 0x915f 0x9169 0x9169 0x9169
                    0x9173 0x9173 0x9173 0x917d 0x917d 0x917d
                    0x9186 0x9186 0x9186 0x9190 0x9190 0x9190
                    0x919a 0x919a 0x919a 0x91a4 0x91a4 0x91a4
                    0x91ae 0x91ae 0x91ae 0x91b8 0x91b8 0x91b8
                    0x91c1 0x91c1 0x91c1 0x91cb 0x91cb 0x91cb
                    0x91d5 0x91d5 0x91d5 0x91df 0x91df 0x91df
                    0x91e9 0x91e9 0x91e9 0x91f2 0x91f2 0x91f2
                    0x91fc 0x91fc 0x91fc 0x9206 0x9206 0x9206
                    0x9210 0x9210 0x9210 0x9219 0x9219 0x9219
                    0x9223 0x9223 0x9223 0x922d 0x922d 0x922d
                    0x9236 0x9236 0x9236 0x9240 0x9240 0x9240
                    0x924a 0x924a 0x924a 0x9253 0x9253 0x9253
                    0x925d 0x925d 0x925d 0x9267 0x9267 0x9267
                    0x9270 0x9270 0x9270 0x927a 0x927a 0x927a
                    0x9283 0x9283 0x9283 0x928d 0x928d 0x928d
                    0x9297 0x9297 0x9297 0x92a0 0x92a0 0x92a0
                    0x92aa 0x92aa 0x92aa 0x92b3 0x92b3 0x92b3
                    0x92bd 0x92bd 0x92bd 0x92c6 0x92c6 0x92c6
                    0x92d0 0x92d0 0x92d0 0x92da 0x92da 0x92da
                    0x92e3 0x92e3 0x92e3 0x92ed 0x92ed 0x92ed
                    0x92f6 0x92f6 0x92f6 0x9300 0x9300 0x9300
                    0x9309 0x9309 0x9309 0x9313 0x9313 0x9313
                    0x931c 0x931c 0x931c 0x9325 0x9325 0x9325
                    0x932f 0x932f 0x932f 0x9338 0x9338 0x9338
                    0x9342 0x9342 0x9342 0x934b 0x934b 0x934b
                    0x9355 0x9355 0x9355 0x935e 0x935e 0x935e
                    0x9367 0x9367 0x9367 0x9371 0x9371 0x9371
                    0x937a 0x937a 0x937a 0x9384 0x9384 0x9384
                    0x938d 0x938d 0x938d 0x9396 0x9396 0x9396
                    0x93a0 0x93a0 0x93a0 0x93a9 0x93a9 0x93a9
                    0x93b2 0x93b2 0x93b2 0x93bc 0x93bc 0x93bc
                    0x93c5 0x93c5 0x93c5 0x93ce 0x93ce 0x93ce
                    0x93d7 0x93d7 0x93d7 0x93e1 0x93e1 0x93e1
                    0x93ea 0x93ea 0x93ea 0x93f3 0x93f3 0x93f3
                    0x93fc 0x93fc 0x93fc 0x9406 0x9406 0x9406
                    0x940f 0x940f 0x940f 0x9418 0x9418 0x9418
                    0x9421 0x9421 0x9421 0x942b 0x942b 0x942b
                    0x9434 0x9434 0x9434 0x943d 0x943d 0x943d
                    0x9446 0x9446 0x9446 0x944f 0x944f 0x944f
                    0x9459 0x9459 0x9459 0x9462 0x9462 0x9462
                    0x946b 0x946b 0x946b 0x9474 0x9474 0x9474
                    0x947d 0x947d 0x947d 0x9486 0x9486 0x9486
                    0x948f 0x948f 0x948f 0x9499 0x9499 0x9499
                    0x94a2 0x94a2 0x94a2 0x94ab 0x94ab 0x94ab
                    0x94b4 0x94b4 0x94b4 0x94bd 0x94bd 0x94bd
                    0x94c6 0x94c6 0x94c6 0x94cf 0x94cf 0x94cf
                    0x94d8 0x94d8 0x94d8 0x94e1 0x94e1 0x94e1
                    0x94ea 0x94ea 0x94ea 0x94f3 0x94f3 0x94f3
                    0x94fc 0x94fc 0x94fc 0x9505 0x9505 0x9505
                    0x950e 0x950e 0x950e 0x9517 0x9517 0x9517
                    0x9520 0x9520 0x9520 0x9529 0x9529 0x9529
                    0x9532 0x9532 0x9532 0x953b 0x953b 0x953b
                    0x9544 0x9544 0x9544 0x954d 0x954d 0x954d
                    0x9556 0x9556 0x9556 0x955f 0x955f 0x955f
                    0x9568 0x9568 0x9568 0x9571 0x9571 0x9571
                    0x957a 0x957a 0x957a 0x9583 0x9583 0x9583
                    0x958c 0x958c 0x958c 0x9595 0x9595 0x9595
                    0x959d 0x959d 0x959d 0x95a6 0x95a6 0x95a6
                    0x95af 0x95af 0x95af 0x95b8 0x95b8 0x95b8
                    0x95c1 0x95c1 0x95c1 0x95ca 0x95ca 0x95ca
                    0x95d3 0x95d3 0x95d3 0x95db 0x95db 0x95db
                    0x95e4 0x95e4 0x95e4 0x95ed 0x95ed 0x95ed
                    0x95f6 0x95f6 0x95f6 0x95ff 0x95ff 0x95ff
                    0x9608 0x9608 0x9608 0x9610 0x9610 0x9610
                    0x9619 0x9619 0x9619 0x9622 0x9622 0x9622
                    0x962b 0x962b 0x962b 0x9633 0x9633 0x9633
                    0x963c 0x963c 0x963c 0x9645 0x9645 0x9645
                    0x964e 0x964e 0x964e 0x9656 0x9656 0x9656
                    0x965f 0x965f 0x965f 0x9668 0x9668 0x9668
                    0x9671 0x9671 0x9671 0x9679 0x9679 0x9679
                    0x9682 0x9682 0x9682 0x968b 0x968b 0x968b
                    0x9693 0x9693 0x9693 0x969c 0x969c 0x969c
                    0x96a5 0x96a5 0x96a5 0x96ad 0x96ad 0x96ad
                    0x96b6 0x96b6 0x96b6 0x96bf 0x96bf 0x96bf
                    0x96c7 0x96c7 0x96c7 0x96d0 0x96d0 0x96d0
                    0x96d9 0x96d9 0x96d9 0x96e1 0x96e1 0x96e1
                    0x96ea 0x96ea 0x96ea 0x96f2 0x96f2 0x96f2
                    0x96fb 0x96fb 0x96fb 0x9704 0x9704 0x9704
                    0x970c 0x970c 0x970c 0x9715 0x9715 0x9715
                    0x971d 0x971d 0x971d 0x9726 0x9726 0x9726
                    0x972e 0x972e 0x972e 0x9737 0x9737 0x9737
                    0x9740 0x9740 0x9740 0x9748 0x9748 0x9748
                    0x9751 0x9751 0x9751 0x9759 0x9759 0x9759
                    0x9762 0x9762 0x9762 0x976a 0x976a 0x976a
                    0x9773 0x9773 0x9773 0x977b 0x977b 0x977b
                    0x9784 0x9784 0x9784 0x978c 0x978c 0x978c
                    0x9795 0x9795 0x9795 0x979d 0x979d 0x979d
                    0x97a6 0x97a6 0x97a6 0x97ae 0x97ae 0x97ae
                    0x97b6 0x97b6 0x97b6 0x97bf 0x97bf 0x97bf
                    0x97c7 0x97c7 0x97c7 0x97d0 0x97d0 0x97d0
                    0x97d8 0x97d8 0x97d8 0x97e1 0x97e1 0x97e1
                    0x97e9 0x97e9 0x97e9 0x97f1 0x97f1 0x97f1
                    0x97fa 0x97fa 0x97fa 0x9802 0x9802 0x9802
                    0x980b 0x980b 0x980b 0x9813 0x9813 0x9813
                    0x981b 0x981b 0x981b 0x9824 0x9824 0x9824
                    0x982c 0x982c 0x982c 0x9834 0x9834 0x9834
                    0x983d 0x983d 0x983d 0x9845 0x9845 0x9845
                    0x984d 0x984d 0x984d 0x9856 0x9856 0x9856
                    0x985e 0x985e 0x985e 0x9866 0x9866 0x9866
                    0x986f 0x986f 0x986f 0x9877 0x9877 0x9877
                    0x987f 0x987f 0x987f 0x9888 0x9888 0x9888
                    0x9890 0x9890 0x9890 0x9898 0x9898 0x9898
                    0x98a0 0x98a0 0x98a0 0x98a9 0x98a9 0x98a9
                    0x98b1 0x98b1 0x98b1 0x98b9 0x98b9 0x98b9
                    0x98c1 0x98c1 0x98c1 0x98ca 0x98ca 0x98ca
                    0x98d2 0x98d2 0x98d2 0x98da 0x98da 0x98da
                    0x98e2 0x98e2 0x98e2 0x98eb 0x98eb 0x98eb
                    0x98f3 0x98f3 0x98f3 0x98fb 0x98fb 0x98fb
                    0x9903 0x9903 0x9903 0x990b 0x990b 0x990b
                    0x9914 0x9914 0x9914 0x991c 0x991c 0x991c
                    0x9924 0x9924 0x9924 0x992c 0x992c 0x992c
                    0x9934 0x9934 0x9934 0x993c 0x993c 0x993c
                    0x9945 0x9945 0x9945 0x994d 0x994d 0x994d
                    0x9955 0x9955 0x9955 0x995d 0x995d 0x995d
                    0x9965 0x9965 0x9965 0x996d 0x996d 0x996d
                    0x9975 0x9975 0x9975 0x997d 0x997d 0x997d
                    0x9986 0x9986 0x9986 0x998e 0x998e 0x998e
                    0x9996 0x9996 0x9996 0x999e 0x999e 0x999e
                    0x99a6 0x99a6 0x99a6 0x99ae 0x99ae 0x99ae
                    0x99b6 0x99b6 0x99b6 0x99be 0x99be 0x99be
                    0x99c6 0x99c6 0x99c6 0x99ce 0x99ce 0x99ce
                    0x99d6 0x99d6 0x99d6 0x99de 0x99de 0x99de
                    0x99e6 0x99e6 0x99e6 0x99ee 0x99ee 0x99ee
                    0x99f6 0x99f6 0x99f6 0x99fe 0x99fe 0x99fe
                    0x9a06 0x9a06 0x9a06 0x9a0e 0x9a0e 0x9a0e
                    0x9a16 0x9a16 0x9a16 0x9a1e 0x9a1e 0x9a1e
                    0x9a26 0x9a26 0x9a26 0x9a2e 0x9a2e 0x9a2e
                    0x9a36 0x9a36 0x9a36 0x9a3e 0x9a3e 0x9a3e
                    0x9a46 0x9a46 0x9a46 0x9a4e 0x9a4e 0x9a4e
                    0x9a56 0x9a56 0x9a56 0x9a5e 0x9a5e 0x9a5e
                    0x9a66 0x9a66 0x9a66 0x9a6e 0x9a6e 0x9a6e
                    0x9a76 0x9a76 0x9a76 0x9a7e 0x9a7e 0x9a7e
                    0x9a86 0x9a86 0x9a86 0x9a8e 0x9a8e 0x9a8e
                    0x9a96 0x9a96 0x9a96 0x9a9d 0x9a9d 0x9a9d
                    0x9aa5 0x9aa5 0x9aa5 0x9aad 0x9aad 0x9aad
                    0x9ab5 0x9ab5 0x9ab5 0x9abd 0x9abd 0x9abd
                    0x9ac5 0x9ac5 0x9ac5 0x9acd 0x9acd 0x9acd
                    0x9ad5 0x9ad5 0x9ad5 0x9adc 0x9adc 0x9adc
                    0x9ae4 0x9ae4 0x9ae4 0x9aec 0x9aec 0x9aec
                    0x9af4 0x9af4 0x9af4 0x9afc 0x9afc 0x9afc
                    0x9b04 0x9b04 0x9b04 0x9b0c 0x9b0c 0x9b0c
                    0x9b13 0x9b13 0x9b13 0x9b1b 0x9b1b 0x9b1b
                    0x9b23 0x9b23 0x9b23 0x9b2b 0x9b2b 0x9b2b
                    0x9b33 0x9b33 0x9b33 0x9b3a 0x9b3a 0x9b3a
                    0x9b42 0x9b42 0x9b42 0x9b4a 0x9b4a 0x9b4a
                    0x9b52 0x9b52 0x9b52 0x9b59 0x9b59 0x9b59
                    0x9b61 0x9b61 0x9b61 0x9b69 0x9b69 0x9b69
                    0x9b71 0x9b71 0x9b71 0x9b79 0x9b79 0x9b79
                    0x9b80 0x9b80 0x9b80 0x9b88 0x9b88 0x9b88
                    0x9b90 0x9b90 0x9b90 0x9b97 0x9b97 0x9b97
                    0x9b9f 0x9b9f 0x9b9f 0x9ba7 0x9ba7 0x9ba7
                    0x9baf 0x9baf 0x9baf 0x9bb6 0x9bb6 0x9bb6
                    0x9bbe 0x9bbe 0x9bbe 0x9bc6 0x9bc6 0x9bc6
                    0x9bcd 0x9bcd 0x9bcd 0x9bd5 0x9bd5 0x9bd5
                    0x9bdd 0x9bdd 0x9bdd 0x9be5 0x9be5 0x9be5
                    0x9bec 0x9bec 0x9bec 0x9bf4 0x9bf4 0x9bf4
                    0x9bfc 0x9bfc 0x9bfc 0x9c03 0x9c03 0x9c03
                    0x9c0b 0x9c0b 0x9c0b 0x9c12 0x9c12 0x9c12
                    0x9c1a 0x9c1a 0x9c1a 0x9c22 0x9c22 0x9c22
                    0x9c29 0x9c29 0x9c29 0x9c31 0x9c31 0x9c31
                    0x9c39 0x9c39 0x9c39 0x9c40 0x9c40 0x9c40
                    0x9c48 0x9c48 0x9c48 0x9c50 0x9c50 0x9c50
                    0x9c57 0x9c57 0x9c57 0x9c5f 0x9c5f 0x9c5f
                    0x9c66 0x9c66 0x9c66 0x9c6e 0x9c6e 0x9c6e
                    0x9c75 0x9c75 0x9c75 0x9c7d 0x9c7d 0x9c7d
                    0x9c85 0x9c85 0x9c85 0x9c8c 0x9c8c 0x9c8c
                    0x9c94 0x9c94 0x9c94 0x9c9b 0x9c9b 0x9c9b
                    0x9ca3 0x9ca3 0x9ca3 0x9caa 0x9caa 0x9caa
                    0x9cb2 0x9cb2 0x9cb2 0x9cba 0x9cba 0x9cba
                    0x9cc1 0x9cc1 0x9cc1 0x9cc9 0x9cc9 0x9cc9
                    0x9cd0 0x9cd0 0x9cd0 0x9cd8 0x9cd8 0x9cd8
                    0x9cdf 0x9cdf 0x9cdf 0x9ce7 0x9ce7 0x9ce7
                    0x9cee 0x9cee 0x9cee 0x9cf6 0x9cf6 0x9cf6
                    0x9cfd 0x9cfd 0x9cfd 0x9d05 0x9d05 0x9d05
                    0x9d0c 0x9d0c 0x9d0c 0x9d14 0x9d14 0x9d14
                    0x9d1b 0x9d1b 0x9d1b 0x9d23 0x9d23 0x9d23
                    0x9d2a 0x9d2a 0x9d2a 0x9d32 0x9d32 0x9d32
                    0x9d39 0x9d39 0x9d39 0x9d40 0x9d40 0x9d40
                    0x9d48 0x9d48 0x9d48 0x9d4f 0x9d4f 0x9d4f
                    0x9d57 0x9d57 0x9d57 0x9d5e 0x9d5e 0x9d5e
                    0x9d66 0x9d66 0x9d66 0x9d6d 0x9d6d 0x9d6d
                    0x9d75 0x9d75 0x9d75 0x9d7c 0x9d7c 0x9d7c
                    0x9d83 0x9d83 0x9d83 0x9d8b 0x9d8b 0x9d8b
                    0x9d92 0x9d92 0x9d92 0x9d9a 0x9d9a 0x9d9a
                    0x9da1 0x9da1 0x9da1 0x9da8 0x9da8 0x9da8
                    0x9db0 0x9db0 0x9db0 0x9db7 0x9db7 0x9db7
                    0x9dbe 0x9dbe 0x9dbe 0x9dc6 0x9dc6 0x9dc6
                    0x9dcd 0x9dcd 0x9dcd 0x9dd5 0x9dd5 0x9dd5
                    0x9ddc 0x9ddc 0x9ddc 0x9de3 0x9de3 0x9de3
                    0x9deb 0x9deb 0x9deb 0x9df2 0x9df2 0x9df2
                    0x9df9 0x9df9 0x9df9 0x9e01 0x9e01 0x9e01
                    0x9e08 0x9e08 0x9e08 0x9e0f 0x9e0f 0x9e0f
                    0x9e17 0x9e17 0x9e17 0x9e1e 0x9e1e 0x9e1e
                    0x9e25 0x9e25 0x9e25 0x9e2d 0x9e2d 0x9e2d
                    0x9e34 0x9e34 0x9e34 0x9e3b 0x9e3b 0x9e3b
                    0x9e43 0x9e43 0x9e43 0x9e4a 0x9e4a 0x9e4a
                    0x9e51 0x9e51 0x9e51 0x9e58 0x9e58 0x9e58
                    0x9e60 0x9e60 0x9e60 0x9e67 0x9e67 0x9e67
                    0x9e6e 0x9e6e 0x9e6e 0x9e75 0x9e75 0x9e75
                    0x9e7d 0x9e7d 0x9e7d 0x9e84 0x9e84 0x9e84
                    0x9e8b 0x9e8b 0x9e8b 0x9e92 0x9e92 0x9e92
                    0x9e9a 0x9e9a 0x9e9a 0x9ea1 0x9ea1 0x9ea1
                    0x9ea8 0x9ea8 0x9ea8 0x9eaf 0x9eaf 0x9eaf
                    0x9eb7 0x9eb7 0x9eb7 0x9ebe 0x9ebe 0x9ebe
                    0x9ec5 0x9ec5 0x9ec5 0x9ecc 0x9ecc 0x9ecc
                    0x9ed4 0x9ed4 0x9ed4 0x9edb 0x9edb 0x9edb
                    0x9ee2 0x9ee2 0x9ee2 0x9ee9 0x9ee9 0x9ee9
                    0x9ef0 0x9ef0 0x9ef0 0x9ef7 0x9ef7 0x9ef7
                    0x9eff 0x9eff 0x9eff 0x9f06 0x9f06 0x9f06
                    0x9f0d 0x9f0d 0x9f0d 0x9f14 0x9f14 0x9f14
                    0x9f1b 0x9f1b 0x9f1b 0x9f23 0x9f23 0x9f23
                    0x9f2a 0x9f2a 0x9f2a 0x9f31 0x9f31 0x9f31
                    0x9f38 0x9f38 0x9f38 0x9f3f 0x9f3f 0x9f3f
                    0x9f46 0x9f46 0x9f46 0x9f4d 0x9f4d 0x9f4d
                    0x9f55 0x9f55 0x9f55 0x9f5c 0x9f5c 0x9f5c
                    0x9f63 0x9f63 0x9f63 0x9f6a 0x9f6a 0x9f6a
                    0x9f71 0x9f71 0x9f71 0x9f78 0x9f78 0x9f78
                    0x9f7f 0x9f7f 0x9f7f 0x9f86 0x9f86 0x9f86
                    0x9f8d 0x9f8d 0x9f8d 0x9f95 0x9f95 0x9f95
                    0x9f9c 0x9f9c 0x9f9c 0x9fa3 0x9fa3 0x9fa3
                    0x9faa 0x9faa 0x9faa 0x9fb1 0x9fb1 0x9fb1
                    0x9fb8 0x9fb8 0x9fb8 0x9fbf 0x9fbf 0x9fbf
                    0x9fc6 0x9fc6 0x9fc6 0x9fcd 0x9fcd 0x9fcd
                    0x9fd4 0x9fd4 0x9fd4 0x9fdb 0x9fdb 0x9fdb
                    0x9fe2 0x9fe2 0x9fe2 0x9fe9 0x9fe9 0x9fe9
                    0x9ff0 0x9ff0 0x9ff0 0x9ff7 0x9ff7 0x9ff7
                    0x9ffe 0x9ffe 0x9ffe>;
        };
    };
};

Please use the following code for panning DSI buffer.

int main()
{
        int fd;
        struct fb_var_screeninfo var;
        unsigned int count = 0;
        int ret;

        fd = open("/dev/fb0", O_RDWR);

        for (;;) {
                ret = ioctl(fd, FBIOGET_VSCREENINFO, &var);
                if (ret != 0) printf("err\n");

                if (var.yoffset == 1080) {
                        var.yoffset = 0;
                }
                else {
                        var.yoffset = 1080;
                }

                ret = ioctl(fd, FBIOPAN_DISPLAY, &var);
                if (ret != 0) printf("err\n");
                printf("count = %d\n", count);
                count++;
        }

        return 0;
}

k.doi,

Could you also test that if tx1 even has better performance for panning fb on rel-28.2.1?

Instead of using DSI, I wonder if HDMI is also able to hit such issue?

Could you help try? If HDMI also has no fast fb panning, I could draw more attention from internal team for this issue.

Has this issue been resolved?
I am testing FB double buffer function using FBIOPAN_DISPLAY on HDMI.
HDMI also does not have fb panning in R28.2. (1sec delay)
The test code works normally on tx1 in Jetpack 2.3.

I would also like to know if this issue has been resolved. We are also having the same issue on a TX2 R28.2

Hi joshv1ntv,

Please try with the latest release - R28.3.

Thanks