]> Git Repo - linux.git/commitdiff
Merge tag 'drm-misc-next-2021-01-06' of git://anongit.freedesktop.org/drm/drm-misc...
authorDaniel Vetter <[email protected]>
Thu, 7 Jan 2021 12:40:19 +0000 (13:40 +0100)
committerDaniel Vetter <[email protected]>
Thu, 7 Jan 2021 12:40:20 +0000 (13:40 +0100)
drm-misc-next for v5.12:

Core Changes:
- Lots of drm documentation updates by Simor Ser.
- Require that each crtc has a unique primary plane.
- Add fixme that fbdev_generic_setup is confusing.

Driver Changes:
- Update addresses for TI display drivers maintainers.
- Make DRM_VIRTIO_GPU select VIRTIO.
- Small fixes to qxl, virtio, hisilicon, tve200, panel/s6e63m0.

Signed-off-by: Daniel Vetter <[email protected]>
From: Maarten Lankhorst <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
1  2 
MAINTAINERS
drivers/gpu/drm/drm_mode_config.c
drivers/gpu/drm/drm_plane.c

diff --combined MAINTAINERS
index 6eff4f720c721cf37ea0a37da9a0b23af6702f34,17b92e6a0f0698a8685a2b73c5cf28ae06c46626..389abcf847c8ce703339198f5e466c1605833909
@@@ -929,12 -929,6 +929,12 @@@ L:       [email protected]
  S:    Maintained
  F:    drivers/i2c/busses/i2c-amd-mp2*
  
 +AMD PMC DRIVER
 +M:    Shyam Sundar S K <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/platform/x86/amd-pmc.*
 +
  AMD POWERPLAY
  M:    Evan Quan <[email protected]>
  L:    [email protected]
@@@ -956,14 -950,6 +956,14 @@@ S:       Supporte
  F:    arch/arm64/boot/dts/amd/amd-seattle-xgbe*.dtsi
  F:    drivers/net/ethernet/amd/xgbe/
  
 +AMD SENSOR FUSION HUB DRIVER
 +M:    Nehal Shah <[email protected]>
 +M:    Sandeep Singh <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/hid/amd-sfh*
 +F:    drivers/hid/amd-sfh-hid/
 +
  AMS AS73211 DRIVER
  M:    Christian Eggers <[email protected]>
  L:    [email protected]
@@@ -1087,7 -1073,6 +1087,7 @@@ M:      Hans Verkuil <hverkuil-cisco@xs4all.
  L:    [email protected]
  S:    Maintained
  F:    drivers/media/i2c/adv7604*
 +F:    Documentation/devicetree/bindings/media/i2c/adv7604.yaml
  
  ANALOG DEVICES INC ADV7842 DRIVER
  M:    Hans Verkuil <[email protected]>
@@@ -1183,11 -1168,21 +1183,11 @@@ F:   Documentation/devicetree/bindings/in
  F:    drivers/irqchip/irq-goldfish-pic.c
  
  ANDROID GOLDFISH RTC DRIVER
 -M:    Miodrag Dinic <miodrag.dinic@mips.com>
 +M:    Jiaxun Yang <jiaxun.yang@flygoat.com>
  S:    Supported
  F:    Documentation/devicetree/bindings/rtc/google,goldfish-rtc.txt
  F:    drivers/rtc/rtc-goldfish.c
  
 -ANDROID ION DRIVER
 -M:    Laura Abbott <[email protected]>
 -M:    Sumit Semwal <[email protected]>
 -L:    [email protected]
 -L:    [email protected]
 -L:    [email protected] (moderated for non-subscribers)
 -S:    Supported
 -F:    drivers/staging/android/ion
 -F:    drivers/staging/android/uapi/ion.h
 -
  AOA (Apple Onboard Audio) ALSA DRIVER
  M:    Johannes Berg <[email protected]>
  L:    [email protected]
@@@ -1516,7 -1511,7 +1516,7 @@@ S:      Maintaine
  F:    Documentation/devicetree/bindings/arm/actions.yaml
  F:    Documentation/devicetree/bindings/clock/actions,owl-cmu.txt
  F:    Documentation/devicetree/bindings/dma/owl-dma.yaml
 -F:    Documentation/devicetree/bindings/i2c/i2c-owl.txt
 +F:    Documentation/devicetree/bindings/i2c/i2c-owl.yaml
  F:    Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
  F:    Documentation/devicetree/bindings/mmc/owl-mmc.yaml
  F:    Documentation/devicetree/bindings/pinctrl/actions,*
@@@ -1807,6 -1802,14 +1807,6 @@@ F:     drivers/firmware/turris-mox-rwtm.
  F:    drivers/gpio/gpio-moxtet.c
  F:    include/linux/moxtet.h
  
 -ARM/EBSA110 MACHINE SUPPORT
 -M:    Russell King <[email protected]>
 -L:    [email protected] (moderated for non-subscribers)
 -S:    Maintained
 -W:    http://www.armlinux.org.uk/
 -F:    arch/arm/mach-ebsa110/
 -F:    drivers/net/ethernet/amd/am79c961a.*
 -
  ARM/ENERGY MICRO (SILICON LABS) EFM32 SUPPORT
  M:    Uwe Kleine-König <[email protected]>
  R:    Pengutronix Kernel Team <[email protected]>
@@@ -2026,7 -2029,7 +2026,7 @@@ M:      Sebastian Hesselbarth <sebastian.hes
  M:    Gregory Clement <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
 -T:    git git://git.infradead.org/linux-mvebu.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu.git
  F:    Documentation/devicetree/bindings/soc/dove/
  F:    arch/arm/boot/dts/dove*
  F:    arch/arm/boot/dts/orion5x*
@@@ -2042,7 -2045,7 +2042,7 @@@ M:      Gregory Clement <gregory.clement@boo
  M:    Sebastian Hesselbarth <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
 -T:    git git://git.infradead.org/linux-mvebu.git
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gclement/mvebu.git
  F:    arch/arm/boot/dts/armada*
  F:    arch/arm/boot/dts/kirkwood*
  F:    arch/arm/configs/mvebu_*_defconfig
