drm-misc-next for 5.10:
UAPI Changes:
Cross-subsystem Changes:
Core Changes:
- dev: More devm_drm convertions and removal of drm_dev_init
Driver Changes:
- i915: selftests improvements
- panfrost: support for Amlogic SoC
- vc4: one fix
-----BEGIN PGP SIGNATURE-----
iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCX2jGxQAKCRDj7w1vZxhR
xR3DAQCiZOnaxVcY49iG4343Z1aHHaIEShbnB0bDdaWstn7kiQD/UXBXUoOSFoFQ
FkTsW31JsdXNnWP5e6/eJd2Lb6waVAA=
=VlsU
-----END PGP SIGNATURE-----
Merge tag 'drm-misc-next-2020-09-21' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
drm-misc-next for 5.10:
UAPI Changes:
Cross-subsystem Changes:
- virtio: Merged a PR for patches that will affect drm/virtio
Core Changes:
- dev: More devm_drm convertions and removal of drm_dev_init
- atomic: Split out drm_atomic_helper_calc_timestamping_constants of
drm_atomic_helper_update_legacy_modeset_state
- ttm: More rework
Driver Changes:
- i915: selftests improvements
- panfrost: support for Amlogic SoC
- vc4: one fix
- tree-wide: conversions to devm_drm_dev_alloc,
- ast: simplifications of the atomic modesetting code
- panfrost: multiple fixes
- vc4: multiple fixes
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20200921152956.2gxnsdgxmwhvjyut@gilmour.lan
This commit is contained in:
commit
6ea6be7708
244 changed files with 13196 additions and 5521 deletions
|
|
@ -283,6 +283,7 @@ struct dma_buf_ops {
|
|||
* @exp_name: name of the exporter; useful for debugging.
|
||||
* @name: userspace-provided name; useful for accounting and debugging,
|
||||
* protected by @resv.
|
||||
* @name_lock: spinlock to protect name access
|
||||
* @owner: pointer to exporter module; used for refcounting when exporter is a
|
||||
* kernel module.
|
||||
* @list_node: node for dma_buf accounting and debugging.
|
||||
|
|
@ -311,7 +312,7 @@ struct dma_buf {
|
|||
void *vmap_ptr;
|
||||
const char *exp_name;
|
||||
const char *name;
|
||||
spinlock_t name_lock; /* spinlock to protect name access */
|
||||
spinlock_t name_lock;
|
||||
struct module *owner;
|
||||
struct list_head list_node;
|
||||
void *priv;
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ struct font_desc {
|
|||
#define MINI4x6_IDX 9
|
||||
#define FONT6x10_IDX 10
|
||||
#define TER16x32_IDX 11
|
||||
#define FONT6x8_IDX 12
|
||||
|
||||
extern const struct font_desc font_vga_8x8,
|
||||
font_vga_8x16,
|
||||
|
|
@ -45,7 +46,8 @@ extern const struct font_desc font_vga_8x8,
|
|||
font_acorn_8x8,
|
||||
font_mini_4x6,
|
||||
font_6x10,
|
||||
font_ter_16x32;
|
||||
font_ter_16x32,
|
||||
font_6x8;
|
||||
|
||||
/* Find a font with a specific name */
|
||||
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ struct via_port_cfg {
|
|||
/*
|
||||
* Allow subdevs to register suspend/resume hooks.
|
||||
*/
|
||||
#ifdef CONFIG_PM
|
||||
struct viafb_pm_hooks {
|
||||
struct list_head list;
|
||||
int (*suspend)(void *private);
|
||||
|
|
@ -57,7 +56,6 @@ struct viafb_pm_hooks {
|
|||
|
||||
void viafb_pm_register(struct viafb_pm_hooks *hooks);
|
||||
void viafb_pm_unregister(struct viafb_pm_hooks *hooks);
|
||||
#endif /* CONFIG_PM */
|
||||
|
||||
/*
|
||||
* This is the global viafb "device" containing stuff needed by
|
||||
|
|
|
|||
|
|
@ -11,6 +11,11 @@
|
|||
|
||||
struct irq_affinity;
|
||||
|
||||
struct virtio_shm_region {
|
||||
u64 addr;
|
||||
u64 len;
|
||||
};
|
||||
|
||||
/**
|
||||
* virtio_config_ops - operations for configuring a virtio device
|
||||
* Note: Do not assume that a transport implements all of the operations
|
||||
|
|
@ -66,6 +71,7 @@ struct irq_affinity;
|
|||
* the caller can then copy.
|
||||
* @set_vq_affinity: set the affinity for a virtqueue (optional).
|
||||
* @get_vq_affinity: get the affinity for a virtqueue (optional).
|
||||
* @get_shm_region: get a shared memory region based on the index.
|
||||
*/
|
||||
typedef void vq_callback_t(struct virtqueue *);
|
||||
struct virtio_config_ops {
|
||||
|
|
@ -89,6 +95,8 @@ struct virtio_config_ops {
|
|||
const struct cpumask *cpu_mask);
|
||||
const struct cpumask *(*get_vq_affinity)(struct virtio_device *vdev,
|
||||
int index);
|
||||
bool (*get_shm_region)(struct virtio_device *vdev,
|
||||
struct virtio_shm_region *region, u8 id);
|
||||
};
|
||||
|
||||
/* If driver didn't advertise the feature, it will never appear. */
|
||||
|
|
@ -251,6 +259,15 @@ int virtqueue_set_affinity(struct virtqueue *vq, const struct cpumask *cpu_mask)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
bool virtio_get_shm_region(struct virtio_device *vdev,
|
||||
struct virtio_shm_region *region, u8 id)
|
||||
{
|
||||
if (!vdev->config->get_shm_region)
|
||||
return false;
|
||||
return vdev->config->get_shm_region(vdev, region, id);
|
||||
}
|
||||
|
||||
static inline bool virtio_is_little_endian(struct virtio_device *vdev)
|
||||
{
|
||||
return virtio_has_feature(vdev, VIRTIO_F_VERSION_1) ||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue