[radeon-alex:amd-20.45 2127/2427] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1880:39: sparse: sparse: incorrect type in argument 1 (different base types)

Deucher, Alexander Alexander.Deucher at amd.com
Tue Dec 15 14:24:50 UTC 2020


[AMD Public Use]

The test robot should probably not be testing the amd-20.xx branches in the first place.  They are just mirrors of our packaged drivers so they contain a bunch of stuff that will never go upstream like kernel compatibility layers and dkms support.

Alex

________________________________
From: Qinglang Miao <miaoqinglang at huawei.com>
Sent: Tuesday, December 15, 2020 3:21 AM
To: kernel test robot <lkp at intel.com>; Deucher, Alexander <Alexander.Deucher at amd.com>
Cc: kbuild-all at lists.01.org <kbuild-all at lists.01.org>; dri-devel at lists.freedesktop.org <dri-devel at lists.freedesktop.org>; Xiong, Yang (Felix) <Yang.Xiong at amd.com>
Subject: Re: [radeon-alex:amd-20.45 2127/2427] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1880:39: sparse: sparse: incorrect type in argument 1 (different base types)

Hi Alex,

I think it's not a valid report from kernel test robot, for __le16 ought
to be the right type for cpu_to_le16. The sparse warnings seems not
right so I did't try effort to reproduce it.

otherwise, when I take a carful look at this patch, an unconditional
braces exists and I'm not sure about its benefit.

if (bp_params->flags.INTERLACE) {
                params.susModeMiscInfo.usAccess =
                cpu_to_le16(le16_to_cpu(params.susModeMiscInfo.usAccess) |
ATOM_INTERLACE);
                {
                        le16_add_cpu(&params.usV_SyncOffset, 1);
                }
}

patch link:
https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.kernel.org%2Flkml%2FCADnq5_PunHA1VHHj7VtEHG6o2Z_Z1WS325y_R9xO%2BgsV_JCOXw%40mail.gmail.com%2F&data=04%7C01%7Calexander.deucher%40amd.com%7Cc9a5d9273f464451b1f808d8a0d271fe%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637436173010744629%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=1TmtjBXJLf60sxq%2BH%2BVmMhnRV%2FuyIKQD2BYDVWMxmUA%3D&reserved=0

How do you think?

