From 0f9f510b52ab9426d540b0b4b645af4db4075c23 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Arkadiusz=20Mi=C5=9Bkiewicz?= Date: Mon, 5 Dec 2011 21:32:01 +0000 Subject: [PATCH] - up to 2.4.28 Changed files: libdrm-git.patch -> 1.1 libdrm.spec -> 1.51 --- libdrm-git.patch | 216 +++++++++++++++++++++++++++++++++++++++++++++++ libdrm.spec | 6 +- 2 files changed, 220 insertions(+), 2 deletions(-) create mode 100644 libdrm-git.patch diff --git a/libdrm-git.patch b/libdrm-git.patch new file mode 100644 index 0000000..3c0022c --- /dev/null +++ b/libdrm-git.patch @@ -0,0 +1,216 @@ +diff --git a/tests/radeon/list.h b/tests/radeon/list.h +new file mode 100644 +index 0000000..305c903 +--- /dev/null ++++ b/tests/radeon/list.h +@@ -0,0 +1,137 @@ ++/* ++ * ++ * Copyright 2006 Tungsten Graphics, Inc., Bismarck, ND. USA. ++ * All Rights Reserved. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the ++ * "Software"), to deal in the Software without restriction, including ++ * without limitation the rights to use, copy, modify, merge, publish, ++ * distribute, sub license, and/or sell copies of the Software, and to ++ * permit persons to whom the Software is furnished to do so, subject to ++ * the following conditions: ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, ++ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR ++ * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE ++ * USE OR OTHER DEALINGS IN THE SOFTWARE. ++ * ++ * The above copyright notice and this permission notice (including the ++ * next paragraph) shall be included in all copies or substantial portions ++ * of the Software. ++ * ++ */ ++ ++/** ++ * \file ++ * List macros heavily inspired by the Linux kernel ++ * list handling. No list looping yet. ++ * ++ * Is not threadsafe, so common operations need to ++ * be protected using an external mutex. ++ */ ++#ifndef _U_DOUBLE_LIST_H_ ++#define _U_DOUBLE_LIST_H_ ++ ++#include ++ ++struct list_head ++{ ++ struct list_head *prev; ++ struct list_head *next; ++}; ++ ++static void list_inithead(struct list_head *item) ++{ ++ item->prev = item; ++ item->next = item; ++} ++ ++static void list_add(struct list_head *item, struct list_head *list) ++{ ++ item->prev = list; ++ item->next = list->next; ++ list->next->prev = item; ++ list->next = item; ++} ++ ++static void list_addtail(struct list_head *item, struct list_head *list) ++{ ++ item->next = list; ++ item->prev = list->prev; ++ list->prev->next = item; ++ list->prev = item; ++} ++ ++static void list_replace(struct list_head *from, struct list_head *to) ++{ ++ to->prev = from->prev; ++ to->next = from->next; ++ from->next->prev = to; ++ from->prev->next = to; ++} ++ ++static void list_del(struct list_head *item) ++{ ++ item->prev->next = item->next; ++ item->next->prev = item->prev; ++} ++ ++static void list_delinit(struct list_head *item) ++{ ++ item->prev->next = item->next; ++ item->next->prev = item->prev; ++ item->next = item; ++ item->prev = item; ++} ++ ++#define LIST_INITHEAD(__item) list_inithead(__item) ++#define LIST_ADD(__item, __list) list_add(__item, __list) ++#define LIST_ADDTAIL(__item, __list) list_addtail(__item, __list) ++#define LIST_REPLACE(__from, __to) list_replace(__from, __to) ++#define LIST_DEL(__item) list_del(__item) ++#define LIST_DELINIT(__item) list_delinit(__item) ++ ++#define LIST_ENTRY(__type, __item, __field) \ ++ ((__type *)(((char *)(__item)) - offsetof(__type, __field))) ++ ++#define LIST_IS_EMPTY(__list) \ ++ ((__list)->next == (__list)) ++ ++#ifndef container_of ++#define container_of(ptr, sample, member) \ ++ (void *)((char *)(ptr) \ ++ - ((char *)&(sample)->member - (char *)(sample))) ++#endif ++ ++#define LIST_FOR_EACH_ENTRY(pos, head, member) \ ++ for (pos = container_of((head)->next, pos, member); \ ++ &pos->member != (head); \ ++ pos = container_of(pos->member.next, pos, member)) ++ ++#define LIST_FOR_EACH_ENTRY_SAFE(pos, storage, head, member) \ ++ for (pos = container_of((head)->next, pos, member), \ ++ storage = container_of(pos->member.next, pos, member); \ ++ &pos->member != (head); \ ++ pos = storage, storage = container_of(storage->member.next, storage, member)) ++ ++#define LIST_FOR_EACH_ENTRY_SAFE_REV(pos, storage, head, member) \ ++ for (pos = container_of((head)->prev, pos, member), \ ++ storage = container_of(pos->member.prev, pos, member); \ ++ &pos->member != (head); \ ++ pos = storage, storage = container_of(storage->member.prev, storage, member)) ++ ++#define LIST_FOR_EACH_ENTRY_FROM(pos, start, head, member) \ ++ for (pos = container_of((start), pos, member); \ ++ &pos->member != (head); \ ++ pos = container_of(pos->member.next, pos, member)) ++ ++#define LIST_FOR_EACH_ENTRY_FROM_REV(pos, start, head, member) \ ++ for (pos = container_of((start), pos, member); \ ++ &pos->member != (head); \ ++ pos = container_of(pos->member.prev, pos, member)) ++ ++#endif /*_U_DOUBLE_LIST_H_*/ +diff --git a/tests/radeon/rbo.h b/tests/radeon/rbo.h +new file mode 100644 +index 0000000..c25c73a +--- /dev/null ++++ b/tests/radeon/rbo.h +@@ -0,0 +1,50 @@ ++/* ++ * Copyright © 2011 Red Hat ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice (including the next ++ * paragraph) shall be included in all copies or substantial portions of the ++ * Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING ++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS ++ * IN THE SOFTWARE. ++ * ++ * Authors: ++ * Jerome Glisse ++ */ ++#ifndef RBO_H ++#define RBO_H ++ ++#include "list.h" ++ ++struct rbo { ++ struct list_head list; ++ int fd; ++ unsigned refcount; ++ unsigned mapcount; ++ unsigned handle; ++ unsigned size; ++ unsigned alignment; ++ void *data; ++}; ++ ++struct rbo *rbo(int fd, unsigned handle, unsigned size, ++ unsigned alignment, void *ptr); ++int rbo_map(struct rbo *bo); ++void rbo_unmap(struct rbo *bo); ++struct rbo *rbo_incref(struct rbo *bo); ++struct rbo *rbo_decref(struct rbo *bo); ++int rbo_wait(struct rbo *bo); ++ ++#endif +commit 902ee661f1864aaf8325621085f6a1b5a6a3673a +Author: Dave Airlie +Date: Mon Dec 5 21:24:48 2011 +0000 + + test/radeon: add missing files for dist + +diff --git a/tests/radeon/Makefile.am b/tests/radeon/Makefile.am +index 021ca72..1775669 100644 +--- a/tests/radeon/Makefile.am ++++ b/tests/radeon/Makefile.am +@@ -9,4 +9,6 @@ noinst_PROGRAMS = \ + + radeon_ttm_SOURCES = \ + rbo.c \ ++ rbo.h \ ++ list.h \ + radeon_ttm.c diff --git a/libdrm.spec b/libdrm.spec index ca802bd..dfad27e 100644 --- a/libdrm.spec +++ b/libdrm.spec @@ -1,13 +1,14 @@ Summary: Userspace interface to kernel DRM services Summary(pl.UTF-8): Interfejs przestrzeni użytkownika do usług DRM jądra Name: libdrm -Version: 2.4.27 +Version: 2.4.28 Release: 1 License: MIT Group: Libraries Source0: http://dri.freedesktop.org/libdrm/%{name}-%{version}.tar.bz2 -# Source0-md5: 0fba4f42735cd3d24dd7a8cde0023fbd +# Source0-md5: 6488f64119c6439fa4038e9cd7b30b67 Patch0: %{name}-kms.patch +Patch1: %{name}-git.patch URL: http://dri.freedesktop.org/ BuildRequires: autoconf >= 2.63 BuildRequires: automake >= 1:1.10 @@ -51,6 +52,7 @@ Statyczna biblioteka libdrm. %prep %setup -q %patch0 -p1 +%patch1 -p1 %build %{__libtoolize} -- 2.44.0