aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-05-06drm/vkms: Hold gem object while still in-useEzequiel Garcia2-10/+6
We need to keep the reference to the drm_gem_object until the last access by vkms_dumb_create. Therefore, the put the object after it is used. This fixes a use-after-free issue reported by syzbot. While here, change vkms_gem_create() symbol to static. Reported-and-tested-by: [email protected] Signed-off-by: Ezequiel Garcia <[email protected]> Reviewed-by: Rodrigo Siqueira <[email protected]> Signed-off-by: Rodrigo Siqueira <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06drm/vkms: enable cursor by defaultMelissa Wen1-1/+1
This patch proposes a change in the behavior of the cursor to enable it as soon as the vkms module is added. Enabling the cursor by default appears to be an expected and more friendly behavior, especially when running IGT tests. Signed-off-by: Melissa Wen <[email protected]> Reviewed-by: Rodrigo Siqueira <[email protected]> Signed-off-by: Rodrigo Siqueira <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06drm/udl: Make udl_handle_damage staticZou Wei1-2/+2
Fix the following sparse warning: drivers/gpu/drm/udl/udl_modeset.c:269:5: warning: symbol 'udl_handle_damage' was not declared. Should it be static? Reported-by: Hulk Robot <[email protected]> Signed-off-by: Zou Wei <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06video: fbdev: valkyriefb.c: fix warning comparing pointer to 0Jason Yan1-2/+2
Fix the following coccicheck warning: drivers/video/fbdev/valkyriefb.c:348:10-11: WARNING comparing pointer to 0, suggest !E drivers/video/fbdev/valkyriefb.c:334:12-13: WARNING comparing pointer to 0 drivers/video/fbdev/valkyriefb.c:348:10-11: WARNING comparing pointer to 0 Signed-off-by: Jason Yan <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06drm/panel: add support for rm69299 visionox panelHarigovindan P3-0/+311
Add support for Visionox rm69299 panel. Signed-off-by: Harigovindan P <[email protected]> Reviewed-by: Matthias Kaehlcke <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> [fix checkpatch warnings, added sentinel ] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06dt-bindings: documenting compatible string vendor "visionox"Harigovindan P1-0/+2
Documenting compatible string vendor "visionox" in vendor-prefix yaml file. Signed-off-by: Harigovindan P <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06video: fbdev: w100fb: Fix a potential double free.Christophe JAILLET1-0/+2
Some memory is vmalloc'ed in the 'w100fb_save_vidmem' function and freed in the 'w100fb_restore_vidmem' function. (these functions are called respectively from the 'suspend' and the 'resume' functions) However, it is also freed in the 'remove' function. In order to avoid a potential double free, set the corresponding pointer to NULL once freed in the 'w100fb_restore_vidmem' function. Fixes: aac51f09d96a ("[PATCH] w100fb: Rewrite for platform independence") Cc: Richard Purdie <[email protected]> Cc: Antonino Daplas <[email protected]> Cc: Bartlomiej Zolnierkiewicz <[email protected]> Cc: <[email protected]> # v2.6.14+ Signed-off-by: Christophe JAILLET <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06fbdev: aty: use true, false for bool variables in atyfb_base.cJason Yan1-2/+2
Fix the following coccicheck warning: drivers/video/fbdev/aty/atyfb_base.c:3822:3-10: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/aty/atyfb_base.c:3824:3-9: WARNING: Assignment of 0/1 to bool variable Signed-off-by: Jason Yan <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06video: uvesafb: use true,false for bool variablesJason Yan1-6/+6
Fix the following coccicheck warning: drivers/video/fbdev/uvesafb.c:48:12-17: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/uvesafb.c:1827:3-13: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/uvesafb.c:1829:3-13: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/uvesafb.c:1835:3-9: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/uvesafb.c:1837:3-9: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/uvesafb.c:1839:3-8: WARNING: Assignment of 0/1 to bool variable Signed-off-by: Jason Yan <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06video: udlfb: use true,false for bool variablesJason Yan1-3/+3
Fix the following coccicheck warning: drivers/video/fbdev/udlfb.c:67:12-19: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/udlfb.c:68:12-20: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/udlfb.c:69:12-18: WARNING: Assignment of 0/1 to bool variable Signed-off-by: Jason Yan <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-06video: fbdev: i810: use true,false for bool variablesJason Yan1-5/+5
Fix the following coccicheck warning: drivers/video/fbdev/i810/i810_main.c:1969:3-7: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/i810/i810_main.c:1971:3-8: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/i810/i810_main.c:1973:3-9: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/i810/i810_main.c:1975:3-7: WARNING: Assignment of 0/1 to bool variable drivers/video/fbdev/i810/i810_main.c:2001:3-9: WARNING: Assignment of 0/1 to bool variable Signed-off-by: Jason Yan <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-05drm/mm: optimize rb_hole_addr rbtree searchNirmoy Das2-19/+115
Userspace can severely fragment rb_hole_addr rbtree by manipulating alignment while allocating buffers. Fragmented rb_hole_addr rbtree would result in large delays while allocating buffer object for a userspace application. It takes long time to find suitable hole because if we fail to find a suitable hole in the first attempt then we look for neighbouring nodes using rb_prev()/rb_next(). Traversing rbtree using rb_prev()/rb_next() can take really long time if the tree is fragmented. This patch improves searches in fragmented rb_hole_addr rbtree by modifying it to an augmented rbtree which will store an extra field in drm_mm_node, subtree_max_hole. Each drm_mm_node now stores maximum hole size for its subtree in drm_mm_node->subtree_max_hole. Using drm_mm_node->subtree_max_hole, it is possible to eliminate a complete subtree if that subtree is unable to serve a request hence reducing number of rb_prev()/rb_next() used. With this patch applied, 1 million bo allocs on amdgpu took ~8 sec, compared to 50k bo allocs which took 28 sec without it. partial test code: int test_fragmentation(void) { int i = 0; uint32_t minor_version; uint32_t major_version; struct amdgpu_bo_alloc_request request = {}; amdgpu_bo_handle vram_handle[MAX_ALLOC] = {}; amdgpu_device_handle device_handle; request.alloc_size = 4096; request.phys_alignment = 8192; request.preferred_heap = AMDGPU_GEM_DOMAIN_VRAM; int fd = open("/dev/dri/card0", O_RDWR | O_CLOEXEC); amdgpu_device_initialize(fd, &major_version, &minor_version, &device_handle); for (i = 0; i < MAX_ALLOC; i++) { amdgpu_bo_alloc(device_handle, &request, &vram_handle[i]); } for (i = 0; i < MAX_ALLOC; i++) amdgpu_bo_free(vram_handle[i]); return 0; } v2: Use RB_DECLARE_CALLBACKS_MAX to maintain subtree_max_hole v3: insert_hole_addr() should be static a function fix return value of next_hole_high_addr()/next_hole_low_addr() Reported-by: kbuild test robot <[email protected]> v4: Fix commit message. Signed-off-by: Nirmoy Das <[email protected]> Reviewed-by: Chris Wilson <[email protected]> Acked-by: Christian König <[email protected]> Link: https://patchwork.freedesktop.org/patch/364341/ Signed-off-by: Christian König <[email protected]>
2020-05-05drm/ttm: Remove reference to the mem_glob memberMaya Rashish1-1/+0
It was removed in: Author: Christian König <[email protected]> Date: Wed Sep 25 11:38:50 2019 +0200 drm/ttm: remove pointers to globals Signed-off-by: Maya Rashish <[email protected]> Reviewed-by: Christian König <[email protected]> Link: https://patchwork.freedesktop.org/patch/360750/ Signed-off-by: Christian König <[email protected]>
2020-05-05drm/client: Dual licence the header in GPL-2 and MITEmmanuel Vadot1-1/+1
Source file was dual licenced but the header was omitted, fix that. Contributors for this file are: Daniel Vetter <[email protected]> Matt Roper <[email protected]> Maxime Ripard <[email protected]> Noralf Trønnes <[email protected]> Thomas Zimmermann <[email protected]> Acked-by: Noralf Trønnes <[email protected]> Acked-by: Matt Roper <[email protected]> Acked-by: Daniel Vetter <[email protected]> Acked-by: Maxime Ripard <[email protected]> Acked-by: Thomas Zimmermann <[email protected]> Signed-off-by: Emmanuel Vadot <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-05drm: Replace drm_modeset_lock/unlock_all with DRM_MODESET_LOCK_ALL_* helpersMichal Orzel1-4/+6
As suggested by the TODO list for the kernel DRM subsystem, replace the deprecated functions that take/drop modeset locks with new helpers. Signed-off-by: Michal Orzel <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-05drm/meson: add mode selection limits against specific SoC revisionsNeil Armstrong5-4/+52
The Amlogic S805X/Y uses the same die as the S905X, but with more limited graphics capabilities. This adds a soc version detection adding specific limitations on the HDMI mode selections. Here, we limit to HDMI 1.2a max HDMI PHY clock frequency. Changes sinces v1: - Moved frequency check in the vclk code, and also checks DMT modes Signed-off-by: Neil Armstrong <[email protected]> Acked-by: Martin Blumenstingl <[email protected]> [narmstrong: fixed commit message with HDMI 1.2a instead of HDMI 1.3a] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-05drm/bridge: chrontel-ch7033: Add a new driverLubomir Rintel3-0/+631
This is a driver for video encoder with VGA and DVI/HDMI outputs. There is no documentation for the chip -- the operation was guessed from what was sniffed on a Dell Wyse 3020 ThinOS terminal, the register names come from the ch7035 driver in Mediatek's GPL code dump. Only bare minimum is implemented -- no fancy stuff, such as scaling. That would only worsen our misery. We don't load the firmware and we don't need to even bother enabling the MCU. There are probably no distributable firmware images anyway. Tested with a handful of monitors ranging from 1024x768@75 to 1400x1050@60, with VGA as well as DVI. Signed-off-by: Lubomir Rintel <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Neil Armstrong <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-05dt-bindings: display: Add Chrontel CH7033 Video Encoder bindingLubomir Rintel1-0/+77
Add binding document for the Chrontel CH7033 VGA/DVI/HDMI Encoder. Signed-off-by: Lubomir Rintel <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Neil Armstrong <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-05dt-bindings: Add vendor prefix for Chrontel, Inc.Lubomir Rintel1-0/+2
Chrontel makes encoders for video displays and perhaps other stuff. Their web site is http://www.chrontel.com/. Signed-off-by: Lubomir Rintel <[email protected]> Acked-by: Rob Herring <[email protected]> Signed-off-by: Neil Armstrong <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-05drm/tidss: remove AM65x PG1 YUV erratum codeTomi Valkeinen2-15/+2
AM65x PG1 has a HW issue with YUV pixel formats, resulting in wrong colors on the screen. This issue is fixed in PG2 hardware. The driver currently has code to hide YUV pixel formats from the userspace. To support PG2, we would need to add code to detect the SoC version and hide the YUV formats based on that. However, as PG1 will be phased out and PG2 will be the main platform, a much simpler solution is just to drop the code in question. The downside is that the users will be able to use YUV formats on PG1, getting wrong colors on the screen. On the other hand, that may also be a plus, as the same applications will now work on PG1 and PG2, even if the colors are wrong on PG1. Signed-off-by: Tomi Valkeinen <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected] Reviewed-by: Jyri Sarha <[email protected]>
2020-05-05drm/omap: change default signal polarities and drivesTomi Valkeinen1-27/+6
If the given videomode does not specify DISPLAY_FLAG_* for the specific signal property, the driver used a default value. These defaults were never thought through, as the expectation was that all the DISPLAY_FLAGS are always set explicitly. With DRM bridge and panel drivers this is not the case, and while that issue should be resolved in the future, it's still good to have sane signal defaults. This patch changes the defaults to what the hardware has as reset defaults. Also, based on my experience, I think they make sense and are more likely correct than the defaults without this patch. Signed-off-by: Tomi Valkeinen <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected] Reviewed-by: Laurent Pinchart <[email protected]>
2020-05-04drm/panel: boe-tv101wum-n16: fine tune clockDavid Lu1-4/+4
fix boe_tv105wum_nw0 display shift. Signed-off-by: David Lu <[email protected]> Fixes: 963518c12431 ("drm/panel: support for boe,tv105wum-nw0 dsi video mode panel") Cc: David Lu <[email protected]> Cc: Nicolas Boichat <[email protected]> Cc: Sam Ravnborg <[email protected]> Cc: Thierry Reding <[email protected]> Cc: [email protected] Signed-off-by: Sam Ravnborg <[email protected]> [added fixes tag] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-04dt-bindings: display: dw_mipi_dsi.txt: convert to yamlAdrian Ratiu2-32/+68
This converts the Synopsis MIPI DSI binding documentation to yaml and should be quite straightforward. I've added a missing ref clk and also added Philippe as maintainer b/c he's the original txt author following the algorithm provided in Message-ID [email protected]. Cc: Philippe CORNU <[email protected]> Cc: [email protected] Suggested-by: Laurent Pinchart <[email protected]> Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Adrian Ratiu <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-04drm/panel: panel-simple: fix AUO G101EVN010 connector/panel typeTomi Valkeinen1-1/+2
The AUO G101EVN010 is a 18-bit LVDS panel, not a parallel panel, as indicated by the current bus_format. Fix the bus_format to MEDIA_BUS_FMT_RGB666_1X7X3_SPWG, and also set the connector_type to LVDS. Signed-off-by: Tomi Valkeinen <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> [updated patch subject] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-02dt-bindings: Add binding for IT6505.allen1-0/+91
Add a DT binding documentation for IT6505. Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Allen Chen <[email protected]> Signed-off-by: Pi-Hsun Shih <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> [fixed example to use i2c] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-05-02dt-bindings: fix vendor prefix for ITE Tech. Inc.allen1-1/+1
ITE Tech. Inc. (abbreviated as ITE ) is a professional fabless IC design house. ITE's core technology includes PC and NB Controller chips, Super I/O, High Speed Serial Interface, Video Codec, Touch Sensing, Surveillance, OFDM, Sensor Fusion, and so on. Our official name is "ITE Tech. Inc.", so change "ITE," to "ITE.". more information on: http://www.ite.com.tw/ Signed-off-by: Allen Chen <[email protected]> Acked-by: Rob Herring <[email protected]> Fixes: 17ff9478ffa3 ("dt-bindings: Add ITE Tech prefix") Cc: Marek Vasut <[email protected]> Cc: [email protected] Cc: Allen Chen <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> [added fixes tag and updated subject] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-30drm: Correct DP DSC macro typoRodrigo Siqueira2-3/+3
In the file drm_dp_helper.h we have a macro named DP_DSC_THROUGHPUT_MODE_{0,1}_UPSUPPORTED, the correct name should be DP_DSC_THROUGHPUT_MODE_{0,1}_UNSUPPORTED. This commits adjusts this typo in the header file and in other places that attempt to access this macro. Reviewed-by: Harry Wentland <[email protected]> Signed-off-by: Rodrigo Siqueira <[email protected]> Signed-off-by: Alex Deucher <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-30drm/ast: remove duplicate assignment of ast_crtc_funcs memberJason Yan1-1/+0
The struct member 'set_config' was assigned twice: static const struct drm_crtc_funcs ast_crtc_funcs = { .reset = ast_crtc_reset, .set_config = drm_crtc_helper_set_config, ...... .set_config = drm_atomic_helper_set_config, ...... }; Since the second one is which we use now in fact, we can remove the first one. This fixes the following coccicheck warning: drivers/gpu/drm/ast/ast_mode.c:932:50-51: set_config: first occurrence line 934, second occurrence line 937 Signed-off-by: Jason Yan <[email protected]> Signed-off-by: Thomas Zimmermann <[email protected]> Reviewed-by: Thomas Zimmermann <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-29drm/bridge: fix stack usage warning on old gccArnd Bergmann1-1/+3
Some older versions of gcc badly optimize code that passes an inline function argument into another function by reference, causing huge stack usage: drivers/gpu/drm/bridge/tc358768.c: In function 'tc358768_bridge_pre_enable': drivers/gpu/drm/bridge/tc358768.c:840:1: error: the frame size of 2256 bytes is larger than 2048 bytes [-Werror=frame-larger-than=] Use a temporary variable as a workaround and add a comment pointing to the gcc bug. Fixes: ff1ca6397b1d ("drm/bridge: Add tc358768 driver") Signed-off-by: Arnd Bergmann <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-29video: fbdev: controlfb: fix build for COMPILE_TEST=y && PPC_PMAC=y && PPC32=nBartlomiej Zolnierkiewicz1-1/+1
powerpc allyesconfig fails like this: drivers/video/fbdev/controlfb.c: In function 'controlfb_mmap': drivers/video/fbdev/controlfb.c:756:23: error: implicit declaration of function 'pgprot_cached_wthru'; did you mean 'pgprot_cached'? [-Werror=implicit-function-declaration] 756 | vma->vm_page_prot = pgprot_cached_wthru(vma->vm_page_prot); | ^~~~~~~~~~~~~~~~~~~ | pgprot_cached drivers/video/fbdev/controlfb.c:756:23: error: incompatible types when assigning to type 'pgprot_t' {aka 'struct <anonymous>'} from type 'int' Fix it by adding missing PPC32 dependency. Fixes: a07a63b0e24d ("video: fbdev: controlfb: add COMPILE_TEST support") Reported-by: Stephen Rothwell <[email protected]> Reported-by: kbuild test robot <[email protected]> Cc: Sam Ravnborg <[email protected]> Cc: Daniel Vetter <[email protected]> Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]> Signed-off-by: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-29drm: Nuke mode->hsyncVille Syrjälä5-50/+8
Let's just calculate the hsync rate on demand. No point in wasting space storing it and risking the cached value getting out of sync with reality. v2: Move drm_mode_hsync() next to its only users Drop the TODO Reviewed-by: Sam Ravnborg <[email protected]> Reviewed-by: Emil Velikov <[email protected]> #v1 Signed-off-by: Ville Syrjälä <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-29MAINTAINERS: Restore alphabetical sortingThomas Zimmermann1-29/+0
MAINTAINERS got sorted in commit 4400b7d68f6e ("MAINTAINERS: sort entries by entry name") Merging from drm-next into drm-misc-next duplicated some of the entries by restoring old, unsorted sections. Restore the sorted list by removing the duplicates. Signed-off-by: Thomas Zimmermann <[email protected]> Fixes: 08d99b2c23df ("Merge drm/drm-next into drm-misc-next") Acked-by: Sam Ravnborg <[email protected]> Cc: Thomas Zimmermann <[email protected]> Cc: Mauro Carvalho Chehab <[email protected]> Cc: Rob Herring <[email protected]> Cc: "David S. Miller" <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Cc: Neil Armstrong <[email protected]> Cc: Laurent Pinchart <[email protected]> Cc: Jernej Skrabec <[email protected]> Cc: Jonas Karlman <[email protected]> Cc: Douglas Anderson <[email protected]> Cc: Jerome Brunet <[email protected]> Cc: Dariusz Marcinkiewicz <[email protected]> Cc: Sam Ravnborg <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm: pl111: Move VExpress setup into versatile initRob Herring4-144/+108
Since the VExpress setup in pl111_vexpress.c is now just a single function call, let's move it into pl111_versatile.c and we can further simplify pl111_versatile_init() by moving the other pieces for VExpress into pl111_vexpress_clcd_init(). Cc: Eric Anholt <[email protected]> Cc: [email protected] Acked-by: Sam Ravnborg <[email protected]> Reviewed-by: Linus Walleij <[email protected]> Signed-off-by: Rob Herring <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm: pl111: Simplify vexpress initRob Herring3-66/+4
The init VExpress variants currently instantiates a 'muxfpga' driver for the sole purpose of getting a regmap for it. There's no reason to instantiate a driver and doing so just complicates things. The muxfpga driver also isn't unregistered properly on module unload. Let's just simplify all this this by just calling devm_regmap_init_vexpress_config() directly. Cc: Eric Anholt <[email protected]> Cc: [email protected] Acked-by: Sam Ravnborg <[email protected]> Reviewed-by: Linus Walleij <[email protected]> Signed-off-by: Rob Herring <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm: pl111: Fix module autoloadingRob Herring1-0/+1
Add a missing MODULE_DEVICE_TABLE entry to fix module autoloading. Cc: Eric Anholt <[email protected]> Cc: [email protected] Acked-by: Sam Ravnborg <[email protected]> Reviewed-by: Linus Walleij <[email protected]> Signed-off-by: Rob Herring <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/i915: Use devm_drm_dev_allocDaniel Vetter2-15/+4
Luckily we're already well set up in the main driver, with drm_dev_put() being the last thing in both the unload error case and the pci remove function. Acked-by: Jani Nikula <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/qxl: Don't use drm_device->dev_privateDaniel Vetter12-40/+38
Upcasting using a container_of macro is more typesafe, faster and easier for the compiler to optimize. Acked-by: Gerd Hoffmann <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Dave Airlie <[email protected]> Cc: Gerd Hoffmann <[email protected]> Cc: [email protected] Cc: [email protected] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/qxl: Use devm_drm_dev_allocDaniel Vetter3-20/+10
Also need to remove the drm_dev_put from the remove hook. Acked-by: Gerd Hoffmann <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Dave Airlie <[email protected]> Cc: Gerd Hoffmann <[email protected]> Cc: [email protected] Cc: [email protected] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm: make drm_file use keyed wakeupsKenny Levinsen1-2/+4
Some processes, such as systemd, are only polling for EPOLLERR|EPOLLHUP. As drm_file uses unkeyed wakeups, such a poll receives many spurious wakeups from uninteresting events. Use keyed wakeups to allow the wakeup target to more efficiently discard these uninteresting events. Signed-off-by: Kenny Levinsen <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/bochs: Remove explicit drm_connector_registerDaniel Vetter1-1/+0
This is leftovers from the old drm_driver->load callback upside-down issues. It doesn't do anything for not-hotplugged connectors since drm_dev_register takes care of that. Acked-by: Gerd Hoffmann <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Gerd Hoffmann <[email protected]> Cc: [email protected] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/ast: Drop explicit connector register/unregisterDaniel Vetter1-3/+0
This is only needed for hotpluggable connectors set up after drm_dev_register(). Reviewed-by: Thomas Zimemrmann <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Dave Airlie <[email protected]> Cc: Thomas Zimmermann <[email protected]> Cc: Gerd Hoffmann <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: Sam Ravnborg <[email protected]> Cc: Emil Velikov <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/aspeed: Use devm_drm_dev_allocDaniel Vetter4-22/+15
As usual, we can drop the drm_dev_put() and need to embed the drm_device. Since it's so few, also go right ahead and leave drm_device->dev_private set to NULL, so that we always use the container_of() upcast, which is faster anyway. Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Joel Stanley <[email protected]> Cc: Andrew Jeffery <[email protected]> Cc: [email protected] Cc: [email protected] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/aspeed: Drop aspeed_gfx->fbdevDaniel Vetter1-1/+0
No longer used since the conversion to generic fbdev. Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Joel Stanley <[email protected]> Cc: Andrew Jeffery <[email protected]> Cc: [email protected] Cc: [email protected] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/cirrus: Move to drm/tinyDaniel Vetter8-25/+21
Because it is. Huge congrats to everyone who made this kind of refactoring happen! Acked-by: Gerd Hoffmann <[email protected]> Reviewed-by: Thomas Zimmermann <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Dave Airlie <[email protected]> Cc: Gerd Hoffmann <[email protected]> Cc: [email protected] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/cirrus: Don't use drm_device->dev_privateDaniel Vetter1-4/+5
Upcasting using a container_of macro is more typesafe, faster and easier for the compiler to optimize. Acked-by: Eric Anholt <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Dave Airlie <[email protected]> Cc: Gerd Hoffmann <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: "Noralf Trønnes" <[email protected]> Cc: Sam Ravnborg <[email protected]> Cc: Eric Anholt <[email protected]> Cc: Thomas Zimmermann <[email protected]> Cc: [email protected] Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/cirrus: Use devm_drm_dev_allocDaniel Vetter1-9/+4
Already using devm_drm_dev_init, so very simple replacment. Acked-by: Noralf Trønnes <[email protected]> Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Dave Airlie <[email protected]> Cc: Gerd Hoffmann <[email protected]> Cc: Daniel Vetter <[email protected]> Cc: Sam Ravnborg <[email protected]> Cc: "Noralf Trønnes" <[email protected]> Cc: Rob Herring <[email protected]> Cc: Thomas Zimmermann <[email protected]> Cc: [email protected] Cc: Emil Velikov <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/komeda: use devm_drm_dev_allocDaniel Vetter1-11/+5
Komeda uses the component framework, which does open/close a new devres group around all the bind callbacks. Which means we can use devm_ functions for managing the drm_device cleanup, with leaking stuff in case of deferred probes or other reasons to unbind components, or the component_master. Also note that this fixes a double-free in the probe unroll code, bot drm_dev_put and kfree(kms) result in the kms allocation getting freed. Aside: komeda_bind could be cleaned up a lot, devm_kfree is a bit redundant. Plus I'm not clear on why there's suballocations for mdrv->mdev and mdrv->kms. Plus I'm not sure the lifetimes are correct with all that devm_kzalloc usage ... That structure layout is also the reason why komeda still uses drm_device->dev_private and can't easily be replaced with a proper container_of upcasting. I'm pretty sure that there's endless amounts of hotunplug/hotremove bugs in there with all the unprotected dereferencing of drm_device->dev_private. Reviewed-by: James Qian Wang <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: "James (Qian) Wang" <[email protected]> Cc: Liviu Dudau <[email protected]> Cc: Mihail Atanassov <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/ingenic: Don't set drm_device->dev_privateDaniel Vetter1-1/+0
Entirely not used, just copypasta. Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Paul Cercueil <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/ingenic: Use devm_drm_dev_allocDaniel Vetter1-10/+4
Already using devm_drm_dev_init, so very simple replacment. Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Paul Cercueil <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2020-04-28drm/mcde: Don't use drm_device->dev_privateDaniel Vetter4-10/+10
Upcasting using a container_of macro is more typesafe, faster and easier for the compiler to optimize. v2: Move misplaced removal of double-assignment to this patch (Sam) Reviewed-by: Linus Walleij <[email protected]> (v1) Acked-by: Sam Ravnborg <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Cc: Linus Walleij <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]