Module Name: src
Committed By: riastradh
Date: Wed Jul 24 02:45:06 UTC 2013
Modified Files:
src/sys/external/bsd/drm2/dist/include/drm [riastradh-drm2]: drmP.h
src/sys/external/bsd/drm2/include/drm [riastradh-drm2]:
drm_agp_netbsd.h
Log Message:
Add drm_bind_agp, drm_unbind_agp, & drm_free_agp to drm_agp_netbsd.h.
These have an extra argument for the agp bridge descriptor, as
NetBSD's AGP KPI requires.
Omit declarations of drm_bind_agp, drm_unbind_agp, and drm_free_agp
from drmP.h, now that these are all declared (and defined) in
drm_agp_netbsd.h instead.
To generate a diff of this commit:
cvs rdiff -u -r1.1.1.1.2.35 -r1.1.1.1.2.36 \
src/sys/external/bsd/drm2/dist/include/drm/drmP.h
cvs rdiff -u -r1.1.2.3 -r1.1.2.4 \
src/sys/external/bsd/drm2/include/drm/drm_agp_netbsd.h
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/include/drm/drmP.h
diff -u src/sys/external/bsd/drm2/dist/include/drm/drmP.h:1.1.1.1.2.35 src/sys/external/bsd/drm2/dist/include/drm/drmP.h:1.1.1.1.2.36
--- src/sys/external/bsd/drm2/dist/include/drm/drmP.h:1.1.1.1.2.35 Wed Jul 24 02:39:57 2013
+++ src/sys/external/bsd/drm2/dist/include/drm/drmP.h Wed Jul 24 02:45:06 2013
@@ -1475,16 +1475,16 @@ extern unsigned int drm_poll(struct file
/* Memory management support (drm_memory.h) */
#include <drm/drm_memory.h>
+#ifndef __NetBSD__
extern void drm_free_agp(DRM_AGP_MEM * handle, int pages);
extern int drm_bind_agp(DRM_AGP_MEM * handle, unsigned int start);
-#ifndef __NetBSD__
extern DRM_AGP_MEM *drm_agp_bind_pages(struct drm_device *dev,
struct page **pages,
unsigned long num_pages,
uint32_t gtt_offset,
uint32_t type);
-#endif
extern int drm_unbind_agp(DRM_AGP_MEM * handle);
+#endif
#ifdef __NetBSD__
extern void *drm_ioremap(struct drm_device *dev, struct drm_local_map *map);
extern void drm_iounmap(struct drm_device *dev, struct drm_local_map *map);
Index: src/sys/external/bsd/drm2/include/drm/drm_agp_netbsd.h
diff -u src/sys/external/bsd/drm2/include/drm/drm_agp_netbsd.h:1.1.2.3 src/sys/external/bsd/drm2/include/drm/drm_agp_netbsd.h:1.1.2.4
--- src/sys/external/bsd/drm2/include/drm/drm_agp_netbsd.h:1.1.2.3 Wed Jul 24 02:44:48 2013
+++ src/sys/external/bsd/drm2/include/drm/drm_agp_netbsd.h Wed Jul 24 02:45:06 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: drm_agp_netbsd.h,v 1.1.2.3 2013/07/24 02:44:48 riastradh Exp $ */
+/* $NetBSD: drm_agp_netbsd.h,v 1.1.2.4 2013/07/24 02:45:06 riastradh Exp $ */
/*-
* Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -155,4 +155,23 @@ agp_copy_info(struct agp_bridge_data *br
agp_get_info(bridge, info);
}
+static inline int
+drm_bind_agp(struct agp_bridge_data *bridge, DRM_AGP_MEM *mem, size_t page)
+{
+ return agp_bind_memory(&bridge->abd_sc, mem, (page << AGP_PAGE_SHIFT));
+}
+
+static inline int
+drm_unbind_agp(struct agp_bridge_data *bridge, DRM_AGP_MEM *mem)
+{
+ return agp_unbind_memory(&bridge->abd_sc, mem);
+}
+
+static inline void
+drm_free_agp(struct agp_bridge_data *bridge, DRM_AGP_MEM *mem,
+ size_t npages __unused)
+{
+ agp_free_memory(&bridge->abd_sc, mem);
+}
+
#endif /* _DRM_DRM_AGP_NETBSD_H_ */