Module Name: src
Committed By: martin
Date: Sun Jan 5 09:42:06 UTC 2020
Modified Files:
src/sys/external/bsd/drm2/dist/drm [netbsd-9]: drm_bridge.c drm_panel.c
src/sys/external/bsd/drm2/dist/include/drm [netbsd-9]: drm_crtc.h
drm_panel.h
src/sys/external/bsd/drm2/drm [netbsd-9]: drm_module.c
Log Message:
Pull up following revision(s) (requested by jmcneill in ticket #603):
sys/external/bsd/drm2/dist/drm/drm_bridge.c: revision 1.4
sys/external/bsd/drm2/drm/drm_module.c: revision 1.17
sys/external/bsd/drm2/dist/include/drm/drm_crtc.h: revision 1.8
sys/external/bsd/drm2/dist/drm/drm_panel.c: revision 1.4
sys/external/bsd/drm2/dist/include/drm/drm_panel.h: revision 1.3
Initialize drm_bridge and drm_panel locks.
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.3.8.1 src/sys/external/bsd/drm2/dist/drm/drm_bridge.c
cvs rdiff -u -r1.2 -r1.2.4.1 src/sys/external/bsd/drm2/dist/drm/drm_panel.c
cvs rdiff -u -r1.7 -r1.7.4.1 \
src/sys/external/bsd/drm2/dist/include/drm/drm_crtc.h
cvs rdiff -u -r1.2 -r1.2.4.1 \
src/sys/external/bsd/drm2/dist/include/drm/drm_panel.h
cvs rdiff -u -r1.15 -r1.15.4.1 src/sys/external/bsd/drm2/drm/drm_module.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/external/bsd/drm2/dist/drm/drm_bridge.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_bridge.c:1.3 src/sys/external/bsd/drm2/dist/drm/drm_bridge.c:1.3.8.1
--- src/sys/external/bsd/drm2/dist/drm/drm_bridge.c:1.3 Mon Aug 27 06:43:47 2018
+++ src/sys/external/bsd/drm2/dist/drm/drm_bridge.c Sun Jan 5 09:42:05 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_bridge.c,v 1.3 2018/08/27 06:43:47 riastradh Exp $ */
+/* $NetBSD: drm_bridge.c,v 1.3.8.1 2020/01/05 09:42:05 martin Exp $ */
/*
* Copyright (c) 2014 Samsung Electronics Co., Ltd
@@ -24,7 +24,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_bridge.c,v 1.3 2018/08/27 06:43:47 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_bridge.c,v 1.3.8.1 2020/01/05 09:42:05 martin Exp $");
#include <linux/err.h>
#include <linux/module.h>
@@ -66,6 +66,17 @@ static DEFINE_MUTEX(bridge_lock);
static LIST_HEAD(bridge_list);
#endif
+#ifdef __NetBSD__
+void drm_bridge_init_lock(void)
+{
+ linux_mutex_init(&bridge_lock);
+}
+void drm_bridge_fini_lock(void)
+{
+ linux_mutex_destroy(&bridge_lock);
+}
+#endif
+
/**
* drm_bridge_add - add the given bridge to the global bridge list
*
Index: src/sys/external/bsd/drm2/dist/drm/drm_panel.c
diff -u src/sys/external/bsd/drm2/dist/drm/drm_panel.c:1.2 src/sys/external/bsd/drm2/dist/drm/drm_panel.c:1.2.4.1
--- src/sys/external/bsd/drm2/dist/drm/drm_panel.c:1.2 Mon Aug 27 04:58:19 2018
+++ src/sys/external/bsd/drm2/dist/drm/drm_panel.c Sun Jan 5 09:42:05 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_panel.c,v 1.2 2018/08/27 04:58:19 riastradh Exp $ */
+/* $NetBSD: drm_panel.c,v 1.2.4.1 2020/01/05 09:42:05 martin Exp $ */
/*
* Copyright (C) 2013, NVIDIA Corporation. All rights reserved.
@@ -24,7 +24,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_panel.c,v 1.2 2018/08/27 04:58:19 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_panel.c,v 1.2.4.1 2020/01/05 09:42:05 martin Exp $");
#include <linux/err.h>
#include <linux/module.h>
@@ -35,6 +35,17 @@ __KERNEL_RCSID(0, "$NetBSD: drm_panel.c,
static DEFINE_MUTEX(panel_lock);
static LIST_HEAD(panel_list);
+#ifdef __NetBSD__
+void drm_panel_init_lock(void)
+{
+ linux_mutex_init(&panel_lock);
+}
+void drm_panel_fini_lock(void)
+{
+ linux_mutex_destroy(&panel_lock);
+}
+#endif
+
void drm_panel_init(struct drm_panel *panel)
{
INIT_LIST_HEAD(&panel->list);
Index: src/sys/external/bsd/drm2/dist/include/drm/drm_crtc.h
diff -u src/sys/external/bsd/drm2/dist/include/drm/drm_crtc.h:1.7 src/sys/external/bsd/drm2/dist/include/drm/drm_crtc.h:1.7.4.1
--- src/sys/external/bsd/drm2/dist/include/drm/drm_crtc.h:1.7 Mon Aug 27 06:46:02 2018
+++ src/sys/external/bsd/drm2/dist/include/drm/drm_crtc.h Sun Jan 5 09:42:05 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_crtc.h,v 1.7 2018/08/27 06:46:02 riastradh Exp $ */
+/* $NetBSD: drm_crtc.h,v 1.7.4.1 2020/01/05 09:42:05 martin Exp $ */
/*
* Copyright © 2006 Keith Packard
@@ -1224,6 +1224,11 @@ extern unsigned int drm_connector_index(
/* helper to unplug all connectors from sysfs for device */
extern void drm_connector_unplug_all(struct drm_device *dev);
+#ifdef __NetBSD__
+extern void drm_bridge_init_lock(void);
+extern void drm_bridge_fini_lock(void);
+#endif
+
extern int drm_bridge_add(struct drm_bridge *bridge);
extern void drm_bridge_remove(struct drm_bridge *bridge);
extern struct drm_bridge *of_drm_find_bridge(struct device_node *np);
Index: src/sys/external/bsd/drm2/dist/include/drm/drm_panel.h
diff -u src/sys/external/bsd/drm2/dist/include/drm/drm_panel.h:1.2 src/sys/external/bsd/drm2/dist/include/drm/drm_panel.h:1.2.4.1
--- src/sys/external/bsd/drm2/dist/include/drm/drm_panel.h:1.2 Mon Aug 27 04:58:38 2018
+++ src/sys/external/bsd/drm2/dist/include/drm/drm_panel.h Sun Jan 5 09:42:05 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_panel.h,v 1.2 2018/08/27 04:58:38 riastradh Exp $ */
+/* $NetBSD: drm_panel.h,v 1.2.4.1 2020/01/05 09:42:05 martin Exp $ */
/*
* Copyright (C) 2013, NVIDIA Corporation. All rights reserved.
@@ -127,6 +127,11 @@ static inline int drm_panel_get_modes(st
return panel ? -ENOSYS : -EINVAL;
}
+#ifdef __NetBSD__
+void drm_panel_init_lock(void);
+void drm_panel_fini_lock(void);
+#endif
+
void drm_panel_init(struct drm_panel *panel);
int drm_panel_add(struct drm_panel *panel);
Index: src/sys/external/bsd/drm2/drm/drm_module.c
diff -u src/sys/external/bsd/drm2/drm/drm_module.c:1.15 src/sys/external/bsd/drm2/drm/drm_module.c:1.15.4.1
--- src/sys/external/bsd/drm2/drm/drm_module.c:1.15 Tue Aug 28 03:41:39 2018
+++ src/sys/external/bsd/drm2/drm/drm_module.c Sun Jan 5 09:42:05 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_module.c,v 1.15 2018/08/28 03:41:39 riastradh Exp $ */
+/* $NetBSD: drm_module.c,v 1.15.4.1 2020/01/05 09:42:05 martin Exp $ */
/*-
* Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: drm_module.c,v 1.15 2018/08/28 03:41:39 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: drm_module.c,v 1.15.4.1 2020/01/05 09:42:05 martin Exp $");
#include <sys/types.h>
#include <sys/condvar.h>
@@ -48,6 +48,7 @@ __KERNEL_RCSID(0, "$NetBSD: drm_module.c
#include <drm/drm_encoder_slave.h>
#include <drm/drm_internal.h>
#include <drm/drm_sysctl.h>
+#include <drm/drm_panel.h>
/*
* XXX This is stupid.
@@ -122,6 +123,8 @@ drm_init(void)
linux_mutex_init(&drm_global_mutex);
drm_connector_ida_init();
drm_global_init();
+ drm_panel_init_lock();
+ drm_bridge_init_lock();
drm_sysctl_init(&drm_def);
drm_i2c_encoders_init();
@@ -146,6 +149,8 @@ drm_fini(void)
drm_i2c_encoders_fini();
drm_sysctl_fini(&drm_def);
+ drm_bridge_fini_lock();
+ drm_panel_fini_lock();
drm_global_release();
drm_connector_ida_destroy();
linux_mutex_destroy(&drm_global_mutex);