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_ */