@@@ -2074,7 -2077,7 +2074,7 @@@ M:      Matthias Brugger <matthias.bgg@gmail
  L:    [email protected] (moderated for non-subscribers)
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
 -W:    https://mtk.bcnfs.org/
 +W:    https://mtk.wiki.kernel.org/
  C:    irc://chat.freenode.net/linux-mediatek
  F:    arch/arm/boot/dts/mt6*
  F:    arch/arm/boot/dts/mt7*
  S:    Supported
  T:    git git://github.com/microchip-ung/linux-upstream.git
  F:    arch/arm64/boot/dts/microchip/
 +F:    drivers/pinctrl/pinctrl-microchip-sgpio.c
  N:    sparx5
  
 +Microchip Timer Counter Block (TCB) Capture Driver
 +M:    Kamel Bouhara <[email protected]>
 +L:    [email protected] (moderated for non-subscribers)
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/counter/microchip-tcb-capture.c
 +
  ARM/MIOA701 MACHINE SUPPORT
  M:    Robert Jarzmik <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  W:    http://linux-chenxing.org/
  F:    Documentation/devicetree/bindings/arm/mstar/*
 +F:    Documentation/devicetree/bindings/gpio/mstar,msc313-gpio.yaml
  F:    arch/arm/boot/dts/mstar-*
  F:    arch/arm/mach-mstar/
 +F:    drivers/gpio/gpio-msc313.c
 +F:    include/dt-bindings/gpio/msc313-gpio.h
  
  ARM/NEC MOBILEPRO 900/c MACHINE SUPPORT
  M:    Michael Petchkovsky <[email protected]>
@@@ -2492,7 -2484,7 +2492,7 @@@ F:      drivers/clk/socfpga
  ARM/SOCFPGA EDAC SUPPORT
  M:    Dinh Nguyen <[email protected]>
  S:    Maintained
 -F:    drivers/edac/altera_edac.
 +F:    drivers/edac/altera_edac.[ch]
  
  ARM/SPREADTRUM SoC SUPPORT
  M:    Orson Zhai <[email protected]>
@@@ -2970,7 -2962,7 +2970,7 @@@ ATMEL MAXTOUCH DRIVE
  M:    Nick Dyer <[email protected]>
  S:    Maintained
  T:    git git://github.com/ndyer/linux.git
 -F:    Documentation/devicetree/bindings/input/atmel,maxtouch.txt
 +F:    Documentation/devicetree/bindings/input/atmel,maxtouch.yaml
  F:    drivers/input/touchscreen/atmel_mxt_ts.c
  
  ATMEL WIRELESS DRIVER
@@@ -2989,8 -2981,6 +2989,8 @@@ L:      [email protected]
  S:    Maintained
  F:    arch/*/include/asm/atomic*.h
  F:    include/*/atomic*.h
 +F:    include/linux/refcount.h
 +F:    Documentation/atomic_*.txt
  F:    scripts/atomic/
  
  ATTO EXPRESSSAS SAS/SATA RAID SCSI DRIVER
@@@ -3129,6 -3119,8 +3129,6 @@@ Q:      https://patchwork.open-mesh.org/proj
  B:    https://www.open-mesh.org/projects/batman-adv/issues
  C:    irc://chat.freenode.net/batman
  T:    git https://git.open-mesh.org/linux-merge.git
 -F:    Documentation/ABI/obsolete/sysfs-class-net-batman-adv
 -F:    Documentation/ABI/obsolete/sysfs-class-net-mesh
  F:    Documentation/networking/batman-adv.rst
  F:    include/uapi/linux/batadv_packet.h
  F:    include/uapi/linux/batman_adv.h
@@@ -3199,7 -3191,6 +3199,7 @@@ S:      Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
  F:    block/
  F:    drivers/block/
 +F:    fs/block_dev.c
  F:    include/linux/blk*
  F:    kernel/trace/blktrace.c
  F:    lib/sbitmap.c
@@@ -3213,9 -3204,8 +3213,9 @@@ F:      drivers/mtd/devices/block2mtd.
  BLUETOOTH DRIVERS
  M:    Marcel Holtmann <[email protected]>
  M:    Johan Hedberg <[email protected]>
 +M:    Luiz Augusto von Dentz <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Supported
  W:    http://www.bluez.org/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git
@@@ -3224,9 -3214,8 +3224,9 @@@ F:      drivers/bluetooth
  BLUETOOTH SUBSYSTEM
  M:    Marcel Holtmann <[email protected]>
  M:    Johan Hedberg <[email protected]>
 +M:    Luiz Augusto von Dentz <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Supported
  W:    http://www.bluez.org/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth.git
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git
@@@ -3398,7 -3387,7 +3398,7 @@@ M:      Florian Fainelli <[email protected]
  L:    [email protected]
  L:    [email protected] (subscribers-only)
  S:    Supported
 -F:    Documentation/devicetree/bindings/net/dsa/b53.txt
 +F:    Documentation/devicetree/bindings/net/dsa/brcm,b53.yaml
  F:    drivers/net/dsa/b53/*
  F:    include/linux/platform_data/b53.h
  
@@@ -3591,14 -3580,6 +3591,14 @@@ S:    Maintaine
  F:    Documentation/devicetree/bindings/usb/brcm,bcm7445-ehci.yaml
  F:    drivers/usb/host/ehci-brcm.*
  
 +BROADCOM BRCMSTB USB PIN MAP DRIVER
 +M:    Al Cooper <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/usb/brcm,usb-pinmap.yaml
 +F:    drivers/usb/misc/brcmstb-usb-pinmap.c
 +
  BROADCOM BRCMSTB USB2 and USB3 PHY DRIVER
  M:    Al Cooper <[email protected]>
  L:    [email protected]
@@@ -3884,7 -3865,6 +3884,7 @@@ CADENCE USB3 DRD IP DRIVE
  M:    Peter Chen <[email protected]>
  M:    Pawel Laszczak <[email protected]>
  M:    Roger Quadros <[email protected]>
 +R:    Aswath Govindraju <[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/peter.chen/usb.git
@@@ -3900,8 -3880,9 +3900,8 @@@ T:      git git://linuxtv.org/media_tree.gi
  F:    drivers/media/radio/radio-cadet*
  
  CAFE CMOS INTEGRATED CAMERA CONTROLLER DRIVER
 -M:    Jonathan Corbet <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Orphan
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/admin-guide/media/cafe_ccic*
  F:    drivers/media/platform/marvell-ccic/
@@@ -4355,8 -4336,8 +4355,8 @@@ T:      git git://linuxtv.org/media_tree.gi
  F:    drivers/media/pci/cobalt/
  
  COCCINELLE/Semantic Patches (SmPL)
 -M:    Julia Lawall <Julia.Lawall@lip6.fr>
 -M:    Gilles Muller <Gilles.Muller@lip6.fr>
 +M:    Julia Lawall <Julia.Lawall@inria.fr>
 +M:    Gilles Muller <Gilles.Muller@inria.fr>
  M:    Nicolas Palix <[email protected]>
  M:    Michal Marek <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
@@@ -4382,7 -4363,7 +4382,7 @@@ CODA V4L2 MEM2MEM DRIVE
  M:    Philipp Zabel <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/media/coda.txt
 +F:    Documentation/devicetree/bindings/media/coda.yaml
  F:    drivers/media/platform/coda/
  
  CODE OF CONDUCT
  S:    Maintained
  F:    drivers/hwmon/corsair-cpro.c
  
 +CORSAIR-PSU HARDWARE MONITOR DRIVER
 +M:    Wilken Gottwalt <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/hwmon/corsair-psu.rst
 +F:    drivers/hwmon/corsair-psu.c
 +
  COSA/SRP SYNC SERIAL DRIVER
  M:    Jan "Yenya" Kasprzak <[email protected]>
  S:    Maintained
@@@ -4588,7 -4562,7 +4588,7 @@@ B:      https://bugzilla.kernel.or
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
  F:    Documentation/admin-guide/pm/cpuidle.rst
  F:    Documentation/driver-api/pm/cpuidle.rst
 -F:    drivers/cpuidle/*
 +F:    drivers/cpuidle/
  F:    include/linux/cpuidle.h
  
  CPU POWER MONITORING SUBSYSTEM
@@@ -5026,15 -5000,6 +5026,15 @@@ M:    Mario Limonciello <mario.limonciello
  S:    Maintained
  F:    drivers/platform/x86/dell-wmi-descriptor.c
  
 +DELL WMI SYSMAN DRIVER
 +M:    Divya Bharathi <[email protected]>
 +M:    Mario Limonciello <[email protected]>
 +M:    Prasanth Ksr <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/ABI/testing/sysfs-class-firmware-attributes
 +F:    drivers/platform/x86/dell-wmi-sysman/
 +
  DELL WMI NOTIFICATIONS DRIVER
  M:    Matthew Garrett <[email protected]>
  M:    Pali Rohár <[email protected]>
@@@ -5164,9 -5129,7 +5164,9 @@@ M:      Support Opensource <support.opensour
  S:    Supported
  W:    http://www.dialog-semiconductor.com/products
  F:    Documentation/devicetree/bindings/input/da90??-onkey.txt
 +F:    Documentation/devicetree/bindings/input/dlg,da72??.txt
  F:    Documentation/devicetree/bindings/mfd/da90*.txt
 +F:    Documentation/devicetree/bindings/regulator/dlg,da9*.yaml
  F:    Documentation/devicetree/bindings/regulator/da92*.txt
  F:    Documentation/devicetree/bindings/regulator/slg51000.txt
  F:    Documentation/devicetree/bindings/sound/da[79]*.txt
@@@ -5176,7 -5139,6 +5176,7 @@@ F:      Documentation/hwmon/da90??.rs
  F:    drivers/gpio/gpio-da90??.c
  F:    drivers/hwmon/da90??-hwmon.c
  F:    drivers/iio/adc/da91??-*.c
 +F:    drivers/input/misc/da72??.[ch]
  F:    drivers/input/misc/da90??_onkey.c
  F:    drivers/input/touchscreen/da9052_tsi.c
  F:    drivers/leds/leds-da90??.c
@@@ -5192,7 -5154,6 +5192,7 @@@ F:      drivers/rtc/rtc-da90??.
  F:    drivers/thermal/da90??-thermal.c
  F:    drivers/video/backlight/da90??_bl.c
  F:    drivers/watchdog/da90??_wdt.c
 +F:    include/dt-bindings/regulator/dlg,da9*-regulator.h
  F:    include/linux/mfd/da903x.h
  F:    include/linux/mfd/da9052/
  F:    include/linux/mfd/da9055/
@@@ -5298,12 -5259,6 +5298,12 @@@ F:    include/linux/dma-mapping.
  F:    include/linux/dma-map-ops.h
  F:    kernel/dma/
  
 +DMA MAPPING BENCHMARK
 +M:    Barry Song <[email protected]>
 +L:    [email protected]
 +F:    kernel/dma/map_benchmark.c
 +F:    tools/testing/selftests/dma/
 +
  DMA-BUF HEAPS FRAMEWORK
  M:    Sumit Semwal <[email protected]>
  R:    Benjamin Gaignard <[email protected]>
@@@ -5985,8 -5940,8 +5985,8 @@@ F:      Documentation/devicetree/bindings/di
  F:    drivers/gpu/drm/stm
  
  DRM DRIVERS FOR TI KEYSTONE
- M:    Jyri Sarha <j[email protected]>
- M:    Tomi Valkeinen <tom[email protected]>
+ M:    Jyri Sarha <j[email protected]>
+ M:    Tomi Valkeinen <tom[email protected]>
  L:    [email protected]
  S:    Maintained
  T:    git git://anongit.freedesktop.org/drm/drm-misc
@@@ -5996,15 -5951,15 +5996,15 @@@ F:   Documentation/devicetree/bindings/di
  F:    drivers/gpu/drm/tidss/
  
  DRM DRIVERS FOR TI LCDC
- M:    Jyri Sarha <j[email protected]>
- R:    Tomi Valkeinen <tom[email protected]>
+ M:    Jyri Sarha <j[email protected]>
+ R:    Tomi Valkeinen <tom[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/display/tilcdc/
  F:    drivers/gpu/drm/tilcdc/
  
  DRM DRIVERS FOR TI OMAP
- M:    Tomi Valkeinen <tom[email protected]>
+ M:    Tomi Valkeinen <tom[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/devicetree/bindings/display/ti/
  S:    Maintained
  F:    drivers/edac/ie31200_edac.c
  
 +EDAC-IGEN6
 +M:    Tony Luck <[email protected]>
 +R:    Qiuxu Zhuo <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/edac/igen6_edac.c
 +
  EDAC-MPC85XX
  M:    Johannes Thumshirn <[email protected]>
  L:    [email protected]
@@@ -6471,7 -6419,7 +6471,7 @@@ EDAC-SKYLAK
  M:    Tony Luck <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    drivers/edac/skx_*.c
 +F:    drivers/edac/skx_*.[ch]
  
  EDAC-TI
  M:    Tero Kristo <[email protected]>
@@@ -6755,7 -6703,6 +6755,7 @@@ F:      Documentation/filesystems/f2fs.rs
  F:    fs/f2fs/
  F:    include/linux/f2fs_fs.h
  F:    include/trace/events/f2fs.h
 +F:    include/uapi/linux/f2fs.h
  
  F71805F HARDWARE MONITORING DRIVER
  M:    Jean Delvare <[email protected]>
@@@ -6979,6 -6926,12 +6979,6 @@@ S:     Maintaine
  W:    http://floatingpoint.sourceforge.net/emulator/index.html
  F:    arch/x86/math-emu/
  
 -FRAME RELAY DLCI/FRAD (Sangoma drivers too)
 -L:    [email protected]
 -S:    Orphan
 -F:    drivers/net/wan/dlci.c
 -F:    drivers/net/wan/sdla.c
 -
  FRAMEBUFFER LAYER
  L:    [email protected]
  L:    [email protected]
@@@ -7359,6 -7312,7 +7359,6 @@@ F:      drivers/staging/gasket
  
  GCC PLUGINS
  M:    Kees Cook <[email protected]>
 -R:    Emese Revfy <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    Documentation/kbuild/gcc-plugins.rst
@@@ -7400,17 -7354,6 +7400,17 @@@ S:    Maintaine
  F:    drivers/base/arch_topology.c
  F:    include/linux/arch_topology.h
  
 +GENERIC ENTRY CODE
 +M:    Thomas Gleixner <[email protected]>
 +M:    Peter Zijlstra <[email protected]>
 +M:    Andy Lutomirski <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core/entry
 +F:    include/linux/entry-common.h
 +F:    include/linux/entry-kvm.h
 +F:    kernel/entry/
 +
  GENERIC GPIO I2C DRIVER
  M:    Wolfram Sang <[email protected]>
  S:    Supported
@@@ -7509,7 -7452,7 +7509,7 @@@ M:      Bob Peterson <[email protected]
  M:    Andreas Gruenbacher <[email protected]>
  L:    [email protected]
  S:    Supported
 -W:    http://sources.redhat.com/cluster/
 +B:    https://bugzilla.kernel.org/enter_bug.cgi?product=File%20System&component=gfs2
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git
  F:    Documentation/filesystems/gfs2*
  F:    fs/gfs2/
@@@ -7557,7 -7500,6 +7557,7 @@@ M:      Andy Shevchenko <andriy.shevchenko@l
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/andy/linux-gpio-intel.git
  F:    Documentation/firmware-guide/acpi/gpio-properties.rst
  F:    drivers/gpio/gpiolib-acpi.c
  F:    drivers/gpio/gpiolib-acpi.h
@@@ -7776,9 -7718,9 +7776,9 @@@ F:      drivers/clocksource/h8300_*.
  F:    drivers/irqchip/irq-renesas-h8*.c
  
  HABANALABS PCI DRIVER
 -M:    Oded Gabbay <o[email protected]>
 +M:    Oded Gabbay <o[email protected]>
  S:    Supported
 -T:    git https://github.com/HabanaAI/linux.git
 +T:    git https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git
  F:    Documentation/ABI/testing/debugfs-driver-habanalabs
  F:    Documentation/ABI/testing/sysfs-driver-habanalabs
  F:    drivers/misc/habanalabs/
@@@ -7976,27 -7918,12 +7976,27 @@@ F:   include/linux/hippidevice.
  F:    include/uapi/linux/if_hippi.h
  F:    net/802/hippi.c
  
 +HIRSCHMANN HELLCREEK ETHERNET SWITCH DRIVER
 +M:    Kurt Kanzenbach <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/net/dsa/hirschmann,hellcreek.yaml
 +F:    drivers/net/dsa/hirschmann/*
 +F:    include/linux/platform_data/hirschmann-hellcreek.h
 +F:    net/dsa/tag_hellcreek.c
 +
  HISILICON DMA DRIVER
  M:    Zhou Wang <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/dma/hisi_dma.c
  
 +HISILICON GPIO DRIVER
 +M:    Luo Jiaxing <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/gpio/gpio-hisi.c
 +
  HISILICON HIGH PERFORMANCE RSA ENGINE DRIVER (HPRE)
  M:    Zaibo Xu <[email protected]>
  L:    [email protected]
@@@ -8089,7 -8016,7 +8089,7 @@@ F:      drivers/staging/hikey9xx
  HISILICON TRUE RANDOM NUMBER GENERATOR V2 SUPPORT
  M:    Zaibo Xu <[email protected]>
  S:    Maintained
 -F:    drivers/char/hw_random/hisi-trng-v2.c
 +F:    drivers/crypto/hisilicon/trng/trng.c
  
  HISILICON V3XX SPI NOR FLASH Controller Driver
  M:    John Garry <[email protected]>
@@@ -8423,7 -8350,7 +8423,7 @@@ F:      Documentation/devicetree/bindings/i3
  F:    drivers/i3c/master/dw*
  
  I3C SUBSYSTEM
 -M:    Boris Brezillon <[email protected]>
 +M:    Alexandre Belloni <[email protected]>
  L:    [email protected] (moderated for non-subscribers)
  S:    Maintained
  C:    irc://chat.freenode.net/linux-i3c
@@@ -8717,7 -8644,7 +8717,7 @@@ INA209 HARDWARE MONITOR DRIVE
  M:    Guenter Roeck <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/hwmon/ina2xx.txt
 +F:    Documentation/devicetree/bindings/hwmon/ti,ina2xx.yaml
  F:    Documentation/hwmon/ina209.rst
  F:    drivers/hwmon/ina209.c
  
@@@ -8763,16 -8690,19 +8763,16 @@@ F:   include/uapi/rdma
  F:    samples/bpf/ibumad_kern.c
  F:    samples/bpf/ibumad_user.c
  
 -INGENIC JZ4780 DMA Driver
 -M:    Zubair Lutfullah Kakakhel <[email protected]>
 -S:    Maintained
 -F:    drivers/dma/dma-jz4780.c
 -
  INGENIC JZ4780 NAND DRIVER
  M:    Harvey Hunt <[email protected]>
  L:    [email protected]
 +L:    [email protected]
  S:    Maintained
  F:    drivers/mtd/nand/raw/ingenic/
  
  INGENIC JZ47xx SoCs
  M:    Paul Cercueil <[email protected]>
 +L:    [email protected]
  S:    Maintained
  F:    arch/mips/boot/dts/ingenic/
  F:    arch/mips/generic/board-ingenic.c
@@@ -9045,23 -8975,13 +9045,23 @@@ M:   Deepak Saxena <[email protected]
  S:    Maintained
  F:    drivers/char/hw_random/ixp4xx-rng.c
  
 -INTEL KEEMBAY DRM DRIVER
 +INTEL KEEM BAY DRM DRIVER
  M:    Anitha Chrisanthus <[email protected]>
  M:    Edmund Dea <[email protected]>
  S:    Maintained
  F:    Documentation/devicetree/bindings/display/intel,kmb_display.yaml
  F:    drivers/gpu/drm/kmb/
  
 +INTEL KEEM BAY OCS AES/SM4 CRYPTO DRIVER
 +M:    Daniele Alessandrelli <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/crypto/intel,keembay-ocs-aes.yaml
 +F:    drivers/crypto/keembay/Kconfig
 +F:    drivers/crypto/keembay/Makefile
 +F:    drivers/crypto/keembay/keembay-ocs-aes-core.c
 +F:    drivers/crypto/keembay/ocs-aes.c
 +F:    drivers/crypto/keembay/ocs-aes.h
 +
  INTEL MANAGEMENT ENGINE (mei)
  M:    Tomas Winkler <[email protected]>
  L:    [email protected]
@@@ -9109,12 -9029,6 +9109,12 @@@ F:    drivers/mfd/intel_soc_pmic
  F:    include/linux/mfd/intel_msic.h
  F:    include/linux/mfd/intel_soc_pmic*
  
 +INTEL PMT DRIVER
 +M:    "David E. Box" <[email protected]>
 +S:    Maintained
 +F:    drivers/mfd/intel_pmt.c
 +F:    drivers/platform/x86/intel_pmt_*
 +
  INTEL PRO/WIRELESS 2100, 2200BG, 2915ABG NETWORK CONNECTION SUPPORT
  M:    Stanislav Yakovlev <[email protected]>
  L:    [email protected]
@@@ -9197,6 -9111,16 +9197,6 @@@ W:     https://wireless.wiki.kernel.org/en/
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi.git
  F:    drivers/net/wireless/intel/iwlwifi/
  
 -INTEL WIRELESS WIMAX CONNECTION 2400
 -M:    Inaky Perez-Gonzalez <[email protected]>
 -M:    [email protected]
 -L:    [email protected] (subscribers-only)
 -S:    Supported
 -W:    http://linuxwimax.org
 -F:    Documentation/admin-guide/wimax/i2400m.rst
 -F:    drivers/net/wimax/i2400m/
 -F:    include/uapi/linux/wimax/i2400m.h
 -
  INTEL WMI SLIM BOOTLOADER (SBL) FIRMWARE UPDATE DRIVER
  M:    Jithu Joseph <[email protected]>
  R:    Maurice Ma <[email protected]>
@@@ -9226,19 -9150,6 +9226,19 @@@ F:    Documentation/x86/intel_txt.rs
  F:    arch/x86/kernel/tboot.c
  F:    include/linux/tboot.h
  
 +INTEL SGX
 +M:    Jarkko Sakkinen <[email protected]>
 +L:    [email protected]
 +S:    Supported
 +Q:    https://patchwork.kernel.org/project/intel-sgx/list/
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/jarkko/linux-sgx.git
 +F:    Documentation/x86/sgx.rst
 +F:    arch/x86/entry/vdso/vsgx.S
 +F:    arch/x86/include/uapi/asm/sgx.h
 +F:    arch/x86/kernel/cpu/sgx/*
 +F:    tools/testing/selftests/sgx/*
 +K:    \bSGX_
 +
  INTERCONNECT API
  M:    Georgi Djakov <[email protected]>
  L:    [email protected]
@@@ -9254,7 -9165,7 +9254,7 @@@ INVENSENSE ICM-426xx IMU DRIVE
  M:    Jean-Baptiste Maneyrol <[email protected]>
  L:    [email protected]
  S:    Maintained
 -W     https://invensense.tdk.com/
 +W:    https://invensense.tdk.com/
  F:    Documentation/devicetree/bindings/iio/imu/invensense,icm42600.yaml
  F:    drivers/iio/imu/inv_icm42600/
  
@@@ -9734,7 -9645,7 +9734,7 @@@ F:      arch/arm64/kvm
  F:    include/kvm/arm_*
  
  KERNEL VIRTUAL MACHINE FOR MIPS (KVM/mips)
 -M:    Huacai Chen <chenh[email protected]>
 +M:    Huacai Chen <chenh[email protected]>
  M:    Aleksandar Markovic <[email protected]>
  L:    [email protected]
  L:    [email protected]
  S:    Maintained
  F:    lib/list-test.c
  
 +LITEX PLATFORM
 +M:    Karol Gugala <[email protected]>
 +M:    Mateusz Holenko <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/*/litex,*.yaml
 +F:    arch/openrisc/boot/dts/or1klitex.dts
 +F:    drivers/soc/litex/litex_soc_ctrl.c
 +F:    drivers/tty/serial/liteuart.c
 +F:    include/linux/litex.h
 +
  LIVE PATCHING
  M:    Josh Poimboeuf <[email protected]>
  M:    Jiri Kosina <[email protected]>
  S:    Maintained
  W:    http://www.mac.linux-m68k.org/
  F:    arch/m68k/mac/
 +F:    drivers/macintosh/adb-iop.c
 +F:    drivers/macintosh/via-macii.c
  
  M68K ON HP9000/300
  M:    Philip Blundell <[email protected]>
