[radeon-alex:drm-next-4.20-wip 168/184] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.c:809:67: sparse: dubious: x | !y
kbuild test robot
lkp at intel.com
Tue Aug 21 23:58:23 UTC 2018
tree: git://people.freedesktop.org/~agd5f/linux.git drm-next-4.20-wip
head: 2034a5eca0c640259d13dbd4c29ca8ce712055cc
commit: 14dc68a3fb45425643b608aee8c4fb9f7145c99e [168/184] drm/amd/display: Create new i2c resource
reproduce:
# apt-get install sparse
git checkout 14dc68a3fb45425643b608aee8c4fb9f7145c99e
make ARCH=x86_64 allmodconfig
make C=1 CF=-D__CHECK_ENDIAN__
sparse warnings: (new ones prefixed by >>)
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.c:89:6: sparse: symbol 'dce_i2c_hw_engine_acquire_engine' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.c:113:6: sparse: symbol 'dce_i2c_engine_acquire_hw' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.c:301:35: sparse: symbol 'dce_i2c_hw_engine_wait_on_operation_result' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.c:369:10: sparse: symbol 'get_reference_clock' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.c:677:6: sparse: symbol 'dce_i2c_hw_engine_submit_request' was not declared. Should it be static?
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.c:809:67: sparse: dubious: x | !y
--
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.c:73:35: sparse: symbol 'dce_i2c_sw_engine_get_channel_status' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.c:371:6: sparse: symbol 'dce_i2c_sw_engine_set_speed' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.c:385:6: sparse: symbol 'dce_i2c_sw_engine_acquire_engine' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.c:401:6: sparse: symbol 'dce_i2c_engine_acquire_sw' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.c:429:6: sparse: symbol 'dce_i2c_sw_engine_submit_channel_request' was not declared. Should it be static?
drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.c:472:6: sparse: symbol 'dce_i2c_sw_engine_submit_request' was not declared. Should it be static?
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.c:566:67: sparse: dubious: x | !y
vim +809 drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.c
782
783 bool dce_i2c_submit_command_hw(
784 struct resource_pool *pool,
785 struct ddc *ddc,
786 struct i2c_command *cmd,
787 struct dce_i2c_hw *dce_i2c_hw)
788 {
789 uint8_t index_of_payload = 0;
790 bool result;
791
792 dce_i2c_hw->funcs->set_speed(dce_i2c_hw, cmd->speed);
793
794 result = true;
795
796 while (index_of_payload < cmd->number_of_payloads) {
797 bool mot = (index_of_payload != cmd->number_of_payloads - 1);
798
799 struct i2c_payload *payload = cmd->payloads + index_of_payload;
800
801 struct dce_i2c_transaction_request request = { 0 };
802
803 request.operation = payload->write ?
804 DCE_I2C_TRANSACTION_WRITE :
805 DCE_I2C_TRANSACTION_READ;
806
807 request.payload.address_space =
808 DCE_I2C_TRANSACTION_ADDRESS_SPACE_I2C;
> 809 request.payload.address = (payload->address << 1) |
810 !payload->write;
811 request.payload.length = payload->length;
812 request.payload.data = payload->data;
813
814
815 if (!dce_i2c_hw_engine_submit_request(
816 dce_i2c_hw, &request, mot)) {
817 result = false;
818 break;
819 }
820
821
822
823 ++index_of_payload;
824 }
825
826 release_engine_dce_hw(pool, dce_i2c_hw);
827
828 return result;
829 }
830 static const struct dce_i2c_hw_funcs dce100_i2c_hw_funcs = {
831 .setup_engine = setup_engine_hw_dce100,
832 .set_speed = set_speed_hw_dce100,
833 .get_speed = get_speed_hw,
834 .release_engine = release_engine_hw,
835 .process_transaction = process_transaction_hw_dce100,
836 .process_channel_reply = process_channel_reply_hw_dce100,
837 .is_hw_busy = is_hw_busy,
838 .get_channel_status = get_channel_status_hw,
839 .execute_transaction = execute_transaction_hw,
840 .disable_i2c_hw_engine = disable_i2c_hw_engine
841 };
842 static const struct dce_i2c_hw_funcs dce80_i2c_hw_funcs = {
843 .setup_engine = setup_engine_hw_dce80,
844 .set_speed = set_speed_hw_dce80,
845 .get_speed = get_speed_hw,
846 .release_engine = release_engine_hw,
847 .process_transaction = process_transaction_hw_dce80,
848 .process_channel_reply = process_channel_reply_hw_dce80,
849 .is_hw_busy = is_hw_busy,
850 .get_channel_status = get_channel_status_hw,
851 .execute_transaction = execute_transaction_hw,
852 .disable_i2c_hw_engine = disable_i2c_hw_engine
853 };
854
855
856
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
More information about the dri-devel
mailing list