freebsd-dev/sys/contrib/dev/ath/public/xscale-be-elf.inc

82 lines
2.9 KiB
PHP
Raw Normal View History

#
# Copyright (c) 2002-2006 Sam Leffler, Errno Consulting
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer,
# without modification.
# 2. Redistributions in binary form must reproduce at minimum a disclaimer
# similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
# redistribution must be conditioned upon including a substantially
# similar Disclaimer requirement for further binary redistribution.
# 3. Neither the names of the above-listed copyright holders nor the names
# of any contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# Alternatively, this software may be distributed under the terms of the
# GNU General Public License ("GPL") version 2 as published by the Free
# Software Foundation.
#
# NO WARRANTY
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
# AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
# THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
# THE POSSIBILITY OF SUCH DAMAGES.
#
Version 0.9.20.3: o remove os-specific glue code; it's now the responsibility of the driver o add wackelf utility for patching the ELF magic number on arm builds since noone can agree on how to mark a .o file as not having any floating point instructions o remove radar/dfs-related entry points; folks have finally decided how to support dfs w/o polluting the hal o properly recognize AR2424 chips (they were being rejected on attach despite being fully supported) o add HAL_CAP_RXORN_FATAL capability to control how RXORN errors are handled; previously RXORN was always treated as fatal because older chips required a reset; now we do not treat it as fatal for "newer chips" (noone seems to know what the cutoff is so this capability can be used to override the current guestimate) o HAL_CAP_RXTSTAMP_PREC capability to export the number of bits of precision for timestamp data returned in the rx descriptor o remove public exposure of the compression buffer; it is chip specific and never belonged in the public view o change definition of HAL_INT_GLOBAL from an enum member to a #define to workaround compilers that bitch about enum values that appear overflow 31 bits o add support for newer chips that can store the tkip mic key together with the cipher key in a single key cache entry o split tx/rx descriptor into a h/w section and a s/w portion; this permits storing the s/w area in cached memory when the h/w area is stored in uncached memory; this also shrinks memory use since only one status block is needed while multiple tx/rx descriptors may be required per frame o add final transmit series index to the transmit descriptor status so rate control algorithms don't need to grovel through h/w state to find it o remove ds_vdata field from the descriptor state as part of the radar changes o fix excessive stack usage for some 5212 rf backends o correct rfkill handling when the pin polarity is 0 true o correct handling of tsf wrap when reading 64-bit values MFC after: 1 month
2006-12-13 19:26:37 +00:00
# $Id: //depot/sw/branches/sam_hal/public/xscale-be-elf.inc#3 $
#
#
# Compilation configuration for building big-endian XScale/arm-elf.
#
# NB: built with AH_REGOPS_FUNC to so that register accesses
# can be done using the Linux readl/writel functions on
# systems that need it.
#
# Reported to work on:
# IXP425
#
#
# Built with GNU cross-devel tools:
#
# PREFIX=/pub/gnu
# BINUTILS=binutils-2.14
# GCC=gcc-3.3.2
# target=arm-elf
#
# ${BINUTILS}/configure --target=$target --prefix=${PREFIX}
# ${GCC}/configure --target=$target --prefix=${PREFIX} \
# --enable-languages=c --with-gnu-as --with-gnu-ld \
# --with-newlib --with-gxx-include-dir=${PREFIX}/$target/include
#
ifndef TOOLPREFIX
TOOLPREFIX= /pub/gnu/bin/arm-elf-
endif
#
CC= ${TOOLPREFIX}gcc
LD= ${TOOLPREFIX}ld
STRIP= ${TOOLPREFIX}strip
OBJCOPY=${TOOLPREFIX}objcopy
NM= ${TOOLPREFIX}nm
#
# Force register read/write operations to go through a function.
#
AH_REGOPS_FUNC=1
LDOPTS= -EB
COPTS+= -DAH_BYTE_ORDER=AH_BIG_ENDIAN
COPTS+= -march=armv4 -mbig-endian -fno-strict-aliasing -fno-common -mapcs-32 \
Version 0.9.20.3: o remove os-specific glue code; it's now the responsibility of the driver o add wackelf utility for patching the ELF magic number on arm builds since noone can agree on how to mark a .o file as not having any floating point instructions o remove radar/dfs-related entry points; folks have finally decided how to support dfs w/o polluting the hal o properly recognize AR2424 chips (they were being rejected on attach despite being fully supported) o add HAL_CAP_RXORN_FATAL capability to control how RXORN errors are handled; previously RXORN was always treated as fatal because older chips required a reset; now we do not treat it as fatal for "newer chips" (noone seems to know what the cutoff is so this capability can be used to override the current guestimate) o HAL_CAP_RXTSTAMP_PREC capability to export the number of bits of precision for timestamp data returned in the rx descriptor o remove public exposure of the compression buffer; it is chip specific and never belonged in the public view o change definition of HAL_INT_GLOBAL from an enum member to a #define to workaround compilers that bitch about enum values that appear overflow 31 bits o add support for newer chips that can store the tkip mic key together with the cipher key in a single key cache entry o split tx/rx descriptor into a h/w section and a s/w portion; this permits storing the s/w area in cached memory when the h/w area is stored in uncached memory; this also shrinks memory use since only one status block is needed while multiple tx/rx descriptors may be required per frame o add final transmit series index to the transmit descriptor status so rate control algorithms don't need to grovel through h/w state to find it o remove ds_vdata field from the descriptor state as part of the radar changes o fix excessive stack usage for some 5212 rf backends o correct rfkill handling when the pin polarity is 0 true o correct handling of tsf wrap when reading 64-bit values MFC after: 1 month
2006-12-13 19:26:37 +00:00
-mtune=xscale -mshort-load-bytes