| .. | .. |
|---|
| 364 | 364 | return -ENOMEM; |
|---|
| 365 | 365 | dev->mode_config.gamma_lut_size_property = prop; |
|---|
| 366 | 366 | |
|---|
| 367 | | -#if defined(CONFIG_ROCKCHIP_DRM_CUBIC_LUT) |
|---|
| 368 | | - prop = drm_property_create(dev, |
|---|
| 369 | | - DRM_MODE_PROP_BLOB, |
|---|
| 370 | | - "CUBIC_LUT", 0); |
|---|
| 371 | | - if (!prop) |
|---|
| 372 | | - return -ENOMEM; |
|---|
| 373 | | - dev->mode_config.cubic_lut_property = prop; |
|---|
| 374 | | - |
|---|
| 375 | | - prop = drm_property_create_range(dev, |
|---|
| 376 | | - DRM_MODE_PROP_IMMUTABLE, |
|---|
| 377 | | - "CUBIC_LUT_SIZE", 0, UINT_MAX); |
|---|
| 378 | | - if (!prop) |
|---|
| 379 | | - return -ENOMEM; |
|---|
| 380 | | - dev->mode_config.cubic_lut_size_property = prop; |
|---|
| 381 | | -#endif |
|---|
| 382 | | - |
|---|
| 383 | 367 | prop = drm_property_create(dev, |
|---|
| 384 | 368 | DRM_MODE_PROP_IMMUTABLE | DRM_MODE_PROP_BLOB, |
|---|
| 385 | 369 | "IN_FORMATS", 0); |
|---|
| .. | .. |
|---|
| 414 | 398 | */ |
|---|
| 415 | 399 | int drmm_mode_config_init(struct drm_device *dev) |
|---|
| 416 | 400 | { |
|---|
| 401 | + int ret; |
|---|
| 402 | + |
|---|
| 417 | 403 | mutex_init(&dev->mode_config.mutex); |
|---|
| 418 | 404 | drm_modeset_lock_init(&dev->mode_config.connection_mutex); |
|---|
| 419 | 405 | mutex_init(&dev->mode_config.idr_mutex); |
|---|
| .. | .. |
|---|
| 435 | 421 | init_llist_head(&dev->mode_config.connector_free_list); |
|---|
| 436 | 422 | INIT_WORK(&dev->mode_config.connector_free_work, drm_connector_free_work_fn); |
|---|
| 437 | 423 | |
|---|
| 438 | | - drm_mode_create_standard_properties(dev); |
|---|
| 424 | + ret = drm_mode_create_standard_properties(dev); |
|---|
| 425 | + if (ret) { |
|---|
| 426 | + drm_mode_config_cleanup(dev); |
|---|
| 427 | + return ret; |
|---|
| 428 | + } |
|---|
| 439 | 429 | |
|---|
| 440 | 430 | /* Just to be sure */ |
|---|
| 441 | 431 | dev->mode_config.num_fb = 0; |
|---|