@@@ -10550,15 -10449,6 +10550,15 @@@ F: drivers/mailbox
  F:    include/linux/mailbox_client.h
  F:    include/linux/mailbox_controller.h
  
 +MAILBOX ARM MHUv2
 +M:    Viresh Kumar <[email protected]>
 +M:    Tushar Khandelwal <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/mailbox/arm_mhuv2.c
 +F:    include/linux/mailbox/arm_mhuv2_message.h
 +F:    Documentation/devicetree/bindings/mailbox/arm,mhuv2.yaml
 +
  MAN-PAGES: MANUAL PAGES FOR LINUX -- Sections 2, 3, 4, 5, and 7
  M:    Michael Kerrisk <[email protected]>
  L:    [email protected]
@@@ -10605,7 -10495,6 +10605,7 @@@ M:   Srujana Challa <[email protected]
  L:    [email protected]
  S:    Maintained
  F:    drivers/crypto/marvell/
 +F:    include/linux/soc/marvell/octeontx2/
  
  MARVELL GIGABIT ETHERNET DRIVERS (skge/sky2)
  M:    Mirko Lindner <[email protected]>
  S:    Maintained
  F:    drivers/net/ethernet/marvell/mvneta.*
  
 +MARVELL MVPP2 ETHERNET DRIVER
 +M:    Marcin Wojtas <[email protected]>
 +M:    Russell King <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/net/marvell-pp2.txt
 +F:    drivers/net/ethernet/marvell/mvpp2/
 +
  MARVELL MWIFIEX WIRELESS DRIVER
  M:    Amitkumar Karwar <[email protected]>
  M:    Ganapathi Bhat <[email protected]>
