All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: drivers/gpu/drm/rockchip/rockchip_rgb.c:153:2: warning: Value stored to 'connector' is never read [clang-analyzer-deadcode.DeadStores]
Date: Thu, 09 Dec 2021 03:18:01 +0800	[thread overview]
Message-ID: <202112090339.fDIla36M-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 23155 bytes --]

CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Alex Bee <knaerzche@gmail.com>
CC: Heiko Stuebner <heiko@sntech.de>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2a987e65025e2b79c6d453b78cb5985ac6e5eb26
commit: 2e87bf389e1396b9f1360e1a7cdc27f423f56463 drm/rockchip: add DRM_BRIDGE_ATTACH_NO_CONNECTOR flag to drm_bridge_attach
date:   3 months ago
:::::: branch date: 20 hours ago
:::::: commit date: 3 months ago
config: riscv-randconfig-c006-20211206 (https://download.01.org/0day-ci/archive/20211209/202112090339.fDIla36M-lkp(a)intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project f50be8eb0a12a61d23db6cda452c693001d76898)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install riscv cross compiling tool for clang build
        # apt-get install binutils-riscv64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2e87bf389e1396b9f1360e1a7cdc27f423f56463
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 2e87bf389e1396b9f1360e1a7cdc27f423f56463
        # save the config file to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=riscv clang-analyzer 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


clang-analyzer warnings: (new ones prefixed by >>)
   drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.c:154:2: note: Calling 'nvkm_rdaux'
           nvkm_rdaux(dp->aux, DPCD_LC02, &sink_tp, 1);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/nouveau/include/nvkm/subdev/i2c.h:171:6: note: Assuming 'ret' is not equal to 0
           if (ret == 0) {
               ^~~~~~~~
   drivers/gpu/drm/nouveau/include/nvkm/subdev/i2c.h:171:2: note: Taking false branch
           if (ret == 0) {
           ^
   drivers/gpu/drm/nouveau/include/nvkm/subdev/i2c.h:176:2: note: Returning without writing to '*data'
           return ret;
           ^
   drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.c:154:2: note: Returning from 'nvkm_rdaux'
           nvkm_rdaux(dp->aux, DPCD_LC02, &sink_tp, 1);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.c:155:10: note: The left expression of the compound assignment is an uninitialized value. The computed value will also be garbage
           sink_tp &= ~DPCD_LC02_TRAINING_PATTERN_SET;
           ~~~~~~~ ^
   Suppressed 4 warnings (4 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   2 warnings generated.
   Suppressed 2 warnings (2 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   4 warnings generated.
   Suppressed 4 warnings (4 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   15 warnings generated.
   drivers/gpu/drm/radeon/cik.c:2088:4: warning: Value stored to 'err' is never read [clang-analyzer-deadcode.DeadStores]
                           err = -EINVAL;
                           ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2088:4: note: Value stored to 'err' is never read
                           err = -EINVAL;
                           ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2111:4: warning: Value stored to 'err' is never read [clang-analyzer-deadcode.DeadStores]
                           err = -EINVAL;
                           ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2111:4: note: Value stored to 'err' is never read
                           err = -EINVAL;
                           ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2134:4: warning: Value stored to 'err' is never read [clang-analyzer-deadcode.DeadStores]
                           err = -EINVAL;
                           ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2134:4: note: Value stored to 'err' is never read
                           err = -EINVAL;
                           ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2172:4: warning: Value stored to 'err' is never read [clang-analyzer-deadcode.DeadStores]
                           err = -EINVAL;
                           ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2172:4: note: Value stored to 'err' is never read
                           err = -EINVAL;
                           ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2225:5: warning: Value stored to 'err' is never read [clang-analyzer-deadcode.DeadStores]
                                   err = -EINVAL;
                                   ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:2225:5: note: Value stored to 'err' is never read
                                   err = -EINVAL;
                                   ^     ~~~~~~~
   drivers/gpu/drm/radeon/cik.c:3170:6: warning: Value stored to 'gb_addr_config' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
           u32 gb_addr_config = RREG32(GB_ADDR_CONFIG);
               ^~~~~~~~~~~~~~
   drivers/gpu/drm/radeon/cik.c:3170:6: note: Value stored to 'gb_addr_config' during its initialization is never read
           u32 gb_addr_config = RREG32(GB_ADDR_CONFIG);
               ^~~~~~~~~~~~~~
   drivers/gpu/drm/radeon/cik.c:5019:3: warning: Value stored to 'tmp' is never read [clang-analyzer-deadcode.DeadStores]
                   tmp = RREG32(GRBM_SOFT_RESET);
                   ^
   drivers/gpu/drm/radeon/cik.c:5019:3: note: Value stored to 'tmp' is never read
   drivers/gpu/drm/radeon/cik.c:5033:3: warning: Value stored to 'tmp' is never read [clang-analyzer-deadcode.DeadStores]
                   tmp = RREG32(SRBM_SOFT_RESET);
                   ^
   drivers/gpu/drm/radeon/cik.c:5033:3: note: Value stored to 'tmp' is never read
   drivers/gpu/drm/radeon/cik.c:6208:3: warning: Value stored to 'data' is never read [clang-analyzer-deadcode.DeadStores]
                   data = RREG32_UVD_CTX(UVD_CGC_MEM_CTRL);
                   ^
   drivers/gpu/drm/radeon/cik.c:6208:3: note: Value stored to 'data' is never read
   drivers/gpu/drm/radeon/cik.c:6520:3: warning: Value stored to 'data' is never read [clang-analyzer-deadcode.DeadStores]
                   data = RREG32(DB_RENDER_CONTROL);
                   ^
   drivers/gpu/drm/radeon/cik.c:6520:3: note: Value stored to 'data' is never read
   drivers/gpu/drm/radeon/cik.c:7933:4: warning: Value stored to 'queue_id' is never read [clang-analyzer-deadcode.DeadStores]
                           queue_id = (ring_id & 0x7) >> 0;
                           ^          ~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/radeon/cik.c:7933:4: note: Value stored to 'queue_id' is never read
                           queue_id = (ring_id & 0x7) >> 0;
                           ^          ~~~~~~~~~~~~~~~~~~~~
   Suppressed 4 warnings (4 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   drivers/gpu/drm/rockchip/cdn-dp-reg.c:685:2: warning: Value stored to 'ret' is never read [clang-analyzer-deadcode.DeadStores]
           ret = cdn_dp_reg_write(dp, DP_VC_TABLE(15), val);
           ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/cdn-dp-reg.c:685:2: note: Value stored to 'ret' is never read
           ret = cdn_dp_reg_write(dp, DP_VC_TABLE(15), val);
           ^     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   Suppressed 4 warnings (4 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   4 warnings generated.
   Suppressed 4 warnings (4 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
>> drivers/gpu/drm/rockchip/rockchip_rgb.c:153:2: warning: Value stored to 'connector' is never read [clang-analyzer-deadcode.DeadStores]
           connector = &rgb->connector;
           ^           ~~~~~~~~~~~~~~~
   drivers/gpu/drm/rockchip/rockchip_rgb.c:153:2: note: Value stored to 'connector' is never read
           connector = &rgb->connector;
           ^           ~~~~~~~~~~~~~~~
   Suppressed 4 warnings (4 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   4 warnings generated.
   Suppressed 4 warnings (4 in non-user code).
   Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
   5 warnings generated.
   drivers/gpu/drm/qxl/qxl_kms.c:163:24: warning: Array subscript is undefined [clang-analyzer-core.uninitialized.ArraySubscript]
                    (unsigned long long)pci_resource_end(pdev, sb),
                                        ^
   include/drm/drm_print.h:510:31: note: expanded from macro 'DRM_DEBUG_KMS'
           __drm_dbg(DRM_UT_KMS, fmt, ##__VA_ARGS__)
                                        ^~~~~~~~~~~
   include/linux/pci.h:1929:37: note: expanded from macro 'pci_resource_end'
   #define pci_resource_end(dev, bar)      ((dev)->resource[(bar)].end)
                                            ^               ~~~~~
   drivers/gpu/drm/qxl/qxl_kms.c:112:9: note: 'sb' declared without an initial value
           int r, sb;
                  ^~
   drivers/gpu/drm/qxl/qxl_kms.c:116:2: note: Loop condition is false.  Exiting loop
           mutex_init(&qdev->gem.mutex);
           ^
   include/linux/mutex.h:101:32: note: expanded from macro 'mutex_init'
   #define mutex_init(mutex)                                               \
                                                                           ^
   drivers/gpu/drm/qxl/qxl_kms.c:117:2: note: Loop condition is false.  Exiting loop
           mutex_init(&qdev->update_area_mutex);
           ^
   include/linux/mutex.h:101:32: note: expanded from macro 'mutex_init'
   #define mutex_init(mutex)                                               \
                                                                           ^
   drivers/gpu/drm/qxl/qxl_kms.c:118:2: note: Loop condition is false.  Exiting loop
           mutex_init(&qdev->release_mutex);
           ^
   include/linux/mutex.h:101:32: note: expanded from macro 'mutex_init'
   #define mutex_init(mutex)                                               \
                                                                           ^
   drivers/gpu/drm/qxl/qxl_kms.c:119:2: note: Loop condition is false.  Exiting loop
           mutex_init(&qdev->surf_evict_mutex);
           ^
   include/linux/mutex.h:101:32: note: expanded from macro 'mutex_init'
   #define mutex_init(mutex)                                               \
                                                                           ^
   drivers/gpu/drm/qxl/qxl_kms.c:123:19: note: Assuming field 'end' is equal to 0
           qdev->rom_size = pci_resource_len(pdev, 2);
                            ^
   include/linux/pci.h:1932:4: note: expanded from macro 'pci_resource_len'
           ((pci_resource_end((dev), (bar)) == 0) ? 0 :    \
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/pci.h:1929:36: note: expanded from macro 'pci_resource_end'
   #define pci_resource_end(dev, bar)      ((dev)->resource[(bar)].end)
                                           ^
   drivers/gpu/drm/qxl/qxl_kms.c:123:19: note: '?' condition is true
           qdev->rom_size = pci_resource_len(pdev, 2);
                            ^
   include/linux/pci.h:1932:3: note: expanded from macro 'pci_resource_len'
           ((pci_resource_end((dev), (bar)) == 0) ? 0 :    \
            ^
   drivers/gpu/drm/qxl/qxl_kms.c:127:61: note: Assuming field 'end' is equal to 0
           qdev->vram_mapping = io_mapping_create_wc(qdev->vram_base, pci_resource_len(pdev, 0));
                                                                      ^
   include/linux/pci.h:1932:4: note: expanded from macro 'pci_resource_len'
           ((pci_resource_end((dev), (bar)) == 0) ? 0 :    \
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/pci.h:1929:36: note: expanded from macro 'pci_resource_end'
   #define pci_resource_end(dev, bar)      ((dev)->resource[(bar)].end)
                                           ^
   drivers/gpu/drm/qxl/qxl_kms.c:127:61: note: '?' condition is true
           qdev->vram_mapping = io_mapping_create_wc(qdev->vram_base, pci_resource_len(pdev, 0));
                                                                      ^
   include/linux/pci.h:1932:3: note: expanded from macro 'pci_resource_len'
           ((pci_resource_end((dev), (bar)) == 0) ? 0 :    \
            ^
   drivers/gpu/drm/qxl/qxl_kms.c:127:23: note: Calling 'io_mapping_create_wc'
           qdev->vram_mapping = io_mapping_create_wc(qdev->vram_base, pci_resource_len(pdev, 0));
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/io-mapping.h:203:10: note: Calling 'kmalloc'
           iomap = kmalloc(sizeof(*iomap), GFP_KERNEL);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/slab.h:579:2: note: Taking false branch
           if (__builtin_constant_p(size)) {
           ^
   include/linux/slab.h:596:2: note: Returning pointer, which participates in a condition later
           return __kmalloc(size, flags);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/io-mapping.h:203:10: note: Returning from 'kmalloc'
           iomap = kmalloc(sizeof(*iomap), GFP_KERNEL);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/io-mapping.h:204:6: note: Assuming 'iomap' is non-null, which participates in a condition later
           if (!iomap)
               ^~~~~~
   include/linux/io-mapping.h:204:2: note: Taking false branch
           if (!iomap)
           ^
   include/linux/io-mapping.h:207:7: note: Calling 'io_mapping_init_wc'
           if (!io_mapping_init_wc(iomap, base, size)) {

vim +/connector +153 drivers/gpu/drm/rockchip/rockchip_rgb.c

1f0f01515172787 Sandy Huang       2018-08-30   73  
1f0f01515172787 Sandy Huang       2018-08-30   74  struct rockchip_rgb *rockchip_rgb_init(struct device *dev,
1f0f01515172787 Sandy Huang       2018-08-30   75  				       struct drm_crtc *crtc,
1f0f01515172787 Sandy Huang       2018-08-30   76  				       struct drm_device *drm_dev)
1f0f01515172787 Sandy Huang       2018-08-30   77  {
1f0f01515172787 Sandy Huang       2018-08-30   78  	struct rockchip_rgb *rgb;
1f0f01515172787 Sandy Huang       2018-08-30   79  	struct drm_encoder *encoder;
1f0f01515172787 Sandy Huang       2018-08-30   80  	struct device_node *port, *endpoint;
1f0f01515172787 Sandy Huang       2018-08-30   81  	u32 endpoint_id;
1f0f01515172787 Sandy Huang       2018-08-30   82  	int ret = 0, child_count = 0;
1f0f01515172787 Sandy Huang       2018-08-30   83  	struct drm_panel *panel;
1f0f01515172787 Sandy Huang       2018-08-30   84  	struct drm_bridge *bridge;
2e87bf389e1396b Alex Bee          2021-09-13   85  	struct drm_connector *connector;
1f0f01515172787 Sandy Huang       2018-08-30   86  
1f0f01515172787 Sandy Huang       2018-08-30   87  	rgb = devm_kzalloc(dev, sizeof(*rgb), GFP_KERNEL);
1f0f01515172787 Sandy Huang       2018-08-30   88  	if (!rgb)
1f0f01515172787 Sandy Huang       2018-08-30   89  		return ERR_PTR(-ENOMEM);
1f0f01515172787 Sandy Huang       2018-08-30   90  
1f0f01515172787 Sandy Huang       2018-08-30   91  	rgb->dev = dev;
1f0f01515172787 Sandy Huang       2018-08-30   92  	rgb->drm_dev = drm_dev;
1f0f01515172787 Sandy Huang       2018-08-30   93  
1f0f01515172787 Sandy Huang       2018-08-30   94  	port = of_graph_get_port_by_id(dev->of_node, 0);
1f0f01515172787 Sandy Huang       2018-08-30   95  	if (!port)
1f0f01515172787 Sandy Huang       2018-08-30   96  		return ERR_PTR(-EINVAL);
1f0f01515172787 Sandy Huang       2018-08-30   97  
1f0f01515172787 Sandy Huang       2018-08-30   98  	for_each_child_of_node(port, endpoint) {
1f0f01515172787 Sandy Huang       2018-08-30   99  		if (of_property_read_u32(endpoint, "reg", &endpoint_id))
1f0f01515172787 Sandy Huang       2018-08-30  100  			endpoint_id = 0;
1f0f01515172787 Sandy Huang       2018-08-30  101  
7cd7943dc55e0f7 Heiko Stuebner    2020-01-21  102  		/* if subdriver (> 0) or error case (< 0), ignore entry */
7cd7943dc55e0f7 Heiko Stuebner    2020-01-21  103  		if (rockchip_drm_endpoint_is_subdriver(endpoint) != 0)
1f0f01515172787 Sandy Huang       2018-08-30  104  			continue;
1f0f01515172787 Sandy Huang       2018-08-30  105  
1f0f01515172787 Sandy Huang       2018-08-30  106  		child_count++;
1f0f01515172787 Sandy Huang       2018-08-30  107  		ret = drm_of_find_panel_or_bridge(dev->of_node, 0, endpoint_id,
1f0f01515172787 Sandy Huang       2018-08-30  108  						  &panel, &bridge);
a17ce9960b3628b Julia Lawall      2019-01-13  109  		if (!ret) {
a17ce9960b3628b Julia Lawall      2019-01-13  110  			of_node_put(endpoint);
1f0f01515172787 Sandy Huang       2018-08-30  111  			break;
1f0f01515172787 Sandy Huang       2018-08-30  112  		}
a17ce9960b3628b Julia Lawall      2019-01-13  113  	}
1f0f01515172787 Sandy Huang       2018-08-30  114  
1f0f01515172787 Sandy Huang       2018-08-30  115  	of_node_put(port);
1f0f01515172787 Sandy Huang       2018-08-30  116  
1f0f01515172787 Sandy Huang       2018-08-30  117  	/* if the rgb output is not connected to anything, just return */
1f0f01515172787 Sandy Huang       2018-08-30  118  	if (!child_count)
1f0f01515172787 Sandy Huang       2018-08-30  119  		return NULL;
1f0f01515172787 Sandy Huang       2018-08-30  120  
1f0f01515172787 Sandy Huang       2018-08-30  121  	if (ret < 0) {
1f0f01515172787 Sandy Huang       2018-08-30  122  		if (ret != -EPROBE_DEFER)
1f0f01515172787 Sandy Huang       2018-08-30  123  			DRM_DEV_ERROR(dev, "failed to find panel or bridge %d\n", ret);
1f0f01515172787 Sandy Huang       2018-08-30  124  		return ERR_PTR(ret);
1f0f01515172787 Sandy Huang       2018-08-30  125  	}
1f0f01515172787 Sandy Huang       2018-08-30  126  
1f0f01515172787 Sandy Huang       2018-08-30  127  	encoder = &rgb->encoder;
1f0f01515172787 Sandy Huang       2018-08-30  128  	encoder->possible_crtcs = drm_crtc_mask(crtc);
1f0f01515172787 Sandy Huang       2018-08-30  129  
0dbd735448bfdb0 Thomas Zimmermann 2020-03-05  130  	ret = drm_simple_encoder_init(drm_dev, encoder, DRM_MODE_ENCODER_NONE);
1f0f01515172787 Sandy Huang       2018-08-30  131  	if (ret < 0) {
1f0f01515172787 Sandy Huang       2018-08-30  132  		DRM_DEV_ERROR(drm_dev->dev,
1f0f01515172787 Sandy Huang       2018-08-30  133  			      "failed to initialize encoder: %d\n", ret);
1f0f01515172787 Sandy Huang       2018-08-30  134  		return ERR_PTR(ret);
1f0f01515172787 Sandy Huang       2018-08-30  135  	}
1f0f01515172787 Sandy Huang       2018-08-30  136  
1f0f01515172787 Sandy Huang       2018-08-30  137  	drm_encoder_helper_add(encoder, &rockchip_rgb_encoder_helper_funcs);
1f0f01515172787 Sandy Huang       2018-08-30  138  
1f0f01515172787 Sandy Huang       2018-08-30  139  	if (panel) {
89958b7cd9555a5 Laurent Pinchart  2019-09-04  140  		bridge = drm_panel_bridge_add_typed(panel,
89958b7cd9555a5 Laurent Pinchart  2019-09-04  141  						    DRM_MODE_CONNECTOR_LVDS);
1f0f01515172787 Sandy Huang       2018-08-30  142  		if (IS_ERR(bridge))
1f0f01515172787 Sandy Huang       2018-08-30  143  			return ERR_CAST(bridge);
1f0f01515172787 Sandy Huang       2018-08-30  144  	}
1f0f01515172787 Sandy Huang       2018-08-30  145  
1f0f01515172787 Sandy Huang       2018-08-30  146  	rgb->bridge = bridge;
1f0f01515172787 Sandy Huang       2018-08-30  147  
2e87bf389e1396b Alex Bee          2021-09-13  148  	ret = drm_bridge_attach(encoder, rgb->bridge, NULL,
2e87bf389e1396b Alex Bee          2021-09-13  149  				DRM_BRIDGE_ATTACH_NO_CONNECTOR);
fb8d617f8fd64f5 Laurent Pinchart  2021-03-23  150  	if (ret)
1f0f01515172787 Sandy Huang       2018-08-30  151  		goto err_free_encoder;
1f0f01515172787 Sandy Huang       2018-08-30  152  
2e87bf389e1396b Alex Bee          2021-09-13 @153  	connector = &rgb->connector;
2e87bf389e1396b Alex Bee          2021-09-13  154  	connector = drm_bridge_connector_init(rgb->drm_dev, encoder);
2e87bf389e1396b Alex Bee          2021-09-13  155  	if (IS_ERR(connector)) {
2e87bf389e1396b Alex Bee          2021-09-13  156  		DRM_DEV_ERROR(drm_dev->dev,
2e87bf389e1396b Alex Bee          2021-09-13  157  			      "failed to initialize bridge connector: %pe\n",
2e87bf389e1396b Alex Bee          2021-09-13  158  			      connector);
2e87bf389e1396b Alex Bee          2021-09-13  159  		ret = PTR_ERR(connector);
2e87bf389e1396b Alex Bee          2021-09-13  160  		goto err_free_encoder;
2e87bf389e1396b Alex Bee          2021-09-13  161  	}
2e87bf389e1396b Alex Bee          2021-09-13  162  
2e87bf389e1396b Alex Bee          2021-09-13  163  	ret = drm_connector_attach_encoder(connector, encoder);
2e87bf389e1396b Alex Bee          2021-09-13  164  	if (ret < 0) {
2e87bf389e1396b Alex Bee          2021-09-13  165  		DRM_DEV_ERROR(drm_dev->dev,
2e87bf389e1396b Alex Bee          2021-09-13  166  			      "failed to attach encoder: %d\n", ret);
2e87bf389e1396b Alex Bee          2021-09-13  167  		goto err_free_connector;
2e87bf389e1396b Alex Bee          2021-09-13  168  	}
2e87bf389e1396b Alex Bee          2021-09-13  169  
1f0f01515172787 Sandy Huang       2018-08-30  170  	return rgb;
1f0f01515172787 Sandy Huang       2018-08-30  171  
2e87bf389e1396b Alex Bee          2021-09-13  172  err_free_connector:
2e87bf389e1396b Alex Bee          2021-09-13  173  	drm_connector_cleanup(connector);
1f0f01515172787 Sandy Huang       2018-08-30  174  err_free_encoder:
1f0f01515172787 Sandy Huang       2018-08-30  175  	drm_encoder_cleanup(encoder);
1f0f01515172787 Sandy Huang       2018-08-30  176  	return ERR_PTR(ret);
1f0f01515172787 Sandy Huang       2018-08-30  177  }
1f0f01515172787 Sandy Huang       2018-08-30  178  EXPORT_SYMBOL_GPL(rockchip_rgb_init);
1f0f01515172787 Sandy Huang       2018-08-30  179  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

                 reply	other threads:[~2021-12-08 19:18 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202112090339.fDIla36M-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.