From owner-freebsd-amd64@FreeBSD.ORG Mon Jan 19 11:53:23 2004 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3973616A4CE for ; Mon, 19 Jan 2004 11:53:23 -0800 (PST) Received: from everest.sethbc.org (r107647.resnet.cornell.edu [128.253.186.248]) by mx1.FreeBSD.org (Postfix) with ESMTP id B2C7243D49 for ; Mon, 19 Jan 2004 11:53:16 -0800 (PST) (envelope-from sethbc@sethbc.org) Received: from sethbc.org (localhost [127.0.0.1]) by everest.sethbc.org (Postfix) with SMTP id 224D03F418 for ; Mon, 19 Jan 2004 14:52:53 -0500 (EST) Received: from 128.253.186.248 (SquirrelMail authenticated user sethbc) by sethbc.org with HTTP; Mon, 19 Jan 2004 14:52:53 -0500 (EST) Message-ID: <49202.128.253.186.248.1074541973.squirrel@sethbc.org> Date: Mon, 19 Jan 2004 14:52:53 -0500 (EST) From: sethbc@sethbc.org To: freebsd-amd64@freebsd.org User-Agent: SquirrelMail/1.4.2 MIME-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Priority: 3 Importance: Normal Subject: DRM/DRI Support for ATI Cards X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Jan 2004 19:53:23 -0000 I was wondering if anyone has tried to build the DRM module for the ATI Radeon's on amd64. The module complains of relocation errors, but cannot be compiled with -fPIC either. The errors for the DRM module without -fPIC in CFLAGS are as follows: ld -Bshareable -d -warn-common -o radeon.ko radeon.kld ld: radeon.kld: relocation R_X86_64_32S can not be used when making a shared object; recompile with -fPIC radeon.kld: could not read symbols: Bad value *** Error code 1 the errors when compiled with -fPIC in CFLAGS are as follows: everest# make Warning: Object directory not changed from original /usr/src/sys/modules/drm/radeon @ -> /usr/src/sys machine -> /usr/src/sys/amd64/include awk -f @/tools/makeobjops.awk @/kern/device_if.m -h awk -f @/tools/makeobjops.awk @/kern/bus_if.m -h awk -f @/tools/makeobjops.awk @/dev/pci/pci_if.m -h touch opt_drm.h cc -O -fPIC -pipe -D_KERNEL -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -fformat-extensions -std=c99 -DKLD_MODULE -nostdinc -I- -I. -I@ -I@/../include -I/usr/include -finline-limit=20000 -fno-common -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -fformat-extensions -std=c99 -c /usr/src/sys/modules/drm/radeon/../../../dev/drm/radeon_cp.c cc1: sorry, unimplemented: code model kernel not supported in PIC mode cc1: error: code model `kernel' not supported in the 64 bit mode *** Error code 1 Stop in /usr/src/sys/modules/drm/radeon. in grepping through the source code it looked fairly portable, but i'm not familiar enough with the FreeBSD kernel to even hazard a guess at how this would be fixed. If someone else would take a look at it for me I'd be eternally grateful (well eternally seems like kind of a long time, but grateful anyway). Thanks, seth