@@@ -10686,7 -10567,6 +10686,7 @@@ M:   hariprasad <[email protected]
  L:    [email protected]
  S:    Supported
  F:    drivers/net/ethernet/marvell/octeontx2/nic/
 +F:    include/linux/soc/marvell/octeontx2/
  
  MARVELL OCTEONTX2 RVU ADMIN FUNCTION DRIVER
  M:    Sunil Goutham <[email protected]>
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/admin-guide/media/imx7.rst
 -F:    Documentation/devicetree/bindings/media/imx7-csi.txt
 -F:    Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt
 +F:    Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml
 +F:    Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml
  F:    drivers/staging/media/imx/imx7-media-csi.c
  F:    drivers/staging/media/imx/imx7-mipi-csis.c
  
@@@ -11234,12 -11114,6 +11234,12 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/i2c/i2c-mt7621.txt
  F:    drivers/i2c/busses/i2c-mt7621.c
  
 +MEDIATEK MT7621 PHY PCI DRIVER
 +M:    Sergio Paracuellos <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/phy/mediatek,mt7621-pci-phy.yaml
 +F:    drivers/phy/ralink/phy-mt7621-pci.c
 +
  MEDIATEK NAND CONTROLLER DRIVER
  L:    [email protected]
  S:    Orphan
@@@ -11318,7 -11192,6 +11318,7 @@@ MELLANOX BLUEFIELD I2C DRIVE
  M:    Khalil Blaiech <[email protected]>
  L:    [email protected]
  S:    Supported
 +F:    Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml
  F:    drivers/i2c/busses/i2c-mlxbf.c
  
  MELLANOX ETHERNET DRIVER (mlx4_en)
@@@ -11465,7 -11338,6 +11465,7 @@@ S:   Maintaine
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl.git
  F:    Documentation/devicetree/bindings/memory-controllers/
  F:    drivers/memory/
 +F:    include/dt-bindings/memory/
  
  MEMORY FREQUENCY SCALING DRIVERS FOR NVIDIA TEGRA
  M:    Dmitry Osipenko <[email protected]>
  L:    [email protected]
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux.git
  S:    Maintained
 -F:    drivers/devfreq/tegra20-devfreq.c
  F:    drivers/devfreq/tegra30-devfreq.c
  
  MEMORY MANAGEMENT
@@@ -11545,15 -11418,6 +11545,15 @@@ F: Documentation/devicetree/bindings/me
  F:    drivers/media/cec/platform/meson/ao-cec-g12a.c
  F:    drivers/media/cec/platform/meson/ao-cec.c
  
 +MESON GE2D DRIVER FOR AMLOGIC SOCS
 +M:    Neil Armstrong <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/amlogic,axg-ge2d.yaml
 +F:    drivers/media/meson/ge2d/
 +
  MESON NAND CONTROLLER DRIVER FOR AMLOGIC SOCS
  M:    Liang Yang <[email protected]>
  L:    [email protected]
@@@ -11670,7 -11534,7 +11670,7 @@@ M:   Woojung Huh <[email protected]
  M:    Microchip Linux Driver Support <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/net/dsa/ksz.txt
 +F:    Documentation/devicetree/bindings/net/dsa/microchip,ksz.yaml
  F:    drivers/net/dsa/microchip/*
  F:    include/linux/platform_data/microchip-ksz.h
  F:    net/dsa/tag_ksz.c
@@@ -11792,54 -11656,17 +11792,54 @@@ F:        drivers/scsi/smartpqi/smartpqi*.[ch
  F:    include/linux/cciss*.h
  F:    include/uapi/linux/cciss*.h
  
 +MICROSOFT SURFACE GPE LID SUPPORT DRIVER
 +M:    Maximilian Luz <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/platform/surface/surface_gpe.c
 +
 +MICROSOFT SURFACE HARDWARE PLATFORM SUPPORT
 +M:    Hans de Goede <[email protected]>
 +M:    Mark Gross <[email protected]>
 +M:    Maximilian Luz <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git
 +F:    drivers/platform/surface/
 +
  MICROSOFT SURFACE PRO 3 BUTTON DRIVER
  M:    Chen Yu <[email protected]>
  L:    [email protected]
  S:    Supported
 -F:    drivers/platform/x86/surfacepro3_button.c
 +F:    drivers/platform/surface/surfacepro3_button.c
  
  MICROTEK X6 SCANNER
  M:    Oliver Neukum <[email protected]>
  S:    Maintained
  F:    drivers/usb/image/microtek.*
  
 +MIKROTIK CRS3XX 98DX3236 BOARD SUPPORT
 +M:    Luka Kovacic <[email protected]>
 +M:    Luka Perkov <[email protected]>
 +S:    Maintained
 +F:    arch/arm/boot/dts/armada-xp-crs305-1g-4s-bit.dts
 +F:    arch/arm/boot/dts/armada-xp-crs305-1g-4s.dts
 +F:    arch/arm/boot/dts/armada-xp-crs326-24g-2s-bit.dts
 +F:    arch/arm/boot/dts/armada-xp-crs326-24g-2s.dts
 +F:    arch/arm/boot/dts/armada-xp-crs328-4c-20s-4s-bit.dts
 +F:    arch/arm/boot/dts/armada-xp-crs328-4c-20s-4s.dts
 +
 +MIPI CCS, SMIA AND SMIA++ IMAGE SENSOR DRIVER
 +M:    Sakari Ailus <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/media/i2c/mipi-ccs.yaml
 +F:    Documentation/driver-api/media/drivers/ccs/
 +F:    drivers/media/i2c/ccs-pll.c
 +F:    drivers/media/i2c/ccs-pll.h
 +F:    drivers/media/i2c/ccs/
 +F:    include/uapi/linux/smiapp.h
 +
  MIPS
  M:    Thomas Bogendoerfer <[email protected]>
  L:    [email protected]
@@@ -11907,7 -11734,7 +11907,7 @@@ F:   drivers/*/*/*loongson2
  F:    drivers/*/*loongson2*
  
  MIPS/LOONGSON64 ARCHITECTURE
 -M:    Huacai Chen <chenh[email protected]>
 +M:    Huacai Chen <chenh[email protected]>
  M:    Jiaxun Yang <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -12110,7 -11937,7 +12110,7 @@@ M:   Jacopo Mondi <[email protected]
  L:    [email protected]
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/aptina,mt9v111.txt
 +F:    Documentation/devicetree/bindings/media/i2c/aptina,mt9v111.yaml
  F:    drivers/media/i2c/mt9v111.c
  
  MULTIFUNCTION DEVICES (MFD)
  S:    Maintained
  W:    https://github.com/multipath-tcp/mptcp_net-next/wiki
  B:    https://github.com/multipath-tcp/mptcp_net-next/issues
 +F:    Documentation/networking/mptcp-sysctl.rst
  F:    include/net/mptcp.h
  F:    include/uapi/linux/mptcp.h
  F:    net/mptcp/
@@@ -12745,7 -12571,7 +12745,7 @@@ NXP FXAS21002C DRIVE
  M:    Rui Miguel Silva <[email protected]>
  L:    [email protected]
  S:    Maintained
 -F:    Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.txt
 +F:    Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.yaml
  F:    drivers/iio/gyro/fxas21002c.h
  F:    drivers/iio/gyro/fxas21002c_core.c
  F:    drivers/iio/gyro/fxas21002c_i2c.c
@@@ -12759,12 -12585,6 +12759,12 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/display/imx/nxp,imx8mq-dcss.yaml
  F:    drivers/gpu/drm/imx/dcss/
  
 +NXP PF8100/PF8121A/PF8200 PMIC REGULATOR DEVICE DRIVER
 +M:    Jagan Teki <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/regulator/nxp,pf8x00-regulator.yaml
 +F:    drivers/regulator/pf8x00-regulator.c
 +
  NXP PTN5150A CC LOGIC AND EXTCON DRIVER
  M:    Krzysztof Kozlowski <[email protected]>
  L:    [email protected]
@@@ -13062,14 -12882,6 +13062,14 @@@ M: Harald Welte <[email protected]
  S:    Maintained
  F:    drivers/char/pcmcia/cm4040_cs.*
  
 +OMNIVISION OV02A10 SENSOR DRIVER
 +M:    Dongchun Zhu <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://linuxtv.org/media_tree.git
 +F:    Documentation/devicetree/bindings/media/i2c/ovti,ov02a10.yaml
 +F:    drivers/media/i2c/ov02a10.c
 +
  OMNIVISION OV13858 SENSOR DRIVER
  M:    Sakari Ailus <[email protected]>
  L:    [email protected]
@@@ -13082,7 -12894,7 +13082,7 @@@ M:   Rui Miguel Silva <[email protected]
  L:    [email protected]
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/ov2680.txt
 +F:    Documentation/devicetree/bindings/media/i2c/ov2680.yaml
  F:    drivers/media/i2c/ov2680.c
  
  OMNIVISION OV2685 SENSOR DRIVER
@@@ -13140,8 -12952,9 +13140,8 @@@ T:   git git://linuxtv.org/media_tree.gi
  F:    drivers/media/i2c/ov5695.c
  
  OMNIVISION OV7670 SENSOR DRIVER
 -M:    Jonathan Corbet <[email protected]>
  L:    [email protected]
 -S:    Maintained
 +S:    Orphan
  T:    git git://linuxtv.org/media_tree.git
  F:    Documentation/devicetree/bindings/media/i2c/ov7670.txt
  F:    drivers/media/i2c/ov7670.c
@@@ -13151,7 -12964,7 +13151,7 @@@ M:   Jacopo Mondi <[email protected]
  L:    [email protected]
  S:    Odd fixes
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/ov772x.txt
 +F:    Documentation/devicetree/bindings/media/i2c/ovti,ov772x.yaml
  F:    drivers/media/i2c/ov772x.c
  F:    include/media/i2c/ov772x.h
  
