* struct clk *pclk;
* };
*
- * static struct drm_driver driver_drm_driver = {
+ * static const struct drm_driver driver_drm_driver = {
* [...]
* };
*
}
static int drm_dev_init(struct drm_device *dev,
- struct drm_driver *driver,
+ const struct drm_driver *driver,
struct device *parent)
{
int ret;
kref_init(&dev->ref);
dev->dev = get_device(parent);
+#ifdef CONFIG_DRM_LEGACY
+ dev->driver = (struct drm_driver *)driver;
+#else
dev->driver = driver;
+#endif
INIT_LIST_HEAD(&dev->managed.resources);
spin_lock_init(&dev->managed.lock);
static int devm_drm_dev_init(struct device *parent,
struct drm_device *dev,
- struct drm_driver *driver)
+ const struct drm_driver *driver)
{
int ret;
return ret;
}
-void *__devm_drm_dev_alloc(struct device *parent, struct drm_driver *driver,
+void *__devm_drm_dev_alloc(struct device *parent,
+ const struct drm_driver *driver,
size_t size, size_t offset)
{
void *container;
* RETURNS:
* Pointer to new DRM device, or ERR_PTR on failure.
*/
-struct drm_device *drm_dev_alloc(struct drm_driver *driver,
+struct drm_device *drm_dev_alloc(const struct drm_driver *driver,
struct device *parent)
{
struct drm_device *dev;
*/
int drm_dev_register(struct drm_device *dev, unsigned long flags)
{
- struct drm_driver *driver = dev->driver;
+ const struct drm_driver *driver = dev->driver;
int ret;
if (!driver->load)
#endif
};
-void *__devm_drm_dev_alloc(struct device *parent, struct drm_driver *driver,
+void *__devm_drm_dev_alloc(struct device *parent,
+ const struct drm_driver *driver,
size_t size, size_t offset);
/**
((type *) __devm_drm_dev_alloc(parent, driver, sizeof(type), \
offsetof(type, member)))
-struct drm_device *drm_dev_alloc(struct drm_driver *driver,
+struct drm_device *drm_dev_alloc(const struct drm_driver *driver,
struct device *parent);
int drm_dev_register(struct drm_device *dev, unsigned long flags);
void drm_dev_unregister(struct drm_device *dev);