在 2020/12/15 14:44, kernel test robot 写道:
> tree:   git://people.freedesktop.org/~agd5f/linux.git amd-20.45
> head:   a3950d94b046fb206e58fd3ec717f071c0203ba3
> commit: c82b6c9ed412fb7009b02dd82e50ee24f451e9a8 [2127/2427] drm/amd/display: convert to use le16_add_cpu()
> config: arc-randconfig-s031-20201214 (attached as .config)
> compiler: arc-elf-gcc (GCC) 9.3.0
> reproduce:
>          wget https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fraw.githubusercontent.com%2Fintel%2Flkp-tests%2Fmaster%2Fsbin%2Fmake.cross&data=04%7C01%7Calexander.deucher%40amd.com%7Cc9a5d9273f464451b1f808d8a0d271fe%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637436173010754583%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=DCHDVGjiXhPDoCTofTf0pxHspdydDs1JXneGoSGPgFQ%3D&reserved=0 -O ~/bin/make.cross
>          chmod +x ~/bin/make.cross
>          # apt-get install sparse
>          # sparse version: v0.6.3-184-g1b896707-dirty
>          git remote add radeon-alex git://people.freedesktop.org/~agd5f/linux.git
>          git fetch --no-tags radeon-alex amd-20.45
>          git checkout c82b6c9ed412fb7009b02dd82e50ee24f451e9a8
>          # save the attached .config to linux build tree
>          COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arc
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp at intel.com>
>
>
> "sparse warnings: (new ones prefixed by >>)"
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:879:43: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] ulSymClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:879:43: sparse:     expected unsigned int [addressable] [assigned] [usertype] ulSymClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:879:43: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:956:40: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usRefDiv @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:956:40: sparse:     expected unsigned short [addressable] [assigned] [usertype] usRefDiv
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:956:40: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:958:39: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usFbDiv @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:958:39: sparse:     expected unsigned short [addressable] [assigned] [usertype] usFbDiv
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:958:39: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:966:44: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usPixelClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:966:44: sparse:     expected unsigned short [addressable] [assigned] [usertype] usPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:966:44: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1029:40: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usFbDiv @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1029:40: sparse:     expected unsigned short [addressable] [assigned] [usertype] usFbDiv
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1029:40: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1031:47: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] ulFbDivDecFrac @@     got restricted __le32 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1031:47: sparse:     expected unsigned int [addressable] [assigned] [usertype] ulFbDivDecFrac
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1031:47: sparse:     got restricted __le32 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1044:45: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usPixelClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1044:45: sparse:     expected unsigned short [addressable] [assigned] [usertype] usPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1044:45: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1105:40: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usFbDiv @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1105:40: sparse:     expected unsigned short [addressable] [assigned] [usertype] usFbDiv
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1105:40: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1107:47: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] ulFbDivDecFrac @@     got restricted __le32 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1107:47: sparse:     expected unsigned int [addressable] [assigned] [usertype] ulFbDivDecFrac
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1107:47: sparse:     got restricted __le32 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1120:60: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] ulPixelClock:24 @@     got restricted __le32 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1120:60: sparse:     expected unsigned int [addressable] [assigned] [usertype] ulPixelClock:24
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1120:60: sparse:     got restricted __le32 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1183:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] ulPixelClock @@     got restricted __le32 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1183:34: sparse:     expected unsigned int [addressable] [assigned] [usertype] ulPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1183:34: sparse:     got restricted __le32 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1272:43: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumPercentage @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1272:43: sparse:     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumPercentage
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1272:43: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1321:51: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumPercentage @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1321:51: sparse:     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumPercentage
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1321:51: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1323:45: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumStep @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1323:45: sparse:     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumStep
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1323:45: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1337:47: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumAmount @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1337:47: sparse:     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumAmount
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1337:47: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1391:51: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumAmountFrac @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1391:51: sparse:     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumAmountFrac
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1391:51: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1393:45: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumStep @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1393:45: sparse:     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumStep
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1393:45: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1406:47: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumAmount @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1406:47: sparse:     expected unsigned short [addressable] [assigned] [usertype] usSpreadSpectrumAmount
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1406:47: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1465:29: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [usertype] usPixelClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1465:29: sparse:     expected unsigned short [usertype] usPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1465:29: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1488:36: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [usertype] usPixelClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1488:36: sparse:     expected unsigned short [addressable] [usertype] usPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1488:36: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1508:43: sparse: sparse: cast to restricted __le32
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1583:30: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [usertype] usPixelClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1583:30: sparse:     expected unsigned short [usertype] usPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1583:30: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1826:25: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usH_Size @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1826:25: sparse:     expected unsigned short [assigned] [usertype] usH_Size
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1826:25: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1828:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usH_Blanking_Time @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1828:34: sparse:     expected unsigned short [assigned] [usertype] usH_Blanking_Time
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1828:34: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1831:25: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_Size @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1831:25: sparse:     expected unsigned short [assigned] [usertype] usV_Size
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1831:25: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1833:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_Blanking_Time @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1833:34: sparse:     expected unsigned short [assigned] [usertype] usV_Blanking_Time
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1833:34: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1838:31: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usH_SyncOffset @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1838:31: sparse:     expected unsigned short [assigned] [usertype] usH_SyncOffset
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1838:31: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1840:30: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usH_SyncWidth @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1840:30: sparse:     expected unsigned short [assigned] [usertype] usH_SyncWidth
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1840:30: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1844:31: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_SyncOffset @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1844:31: sparse:     expected unsigned short [assigned] [usertype] usV_SyncOffset
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1844:31: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1846:30: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_SyncWidth @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1846:30: sparse:     expected unsigned short [assigned] [usertype] usV_SyncWidth
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1846:30: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1855:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1854:49: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usAccess @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1854:49: sparse:     expected unsigned short [assigned] [usertype] usAccess
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1854:49: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1859:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1858:49: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usAccess @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1858:49: sparse:     expected unsigned short [assigned] [usertype] usAccess
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1858:49: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1863:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1862:49: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usAccess @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1862:49: sparse:     expected unsigned short [assigned] [usertype] usAccess
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1862:49: sparse:     got restricted __le16 [usertype]
>>> drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1880:39: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected restricted __le16 [usertype] *var @@     got unsigned short * @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1880:39: sparse:     expected restricted __le16 [usertype] *var
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1880:39: sparse:     got unsigned short *
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1886:33: sparse: sparse: cast to restricted __le16
>>> drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1885:49: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usAccess @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1885:49: sparse:     expected unsigned short [addressable] [assigned] [usertype] usAccess
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1885:49: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1752:26: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usH_Total @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1752:26: sparse:     expected unsigned short [assigned] [usertype] usH_Total
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1752:26: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1753:25: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usH_Disp @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1753:25: sparse:     expected unsigned short [assigned] [usertype] usH_Disp
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1753:25: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1754:30: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usH_SyncStart @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1754:30: sparse:     expected unsigned short [assigned] [usertype] usH_SyncStart
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1754:30: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1755:30: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usH_SyncWidth @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1755:30: sparse:     expected unsigned short [assigned] [usertype] usH_SyncWidth
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1755:30: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1756:26: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_Total @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1756:26: sparse:     expected unsigned short [assigned] [usertype] usV_Total
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1756:26: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1757:25: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_Disp @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1757:25: sparse:     expected unsigned short [assigned] [usertype] usV_Disp
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1757:25: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1758:30: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_SyncStart @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1758:30: sparse:     expected unsigned short [assigned] [usertype] usV_SyncStart
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1758:30: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1760:30: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_SyncWidth @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1760:30: sparse:     expected unsigned short [assigned] [usertype] usV_SyncWidth
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1760:30: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1776:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1775:49: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usAccess @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1775:49: sparse:     expected unsigned short [assigned] [usertype] usAccess
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1775:49: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1780:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1779:49: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usAccess @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1779:49: sparse:     expected unsigned short [assigned] [usertype] usAccess
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1779:49: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1784:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1783:49: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usAccess @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1783:49: sparse:     expected unsigned short [assigned] [usertype] usAccess
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1783:49: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1799:38: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usV_SyncStart @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1799:38: sparse:     expected unsigned short [assigned] [usertype] usV_SyncStart
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1799:38: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1805:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1804:49: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] usAccess @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1804:49: sparse:     expected unsigned short [assigned] [usertype] usAccess
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:1804:49: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2047:40: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] usPixelClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2047:40: sparse:     expected unsigned short [addressable] [assigned] [usertype] usPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2047:40: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2079:44: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] ulDispEngClkFreq @@     got restricted __le32 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2079:44: sparse:     expected unsigned int [addressable] [assigned] [usertype] ulDispEngClkFreq
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2079:44: sparse:     got restricted __le32 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2092:44: sparse: sparse: cast to restricted __le32
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2174:44: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [usertype] usConnectorId @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2174:44: sparse:     expected unsigned short [usertype] usConnectorId
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2174:44: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2183:43: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [usertype] usPixelClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2183:43: sparse:     expected unsigned short [usertype] usPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2183:43: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2207:43: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [usertype] usPixelClock @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2207:43: sparse:     expected unsigned short [usertype] usPixelClock
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2207:43: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2340:45: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] ulDCEClkFreq @@     got restricted __le32 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2340:45: sparse:     expected unsigned int [addressable] [assigned] [usertype] ulDCEClkFreq
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2340:45: sparse:     got restricted __le32 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c:2344:53: sparse: sparse: cast to restricted __le32
> --
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:413:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] pixclk_100hz @@     got restricted __le32 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:413:34: sparse:     expected unsigned int [addressable] [assigned] [usertype] pixclk_100hz
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:413:34: sparse:     got restricted __le32 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:509:23: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] h_size @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:509:23: sparse:     expected unsigned short [assigned] [usertype] h_size
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:509:23: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:511:32: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] h_blanking_time @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:511:32: sparse:     expected unsigned short [assigned] [usertype] h_blanking_time
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:511:32: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:515:23: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] v_size @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:515:23: sparse:     expected unsigned short [assigned] [usertype] v_size
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:515:23: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:517:32: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] v_blanking_time @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:517:32: sparse:     expected unsigned short [assigned] [usertype] v_blanking_time
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:517:32: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:524:29: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] h_syncoffset @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:524:29: sparse:     expected unsigned short [assigned] [usertype] h_syncoffset
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:524:29: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:527:28: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] h_syncwidth @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:527:28: sparse:     expected unsigned short [assigned] [usertype] h_syncwidth
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:527:28: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:532:29: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] v_syncoffset @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:532:29: sparse:     expected unsigned short [assigned] [usertype] v_syncoffset
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:532:29: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:535:28: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] v_syncwidth @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:535:28: sparse:     expected unsigned short [assigned] [usertype] v_syncwidth
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:535:28: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:544:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:543:37: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] modemiscinfo @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:543:37: sparse:     expected unsigned short [assigned] [usertype] modemiscinfo
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:543:37: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:549:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:548:37: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] modemiscinfo @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:548:37: sparse:     expected unsigned short [assigned] [usertype] modemiscinfo
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:548:37: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:554:33: sparse: sparse: cast to restricted __le16
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:553:37: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [assigned] [usertype] modemiscinfo @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:553:37: sparse:     expected unsigned short [assigned] [usertype] modemiscinfo
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:553:37: sparse:     got restricted __le16 [usertype]
>>> drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:572:39: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected restricted __le16 [usertype] *var @@     got unsigned short * @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:572:39: sparse:     expected restricted __le16 [usertype] *var
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:572:39: sparse:     got unsigned short *
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:578:25: sparse: sparse: cast to restricted __le16
>>> drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:577:37: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [addressable] [assigned] [usertype] modemiscinfo @@     got restricted __le16 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:577:37: sparse:     expected unsigned short [addressable] [assigned] [usertype] modemiscinfo
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:577:37: sparse:     got restricted __le16 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:851:43: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [addressable] [assigned] [usertype] dceclk_10khz @@     got restricted __le32 [usertype] @@
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:851:43: sparse:     expected unsigned int [addressable] [assigned] [usertype] dceclk_10khz
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:851:43: sparse:     got restricted __le32 [usertype]
>     drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:860:53: sparse: sparse: cast to restricted __le32
>
> vim +1880 drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.c
>
>    1812
>    1813       static enum bp_result set_crtc_using_dtd_timing_v3(
>    1814               struct bios_parser *bp,
>    1815               struct bp_hw_crtc_timing_parameters *bp_params)
>    1816       {
>    1817               enum bp_result result = BP_RESULT_FAILURE;
>    1818               SET_CRTC_USING_DTD_TIMING_PARAMETERS params = {0};
>    1819               uint8_t atom_controller_id;
>    1820
>    1821               if (bp->cmd_helper->controller_id_to_atom(
>    1822                               bp_params->controller_id, &atom_controller_id))
>    1823                       params.ucCRTC = atom_controller_id;
>    1824
>    1825               /* bios usH_Size wants h addressable size */
>    1826               params.usH_Size = cpu_to_le16((uint16_t)bp_params->h_addressable);
>    1827               /* bios usH_Blanking_Time wants borders included in blanking */
>    1828               params.usH_Blanking_Time =
>    1829                               cpu_to_le16((uint16_t)(bp_params->h_total - bp_params->h_addressable));
>    1830               /* bios usV_Size wants v addressable size */
>    1831               params.usV_Size = cpu_to_le16((uint16_t)bp_params->v_addressable);
>    1832               /* bios usV_Blanking_Time wants borders included in blanking */
>    1833               params.usV_Blanking_Time =
>    1834                               cpu_to_le16((uint16_t)(bp_params->v_total - bp_params->v_addressable));
>    1835               /* bios usHSyncOffset is the offset from the end of h addressable,
>    1836                * our horizontalSyncStart is the offset from the beginning
>    1837                * of h addressable */
>    1838               params.usH_SyncOffset =
>    1839                               cpu_to_le16((uint16_t)(bp_params->h_sync_start - bp_params->h_addressable));
>    1840               params.usH_SyncWidth = cpu_to_le16((uint16_t)bp_params->h_sync_width);
>    1841               /* bios usHSyncOffset is the offset from the end of v addressable,
>    1842                * our verticalSyncStart is the offset from the beginning of
>    1843                * v addressable */
>    1844               params.usV_SyncOffset =
>    1845                               cpu_to_le16((uint16_t)(bp_params->v_sync_start - bp_params->v_addressable));
>    1846               params.usV_SyncWidth = cpu_to_le16((uint16_t)bp_params->v_sync_width);
>    1847
>    1848               /* we assume that overscan from original timing does not get bigger
>    1849                * than 255
>    1850                * we will program all the borders in the Set CRTC Overscan call below
>    1851                */
>    1852
>    1853               if (0 == bp_params->flags.HSYNC_POSITIVE_POLARITY)
>    1854                       params.susModeMiscInfo.usAccess =
>    1855                                       cpu_to_le16(le16_to_cpu(params.susModeMiscInfo.usAccess) | ATOM_HSYNC_POLARITY);
>    1856
>    1857               if (0 == bp_params->flags.VSYNC_POSITIVE_POLARITY)
>    1858                       params.susModeMiscInfo.usAccess =
>    1859                                       cpu_to_le16(le16_to_cpu(params.susModeMiscInfo.usAccess) | ATOM_VSYNC_POLARITY);
>    1860
>    1861               if (bp_params->flags.INTERLACE) {
>    1862                       params.susModeMiscInfo.usAccess =
>    1863                                       cpu_to_le16(le16_to_cpu(params.susModeMiscInfo.usAccess) | ATOM_INTERLACE);
>    1864
>    1865                       /* original DAL code has this condition to apply this
>    1866                        * for non-TV/CV only
>    1867                        * due to complex MV testing for possible impact
>    1868                        * if ( pACParameters->signal != SignalType_YPbPr &&
>    1869                        *  pACParameters->signal != SignalType_Composite &&
>    1870                        *  pACParameters->signal != SignalType_SVideo)
>    1871                        */
>    1872                       {
>    1873                               /* HW will deduct 0.5 line from 2nd feild.
>    1874                                * i.e. for 1080i, it is 2 lines for 1st field,
>    1875                                * 2.5 lines for the 2nd feild. we need input as 5
>    1876                                * instead of 4.
>    1877                                * but it is 4 either from Edid data (spec CEA 861)
>    1878                                * or CEA timing table.
>    1879                                */
>> 1880                         le16_add_cpu(&params.usV_SyncOffset, 1);
>    1881                       }
>    1882               }
>    1883
>    1884               if (bp_params->flags.HORZ_COUNT_BY_TWO)
>> 1885                 params.susModeMiscInfo.usAccess =
>    1886                                       cpu_to_le16(le16_to_cpu(params.susModeMiscInfo.usAccess) | ATOM_DOUBLE_CLOCK_MODE);
>    1887
>    1888               if (EXEC_BIOS_CMD_TABLE(SetCRTC_UsingDTDTiming, params))
>    1889                       result = BP_RESULT_OK;
>    1890
>    1891               return result;
>    1892       }
>    1893
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.01.org%2Fhyperkitty%2Flist%2Fkbuild-all%40lists.01.org&data=04%7C01%7Calexander.deucher%40amd.com%7Cc9a5d9273f464451b1f808d8a0d271fe%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637436173010754583%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YyHY6sZPmHM14xXSHmp9tcYJpzeO842YlCqX1XISOkw%3D&reserved=0
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20201215/13932845/attachment-0001.htm>


More information about the dri-devel mailing list