@@@ -13187,14 -13000,6 +13187,14 @@@ T: git git://linuxtv.org/media_tree.gi
  F:    Documentation/devicetree/bindings/media/i2c/ov9650.txt
  F:    drivers/media/i2c/ov9650.c
  
 +OMNIVISION OV9734 SENSOR DRIVER
 +M:    Tianshu Qiu <[email protected]>
 +R:    Bingbu Cao <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://linuxtv.org/media_tree.git
 +F:    drivers/media/i2c/ov9734.c
 +
  ONENAND FLASH DRIVER
  M:    Kyungmin Park <[email protected]>
  L:    [email protected]
@@@ -13403,7 -13208,7 +13403,7 @@@ F:   include/trace/events/page_pool.
  F:    net/core/page_pool.c
  
  PANASONIC LAPTOP ACPI EXTRAS DRIVER
 -M:    Harald Welte <[email protected]>
 +M:    Kenneth Chan <[email protected]>
  L:    [email protected]
  S:    Maintained
  F:    drivers/platform/x86/panasonic-laptop.c
@@@ -13702,8 -13507,6 +13702,8 @@@ M:   Kishon Vijay Abraham I <[email protected]
  M:    Lorenzo Pieralisi <[email protected]>
  L:    [email protected]
  S:    Supported
 +F:    Documentation/PCI/endpoint/*
 +F:    Documentation/misc-devices/pci-endpoint-test.rst
  T:    git git://git.kernel.org/pub/scm/linux/kernel/git/kishon/pci-endpoint.git
  F:    drivers/misc/pci_endpoint_test.c
  F:    drivers/pci/endpoint/
@@@ -14127,13 -13930,6 +14127,13 @@@ M: Logan Gunthorpe <[email protected]
  S:    Maintained
  F:    drivers/dma/plx_dma.c
  
 +PM6764TR DRIVER
 +M:    Charles Hsu     <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/hwmon/pm6764tr.rst
 +F:    drivers/hwmon/pmbus/pm6764tr.c
 +
  PM-GRAPH UTILITY
  M:    "Todd E Brandt" <[email protected]>
  L:    [email protected]
@@@ -14676,7 -14472,6 +14676,7 @@@ W:   https://wireless.wiki.kernel.org/en/
  F:    drivers/net/wireless/ath/ath9k/
  
  QUALCOMM CAMERA SUBSYSTEM DRIVER
 +M:    Robert Foss <[email protected]>
  M:    Todor Tomov <[email protected]>
  L:    [email protected]
  S:    Maintained
@@@ -14758,14 -14553,6 +14758,14 @@@ F: Documentation/devicetree/bindings/ma
  F:    drivers/mailbox/qcom-ipcc.c
  F:    include/dt-bindings/mailbox/qcom-ipcc.h
  
 +QUALCOMM IPQ4019 USB PHY DRIVER
 +M:    Robert Marko <[email protected]>
 +M:    Luka Perkov <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/phy/qcom-usb-ipq4019-phy.yaml
 +F:    drivers/phy/qualcomm/phy-qcom-ipq4019-usb.c
 +
  QUALCOMM IPQ4019 VQMMC REGULATOR DRIVER
  M:    Robert Marko <[email protected]>
  M:    Luka Perkov <[email protected]>
@@@ -15115,7 -14902,7 +15115,7 @@@ RENESAS CLOCK DRIVER
  M:    Geert Uytterhoeven <[email protected]>
  L:    [email protected]
  S:    Supported
 -T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git clk-renesas
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git renesas-clk
  F:    Documentation/devicetree/bindings/clock/renesas,*
  F:    drivers/clk/renesas/
  
@@@ -15174,7 -14961,6 +15174,7 @@@ M:   Philipp Zabel <[email protected]
  S:    Maintained
  T:    git git://git.pengutronix.de/git/pza/linux
  F:    Documentation/devicetree/bindings/reset/
 +F:    Documentation/driver-api/reset.rst
  F:    drivers/reset/
  F:    include/dt-bindings/reset/
  F:    include/linux/reset-controller.h
@@@ -15259,13 -15045,10 +15259,13 @@@ ROCKCHIP ISP V1 DRIVE
  M:    Helen Koike <[email protected]>
  M:    Dafna Hirschfeld <[email protected]>
  L:    [email protected]
 +L:    [email protected]
  S:    Maintained
  F:    Documentation/admin-guide/media/rkisp1.rst
 +F:    Documentation/devicetree/bindings/media/rockchip-isp1.yaml
  F:    Documentation/userspace-api/media/v4l/pixfmt-meta-rkisp1.rst
 -F:    drivers/staging/media/rkisp1/
 +F:    drivers/media/platform/rockchip/rkisp1
 +F:    include/uapi/linux/rkisp1-config.h
  
  ROCKCHIP RASTER 2D GRAPHIC ACCELERATION UNIT DRIVER
  M:    Jacob Chen <[email protected]>
  S:    Maintained
  F:    drivers/video/fbdev/s3c-fb.c
  
 +SAMSUNG INTERCONNECT DRIVERS
 +M:    Sylwester Nawrocki <[email protected]>
 +M:    Artur Świgoń <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    drivers/interconnect/samsung/
 +
  SAMSUNG LAPTOP DRIVER
  M:    Corentin Chary <[email protected]>
  L:    [email protected]
@@@ -15838,15 -15613,6 +15838,15 @@@ F: Documentation/scsi/st.rs
  F:    drivers/scsi/st.*
  F:    drivers/scsi/st_*.h
  
 +SCSI TARGET CORE USER DRIVER
 +M:    Bodo Stroesser <[email protected]>
 +L:    [email protected]
 +L:    [email protected]
 +S:    Supported
 +F:    Documentation/target/tcmu-design.rst
 +F:    drivers/target/target_core_user.c
 +F:    include/uapi/linux/target_core_user.h
 +
  SCSI TARGET SUBSYSTEM
  M:    "Martin K. Petersen" <[email protected]>
  L:    [email protected]
@@@ -16070,14 -15836,13 +16070,14 @@@ F:        include/linux/sfp.
  K:    phylink\.h|struct\s+phylink|\.phylink|>phylink_|phylink_(autoneg|clear|connect|create|destroy|disconnect|ethtool|helper|mac|mii|of|set|start|stop|test|validate)
  
  SGI GRU DRIVER
 -M:    Dimitri Sivanich <sivanich@sgi.com>
 +M:    Dimitri Sivanich <dimitri.sivanich@hpe.com>
  S:    Maintained
  F:    drivers/misc/sgi-gru/
  
  SGI XP/XPC/XPNET DRIVER
 -M:    Cliff Whickman <[email protected]>
  M:    Robin Holt <[email protected]>
 +M:    Steve Wahl <[email protected]>
 +R:    Mike Travis <[email protected]>
  S:    Maintained
  F:    drivers/misc/sgi-xp/
  
@@@ -16362,6 -16127,16 +16362,6 @@@ S:  Maintaine
  F:    drivers/firmware/smccc/
  F:    include/linux/arm-smccc.h
  
 -SMIA AND SMIA++ IMAGE SENSOR DRIVER
 -M:    Sakari Ailus <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    Documentation/devicetree/bindings/media/i2c/nokia,smia.txt
 -F:    drivers/media/i2c/smiapp-pll.c
 -F:    drivers/media/i2c/smiapp-pll.h
 -F:    drivers/media/i2c/smiapp/
 -F:    include/uapi/linux/smiapp.h
 -
  SMM665 HARDWARE MONITOR DRIVER
  M:    Guenter Roeck <[email protected]>
  L:    [email protected]
@@@ -16457,7 -16232,7 +16457,7 @@@ F:   drivers/infiniband/sw/siw
  F:    include/uapi/rdma/siw-abi.h
  
  SOFT-ROCE DRIVER (rxe)
 -M:    Zhu Yanjun <yanjunz@nvidia.com>
 +M:    Zhu Yanjun <zyjzyj2000@gmail.com>
  L:    [email protected]
  S:    Supported
  F:    drivers/infiniband/sw/rxe/
@@@ -16524,7 -16299,7 +16524,7 @@@ M:   Ricardo Ribalda <[email protected]
  L:    [email protected]
  S:    Maintained
  T:    git git://linuxtv.org/media_tree.git
 -F:    Documentation/devicetree/bindings/media/i2c/sony,imx214.txt
 +F:    Documentation/devicetree/bindings/media/i2c/sony,imx214.yaml
  F:    drivers/media/i2c/imx214.c
  
  SONY IMX219 SENSOR DRIVER
@@@ -16760,10 -16535,8 +16760,10 @@@ F: Documentation/networking/device_driv
  F:    drivers/net/ethernet/toshiba/spider_net*
  
  SPMI SUBSYSTEM
 -R:    Stephen Boyd <[email protected]>
 -L:    [email protected]
 +M:    Stephen Boyd <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +T:    git git://git.kernel.org/pub/scm/linux/kernel/git/sboyd/spmi.git
  F:    Documentation/devicetree/bindings/spmi/
  F:    drivers/spmi/
  F:    include/dt-bindings/spmi/spmi.h
@@@ -16917,22 -16690,6 +16917,22 @@@ M: Ion Badulescu <[email protected]
  S:    Odd Fixes
  F:    drivers/net/ethernet/adaptec/starfire*
  
 +STATIC BRANCH/CALL
 +M:    Peter Zijlstra <[email protected]>
 +M:    Josh Poimboeuf <[email protected]>
 +M:    Jason Baron <[email protected]>
 +R:    Steven Rostedt <[email protected]>
 +R:    Ard Biesheuvel <[email protected]>
 +S:    Supported
 +F:    arch/*/include/asm/jump_label*.h
 +F:    arch/*/include/asm/static_call*.h
 +F:    arch/*/kernel/jump_label.c
 +F:    arch/*/kernel/static_call.c
 +F:    include/linux/jump_label*.h
 +F:    include/linux/static_call*.h
 +F:    kernel/jump_label.c
 +F:    kernel/static_call.c
 +
  STEC S1220 SKD DRIVER
  M:    Damien Le Moal <[email protected]>
  L:    [email protected]
@@@ -17639,12 -17396,6 +17639,12 @@@ W: http://thinkwiki.org/wiki/Ibm-acp
  T:    git git://repo.or.cz/linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git
  F:    drivers/platform/x86/thinkpad_acpi.c
  
 +THUNDERBOLT DMA TRAFFIC TEST DRIVER
 +M:    Isaac Hazan <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/thunderbolt/dma_test.c
 +
  THUNDERBOLT DRIVER
  M:    Andreas Noever <[email protected]>
  M:    Michael Jamet <[email protected]>
@@@ -18025,7 -17776,6 +18025,7 @@@ T:   git git://git.kernel.org/pub/scm/lin
  F:    Documentation/trace/ftrace.rst
  F:    arch/*/*/*/ftrace.h
  F:    arch/*/kernel/ftrace.c
 +F:    fs/tracefs/
  F:    include/*/ftrace.h
  F:    include/linux/trace*.h
  F:    include/trace/
@@@ -18645,12 -18395,6 +18645,12 @@@ F: include/uapi/linux/uuid.
  F:    lib/test_uuid.c
  F:    lib/uuid.c
  
 +UV SYSFS DRIVER
 +M:    Justin Ernst <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    drivers/platform/x86/uv_sysfs.c
 +
  UVESAFB DRIVER
  M:    Michal Januszewski <[email protected]>
  L:    [email protected]
@@@ -19173,6 -18917,18 +19173,6 @@@ S:  Supporte
  W:    https://wireless.wiki.kernel.org/en/users/Drivers/wil6210
  F:    drivers/net/wireless/ath/wil6210/
  
 -WIMAX STACK
 -M:    Inaky Perez-Gonzalez <[email protected]>
 -M:    [email protected]
 -L:    [email protected] (subscribers-only)
 -S:    Supported
 -W:    http://linuxwimax.org
 -F:    Documentation/admin-guide/wimax/wimax.rst
 -F:    include/linux/wimax/debug.h
 -F:    include/net/wimax.h
 -F:    include/uapi/linux/wimax.h
 -F:    net/wimax/
 -
  WINBOND CIR DRIVER
  M:    David Härdeman <[email protected]>
  S:    Maintained
@@@ -19345,7 -19101,6 +19345,7 @@@ F:   arch/x86/platfor
  
  X86 PLATFORM UV HPE SUPERDOME FLEX
  M:    Steve Wahl <[email protected]>
 +R:    Mike Travis <[email protected]>
  R:    Dimitri Sivanich <[email protected]>
  R:    Russ Anderson <[email protected]>
  S:    Supported
@@@ -19532,16 -19287,6 +19532,16 @@@ S: Maintaine
  F:    Documentation/devicetree/bindings/net/can/xilinx_can.txt
  F:    drivers/net/can/xilinx_can.c
  
 +XILINX GPIO DRIVER
 +M:    Shubhrajyoti Datta <[email protected]>
 +R:    Srinivas Neeli <[email protected]>
 +R:    Michal Simek <[email protected]>
 +S:    Maintained
 +F:    Documentation/devicetree/bindings/gpio/gpio-xilinx.txt
 +F:    Documentation/devicetree/bindings/gpio/gpio-zynq.txt
 +F:    drivers/gpio/gpio-xilinx.c
 +F:    drivers/gpio/gpio-zynq.c
 +
  XILINX SD-FEC IP CORES
  M:    Derek Kiernan <[email protected]>
  M:    Dragan Cvetic <[email protected]>
@@@ -19698,13 -19443,6 +19698,13 @@@ T: git git://git.kernel.org/pub/scm/lin
  F:    Documentation/filesystems/zonefs.rst
  F:    fs/zonefs/
  
 +ZPOOL COMPRESSED PAGE STORAGE API
 +M:    Dan Streetman <[email protected]>
 +L:    [email protected]
 +S:    Maintained
 +F:    include/linux/zpool.h
 +F:    mm/zpool.c
 +
  ZR36067 VIDEO FOR LINUX DRIVER
  M:    Corentin Labbe <[email protected]>
  L:    [email protected]
@@@ -19715,6 -19453,13 +19715,6 @@@ Q:  https://patchwork.linuxtv.org/projec
  F:    Documentation/driver-api/media/drivers/zoran.rst
  F:    drivers/staging/media/zoran/
  
 -ZPOOL COMPRESSED PAGE STORAGE API
 -M:    Dan Streetman <[email protected]>
 -L:    [email protected]
 -S:    Maintained
 -F:    include/linux/zpool.h
 -F:    mm/zpool.c
 -
  ZRAM COMPRESSED RAM BLOCK DEVICE DRVIER
  M:    Minchan Kim <[email protected]>
  M:    Nitin Gupta <[email protected]>
index 343999047b4eb75dcaf19261df073772535dcb6c,92e56baf04ad19fb2aa7eb5fd08fa58da54963f2..37b4b9f0e468ad9a750ebd078637da71dd251db5
@@@ -195,7 -195,7 +195,7 @@@ void drm_mode_config_reset(struct drm_d
                        crtc->funcs->reset(crtc);
  
        drm_for_each_encoder(encoder, dev)
 -              if (encoder->funcs->reset)
 +              if (encoder->funcs && encoder->funcs->reset)
                        encoder->funcs->reset(encoder);
  
        drm_connector_list_iter_begin(dev, &conn_iter);
@@@ -626,6 -626,9 +626,9 @@@ void drm_mode_config_validate(struct dr
  {
        struct drm_encoder *encoder;
        struct drm_crtc *crtc;
+       struct drm_plane *plane;
+       u32 primary_with_crtc = 0, cursor_with_crtc = 0;
+       unsigned int num_primary = 0;
  
        if (!drm_core_check_feature(dev, DRIVER_MODESET))
                return;
                WARN(!crtc->primary, "Missing primary plane on [CRTC:%d:%s]\n",
                     crtc->base.id, crtc->name);
  
+               WARN(crtc->cursor && crtc->funcs->cursor_set,
+                    "[CRTC:%d:%s] must not have both a cursor plane and a cursor_set func",
+                    crtc->base.id, crtc->name);
+               WARN(crtc->cursor && crtc->funcs->cursor_set2,
+                    "[CRTC:%d:%s] must not have both a cursor plane and a cursor_set2 func",
+                    crtc->base.id, crtc->name);
+               WARN(crtc->cursor && crtc->funcs->cursor_move,
+                    "[CRTC:%d:%s] must not have both a cursor plane and a cursor_move func",
+                    crtc->base.id, crtc->name);
                if (crtc->primary) {
                        WARN(!(crtc->primary->possible_crtcs & drm_crtc_mask(crtc)),
                             "Bogus primary plane possible_crtcs: [PLANE:%d:%s] must be compatible with [CRTC:%d:%s]\n",
                             crtc->primary->base.id, crtc->primary->name,
                             crtc->base.id, crtc->name);
+                       WARN(primary_with_crtc & drm_plane_mask(crtc->primary),
+                            "Primary plane [PLANE:%d:%s] used for multiple CRTCs",
+                            crtc->primary->base.id, crtc->primary->name);
+                       primary_with_crtc |= drm_plane_mask(crtc->primary);
                }
                if (crtc->cursor) {
                        WARN(!(crtc->cursor->possible_crtcs & drm_crtc_mask(crtc)),
                             "Bogus cursor plane possible_crtcs: [PLANE:%d:%s] must be compatible with [CRTC:%d:%s]\n",
                             crtc->cursor->base.id, crtc->cursor->name,
                             crtc->base.id, crtc->name);
+                       WARN(cursor_with_crtc & drm_plane_mask(crtc->cursor),
+                            "Cursor plane [PLANE:%d:%s] used for multiple CRTCs",
+                            crtc->cursor->base.id, crtc->cursor->name);
+                       cursor_with_crtc |= drm_plane_mask(crtc->cursor);
                }
        }
+       drm_for_each_plane(plane, dev) {
+               if (plane->type == DRM_PLANE_TYPE_PRIMARY)
+                       num_primary++;
+       }
+       WARN(num_primary != dev->mode_config.num_crtc,
+            "Must have as many primary planes as there are CRTCs, but have %u primary planes and %u CRTCs",
+            num_primary, dev->mode_config.num_crtc);
  }
index de75c9f092b701fa5566a366a112ec9cb978363b,b15b65e48555c05a36932a373f96716f7a31f363..bf6e525bb116d6950460f8f98c730fc2b85f6391
@@@ -30,7 -30,6 +30,7 @@@
  #include <drm/drm_file.h>
  #include <drm/drm_crtc.h>
  #include <drm/drm_fourcc.h>
 +#include <drm/drm_managed.h>
  #include <drm/drm_vblank.h>
  
  #include "drm_crtc_internal.h"
   * enum drm_plane_type). A plane can be compatible with multiple CRTCs, see
   * &drm_plane.possible_crtcs.
   *
+  * Each CRTC must have a unique primary plane userspace can attach to enable
+  * the CRTC. In other words, userspace must be able to attach a different
+  * primary plane to each CRTC at the same time. Primary planes can still be
+  * compatible with multiple CRTCs. There must be exactly as many primary planes
+  * as there are CRTCs.
+  *
   * Legacy uAPI doesn't expose the primary and cursor planes directly. DRM core
   * relies on the driver to set the primary and optionally the cursor plane used
   * for legacy IOCTLs. This is done by calling drm_crtc_init_with_planes(). All
   * userspace too much.
   */
  
+ /**
+  * DOC: standard plane properties
+  *
+  * DRM planes have a few standardized properties:
+  *
+  * IN_FORMATS:
+  *     Blob property which contains the set of buffer format and modifier
+  *     pairs supported by this plane. The blob is a struct
+  *     drm_format_modifier_blob. Without this property the plane doesn't
+  *     support buffers with modifiers. Userspace cannot change this property.
+  */
  static unsigned int drm_num_planes(struct drm_device *dev)
  {
        unsigned int num = 0;
@@@ -155,16 -172,31 +173,16 @@@ done
        return 0;
  }
  
 -/**
 - * drm_universal_plane_init - Initialize a new universal plane object
 - * @dev: DRM device
 - * @plane: plane object to init
 - * @possible_crtcs: bitmask of possible CRTCs
 - * @funcs: callbacks for the new plane
 - * @formats: array of supported formats (DRM_FORMAT\_\*)
 - * @format_count: number of elements in @formats
 - * @format_modifiers: array of struct drm_format modifiers terminated by
 - *                    DRM_FORMAT_MOD_INVALID
 - * @type: type of plane (overlay, primary, cursor)
 - * @name: printf style format string for the plane name, or NULL for default name
 - *
 - * Initializes a plane object of type @type.
 - *
 - * Returns:
 - * Zero on success, error code on failure.
 - */
 -int drm_universal_plane_init(struct drm_device *dev, struct drm_plane *plane,
 -                           uint32_t possible_crtcs,
 -                           const struct drm_plane_funcs *funcs,
 -                           const uint32_t *formats, unsigned int format_count,
 -                           const uint64_t *format_modifiers,
 -                           enum drm_plane_type type,
 -                           const char *name, ...)
 +__printf(9, 0)
 +static int __drm_universal_plane_init(struct drm_device *dev,
 +                                    struct drm_plane *plane,
 +                                    uint32_t possible_crtcs,
 +                                    const struct drm_plane_funcs *funcs,
 +                                    const uint32_t *formats,
 +                                    unsigned int format_count,
 +                                    const uint64_t *format_modifiers,
 +                                    enum drm_plane_type type,
 +                                    const char *name, va_list ap)
  {
        struct drm_mode_config *config = &dev->mode_config;
        unsigned int format_modifier_count = 0;
        }
  
        if (name) {
 -              va_list ap;
 -
 -              va_start(ap, name);
                plane->name = kvasprintf(GFP_KERNEL, name, ap);
 -              va_end(ap);
        } else {
                plane->name = kasprintf(GFP_KERNEL, "plane-%d",
                                        drm_num_planes(dev));
  
        return 0;
  }
 +
 +/**
 + * drm_universal_plane_init - Initialize a new universal plane object
 + * @dev: DRM device
 + * @plane: plane object to init
 + * @possible_crtcs: bitmask of possible CRTCs
 + * @funcs: callbacks for the new plane
 + * @formats: array of supported formats (DRM_FORMAT\_\*)
 + * @format_count: number of elements in @formats
 + * @format_modifiers: array of struct drm_format modifiers terminated by
 + *                    DRM_FORMAT_MOD_INVALID
 + * @type: type of plane (overlay, primary, cursor)
 + * @name: printf style format string for the plane name, or NULL for default name
 + *
 + * Initializes a plane object of type @type. The &drm_plane_funcs.destroy hook
 + * should call drm_plane_cleanup() and kfree() the plane structure. The plane
 + * structure should not be allocated with devm_kzalloc().
 + *
 + * Note: consider using drmm_universal_plane_alloc() instead of
 + * drm_universal_plane_init() to let the DRM managed resource infrastructure
 + * take care of cleanup and deallocation.
 + *
 + * Returns:
 + * Zero on success, error code on failure.
 + */
 +int drm_universal_plane_init(struct drm_device *dev, struct drm_plane *plane,
 +                           uint32_t possible_crtcs,
 +                           const struct drm_plane_funcs *funcs,
 +                           const uint32_t *formats, unsigned int format_count,
 +                           const uint64_t *format_modifiers,
 +                           enum drm_plane_type type,
 +                           const char *name, ...)
 +{
 +      va_list ap;
 +      int ret;
 +
 +      WARN_ON(!funcs->destroy);
 +
 +      va_start(ap, name);
 +      ret = __drm_universal_plane_init(dev, plane, possible_crtcs, funcs,
 +                                       formats, format_count, format_modifiers,
 +                                       type, name, ap);
 +      va_end(ap);
 +      return ret;
 +}
  EXPORT_SYMBOL(drm_universal_plane_init);
  
 +static void drmm_universal_plane_alloc_release(struct drm_device *dev, void *ptr)
 +{
 +      struct drm_plane *plane = ptr;
 +
 +      if (WARN_ON(!plane->dev))
 +              return;
 +
 +      drm_plane_cleanup(plane);
 +}
 +
 +void *__drmm_universal_plane_alloc(struct drm_device *dev, size_t size,
 +                                 size_t offset, uint32_t possible_crtcs,
 +                                 const struct drm_plane_funcs *funcs,
 +                                 const uint32_t *formats, unsigned int format_count,
 +                                 const uint64_t *format_modifiers,
 +                                 enum drm_plane_type type,
 +                                 const char *name, ...)
 +{
 +      void *container;
 +      struct drm_plane *plane;
 +      va_list ap;
 +      int ret;
 +
 +      if (WARN_ON(!funcs || funcs->destroy))
 +              return ERR_PTR(-EINVAL);
 +
 +      container = drmm_kzalloc(dev, size, GFP_KERNEL);
 +      if (!container)
 +              return ERR_PTR(-ENOMEM);
 +
 +      plane = container + offset;
 +
 +      va_start(ap, name);
 +      ret = __drm_universal_plane_init(dev, plane, possible_crtcs, funcs,
 +                                       formats, format_count, format_modifiers,
 +                                       type, name, ap);
 +      va_end(ap);
 +      if (ret)
 +              return ERR_PTR(ret);
 +
 +      ret = drmm_add_action_or_reset(dev, drmm_universal_plane_alloc_release,
 +                                     plane);
 +      if (ret)
 +              return ERR_PTR(ret);
 +
 +      return container;
 +}
 +EXPORT_SYMBOL(__drmm_universal_plane_alloc);
 +
  int drm_plane_register_all(struct drm_device *dev)
  {
        unsigned int num_planes = 0;
This page took 0.209 seconds and 4 git commands to generate.