Date: Thu, 26 Dec 2013 09:13:49 -0700 From: Warner Losh <imp@bsdimp.com> To: =?utf-8?Q?Radio_m=C5=82odych_bandyt=C3=B3w?= <radiomlodychbandytow@o2.pl> Cc: freebsd-mips@freebsd.org Subject: Re: Build failure on octeon Message-ID: <36762B3C-179F-42B3-B108-62F2D7F5A9DF@bsdimp.com> In-Reply-To: <52BC19C7.70507@o2.pl> References: <52BC19C7.70507@o2.pl>
next in thread | previous in thread | raw e-mail | index | archive | help
Try TARGET_ARCH=3Dmips64
On Dec 26, 2013, at 4:57 AM, Radio m=C5=82odych bandyt=C3=B3w wrote:
> Hello, I'm trying to compile the current tree for my octeon device and
> get the following error:
>=20
> cc -c -O -pipe -std=3Dc99 -g -Wall -Wredundant-decls =
-Wnested-externs
> -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline
> -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions
> -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I.
> -I/usr/home/m/Ubiquity/10/sys =
-I/usr/home/m/Ubiquity/10/sys/contrib/altq
> -I/usr/home/m/Ubiquity/10/sys/contrib/libfdt -D_KERNEL
> -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common
> -finline-limit=3D8000 --param inline-unit-growth=3D10000 --param
> large-function-growth=3D100000 --param max-inline-insns-single=3D10000
> -fno-pic -mno-abicalls -G0 -DKERNLOADADDR=3D0xffffffff80100000
> -march=3Docteon -mabi=3D64 -msoft-float -ffreestanding -Werror =
vnode_if.c
> ${NORMAL_CTFCONVERT} expands to empty string
> :> hack.c
> cc -shared -fno-pic -mno-abicalls -G0 =
-DKERNLOADADDR=3D0xffffffff80100000
> -march=3Docteon -mabi=3D64 -nostdlib hack.c -o hack.So
> rm -f hack.c
> sed s/KERNLOADADDR/0xffffffff80100000/g
> /usr/home/m/Ubiquity/10/sys/conf/ldscript.mips.octeon1 >
> ldscript.mips.octeon1
> MAKE=3Dmake sh /usr/home/m/Ubiquity/10/sys/conf/newvers.sh OCTEON1
> cc -c -O -pipe -std=3Dc99 -g -Wall -Wredundant-decls =
-Wnested-externs
> -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline
> -Wcast-qual -Wundef -Wno-pointer-sign -fformat-extensions
> -Wmissing-include-dirs -fdiagnostics-show-option -nostdinc -I.
> -I/usr/home/m/Ubiquity/10/sys =
-I/usr/home/m/Ubiquity/10/sys/contrib/altq
> -I/usr/home/m/Ubiquity/10/sys/contrib/libfdt -D_KERNEL
> -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common
> -finline-limit=3D8000 --param inline-unit-growth=3D10000 --param
> large-function-growth=3D100000 --param max-inline-insns-single=3D10000
> -fno-pic -mno-abicalls -G0 -DKERNLOADADDR=3D0xffffffff80100000
> -march=3Docteon -mabi=3D64 -msoft-float -ffreestanding -Werror vers.c
> ${NORMAL_CTFCONVERT} expands to empty string
> linking kernel.debug
> hack.So: could not read symbols: File in wrong format
> *** [kernel.debug] Error code 1
>=20
> Stop in =
/usr/home/m/Ubiquity/obj/mips.mips/usr/home/m/Ubiquity/10/sys/M.
> *** [buildkernel] Error code 1
>=20
> Stop in /usr/home/m/Ubiquity/10.
> *** [buildkernel] Error code 1
>=20
> Stop in /usr/home/m/Ubiquity/10.
>=20
>=20
>=20
> I build with TARGET=3Dmips and TARGET_ARCH=3Dmipseb.
TARGET_ARCH=3Dmips64 is the right thing here. The kernel config files =
assume a 64-bit ABI, but the mipseb ABI is 32-bit.
Warner
> My kernel config:
>=20
> #
> # OCTEON1 -- Generic kernel configuration file for FreeBSD/MIPS on
> Cavium Octeon
> #
> # For more information on this file, please read the config(5) manual =
page,
> # and/or the handbook section on Kernel Configuration Files:
> #
> #
> =
http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-con=
fig.html
> #
> # The handbook is also available locally in /usr/share/doc/handbook
> # if you've installed the doc distribution, otherwise always see the
> # FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
> # latest information.
> #
> # An exhaustive list of options and more detailed explanations of the
> # device lines is also present in the ../../conf/NOTES and NOTES =
files.
> # If you are in doubt as to the purpose or necessity of a line, check =
first
> # in NOTES.
> #
> # $FreeBSD: stable/10/sys/mips/conf/OCTEON1 253845 2013-07-31 =
17:21:18Z
> obrien $
>=20
> ident OCTEON1
>=20
> makeoptions ARCH_FLAGS=3D"-march=3Docteon -mabi=3D64"
> makeoptions LDSCRIPT_NAME=3Dldscript.mips.octeon1
>=20
> # Don't build any modules yet.
> makeoptions MODULES_OVERRIDE=3D""
> makeoptions KERNLOADADDR=3D0xffffffff80100000
>=20
> # We don't need to build a trampolined version of the kernel.
> makeoptions WITHOUT_KERNEL_TRAMPOLINE=3D1
>=20
> include "../cavium/std.octeon1"
>=20
> hints "OCTEON1.hints" #Default places to look for =
devices.
>=20
> makeoptions DEBUG=3D-g #Build kernel with gdb(1) debug =
symbols
>=20
> # Board-specific support that cannot be auto-detected at runtime.
> #options OCTEON_VENDOR_LANNER # Support for Lanner =
boards.
> #options OCTEON_VENDOR_RADISYS # Support for Radisys =
boards.
> options OCTEON_VENDOR_UBIQUITI # Support for Ubiquiti =
boards.
> #options OCTEON_VENDOR_GEFES # Support for GE LANIC =
boards
> #options OCTEON_BOARD_CAPK_0100ND # Support for =
CAPK-0100nd.
>=20
> # Compile for a specified Octeon model. If not specified, support for
> # detection at runtime will be used instead, which may give inferior
> # performance.
> #
> # See sys/contrib/octeon-sdk/octeon-model.h for possible values.
> #options OCTEON_MODEL=3DOCTEON_CN58XX_PASS1_1
>=20
> options SCHED_ULE # ULE scheduler
> options PREEMPTION # Enable kernel thread =
preemption
> options INET # InterNETworking
> options INET6 # IPv6 communications protocols
> options SCTP # Stream Control Transmission =
Protocol
> options FFS # Berkeley Fast Filesystem
> options SOFTUPDATES # Enable FFS soft updates =
support
> options UFS_ACL # Support for access control =
lists
> options UFS_DIRHASH # Improve performance on big =
directories
> options UFS_GJOURNAL # Enable gjournal-based UFS =
journaling
> options MD_ROOT # MD is a potential root device
> options NFSCL # Network Filesystem Client
> options NFSD # Network Filesystem Server
> options NFSLOCKD # Network Lock Manager
> options NFS_ROOT # NFS usable as /, requires =
NFSCL
> options MSDOSFS # MSDOS Filesystem
> #options CD9660 # ISO 9660 Filesystem
> options PROCFS # Process filesystem (requires =
PSEUDOFS)
> options PSEUDOFS # Pseudo-filesystem framework
> options GEOM_PART_GPT # GUID Partition Tables.
> options GEOM_LABEL # Provides labelization
> #options COMPAT_FREEBSD32 # Compatible with o32 binaries
> options SCSI_DELAY=3D5000 # Delay (in ms) before =
probing SCSI
> options KTRACE # ktrace(1) support
> options STACK # stack(9) support
> options SYSVSHM # SYSV-style shared memory
> options SYSVMSG # SYSV-style message queues
> options SYSVSEM # SYSV-style semaphores
> options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time =
extensions
> options PRINTF_BUFR_SIZE=3D128 # Prevent printf output being =
interspersed.
> options HWPMC_HOOKS # Necessary kernel hooks for =
hwpmc(4)
> options AUDIT # Security event auditing
> options MAC # TrustedBSD MAC Framework
> #options KDTRACE_FRAME # Ensure frames are compiled in
> #options KDTRACE_HOOKS # Kernel DTrace hooks
> options INCLUDE_CONFIG_FILE # Include this file in kernel
> options NO_SWAPPING # Disable support for paging
>=20
> # Debugging for use in -current
> #options KDB # Enable kernel debugger =
support.
> #options DDB # Support DDB.
> #options GDB # Support remote GDB.
> #options DEADLKRES # Enable the deadlock resolver
> #options INVARIANTS # Enable calls of extra sanity =
checking
> #options INVARIANT_SUPPORT # Extra sanity checks of =
internal
> structures, required by INVARIANTS
> #options WITNESS # Enable checks to detect =
deadlocks and cycles
> #options WITNESS_SKIPSPIN # Don't run witness on spinlocks =
for speed
> #options MALLOC_DEBUG_MAXZONES=3D8 # Separate malloc(9) =
zones
>=20
> # Make an SMP-capable kernel by default
> options SMP # Symmetric MultiProcessor =
Kernel
>=20
> # Bus support.
> device pci
>=20
> # ATA controllers
> device ahci # AHCI-compatible SATA =
controllers
> device ata # Legacy ATA/SATA controllers
> options ATA_STATIC_ID # Static device numbering
> device mvs # Marvell =
88SX50XX/88SX60XX/88SX70XX/SoC SATA
> device siis # SiliconImage =
SiI3124/SiI3132/SiI3531 SATA
>=20
> # On-board Compact Flash driver.
> device cf
> options ROOTDEVNAME=3D\"ufs:cf0s2a\" # Default root =
filesystem.
>=20
> # SCSI Controllers
> #device ahc # AHA2940 and onboard AIC7xxx =
devices
> #options AHC_REG_PRETTY_PRINT # Print register bitfields in =
debug
> # output. Adds ~128k to driver.
> #device ahd # AHA39320/29320 and onboard =
AIC79xx devices
> #options AHD_REG_PRETTY_PRINT # Print register bitfields in =
debug
> # output. Adds ~215k to driver.
> #device esp # AMD Am53C974 (Tekram =
DC-390(T))
> #device hptiop # Highpoint RocketRaid 3xxx =
series
> #device isp # Qlogic family
> #device ispfw # Firmware for QLogic HBAs- =
normally iibusa module
> #device mpt # LSI-Logic MPT-Fusion
> #device mps # LSI-Logic MPT-Fusion 2
> #device ncr # NCR/Symbios Logic
> #device trm # Tekram DC395U/UW/F DC315U =
adapters
>=20
> #device adv # Advansys SCSI adapters
> #device adw # Advansys wide SCSI adapters
> #device aic # Adaptec 15[012]x SCSI =
adapters, AIC-6[23]60.
> #device bt # Buslogic/Mylex MultiMaster =
SCSI adapters
>=20
> # ATA/SCSI peripherals
> device scbus # SCSI bus (required for =
ATA/SCSI)
> #device ch # SCSI media changers
> device da # Direct Access (disks)
> device sa # Sequential Access (tape etc)
> #device cd # CD
> device pass # Passthrough device (direct =
ATA/SCSI access)
> #device ses # Enclosure Services (SES and =
SAF-TE)
>=20
> # RAID controllers interfaced to the SCSI subsystem
> #device amr # AMI MegaRAID
> #XXX it is not 64-bit clean, -scottl
> #device asr # DPT SmartRAID V, VI and =
Adaptec SCSI RAID
> #device ciss # Compaq Smart RAID 5*
> #device dpt # DPT Smartcache III, IV - See =
NOTES for options
> #device iir # Intel Integrated RAID
> #device ips # IBM (Adaptec) ServeRAID
> #device mly # Mylex AcceleRAID/eXtremeRAID
>=20
> # RAID controllers
> #device aac # Adaptec FSA RAID
> #device aacp # SCSI passthrough for aac =
(requires CAM)
> #device ida # Compaq Smart RAID
> #device mfi # LSI MegaRAID SAS
> #device mlx # Mylex DAC960 family
> #XXX pointer/int warnings
> #device pst # Promise Supertrak SX6000
> #device twe # 3ware ATA RAID
>=20
> # PCCARD (PCMCIA) support
> # PCMCIA and cardbus bridge support
> device cbb # cardbus (yenta) bridge
> device pccard # PC Card (16-bit) bus
> device cardbus # CardBus (32-bit) bus
>=20
> # Serial (COM) ports
> device uart # Generic UART driver
>=20
> # If you've got a "dumb" serial or parallel PCI card that is
> # supported by the puc(4) glue driver, uncomment the following
> # line to enable it (connects to sio, uart and/or ppc drivers):
> #device puc
>=20
> # On-board Cavium Octeon Ethernet.
> # NOTE: Be sure to keep the 'device miibus' line in order to use these =
NICs!
> device octe
>=20
> # Cavium Octeon management Ethernet.
> device octm
>=20
> # Switch PHY support for the octe driver. These currently present a
> VLAN per
> # physical port, but may eventually provide support for DSA or similar
> instead.
> #device mv88e61xxphy # Marvell 88E61XX
>=20
> # PCI Ethernet NICs.
> #device de # DEC/Intel DC21x4x (``Tulip'')
> #device em # Intel PRO/1000 Gigabit =
Ethernet Family
> #device igb # Intel PRO/1000 PCIE Server =
Gigabit Family
> #device ixgbe # Intel PRO/10GbE PCIE Ethernet =
Family
> #device le # AMD Am7900 LANCE and Am79C9xx =
PCnet
> #device ti # Alteon Networks Tigon I/II =
gigabit Ethernet
> #device txp # 3Com 3cR990 (``Typhoon'')
> #device vx # 3Com 3c590, 3c595 (``Vortex'')
>=20
> # PCI Ethernet NICs that use the common MII bus controller code.
> # NOTE: Be sure to keep the 'device miibus' line in order to use these =
NICs!
> device miibus # MII bus support
> #device ae # Attansic/Atheros L2 =
FastEthernet
> #device age # Attansic/Atheros L1 Gigabit =
Ethernet
> #device alc # Atheros AR8131/AR8132 Ethernet
> #device ale # Atheros AR8121/AR8113/AR8114 =
Ethernet
> #device bce # Broadcom BCM5706/BCM5708 =
Gigabit Ethernet
> #device bfe # Broadcom BCM440x 10/100 =
Ethernet
> #device bge # Broadcom BCM570xx Gigabit =
Ethernet
> #device dc # DEC/Intel 21143 and various =
workalikes
> #device et # Agere ET1310 10/100/Gigabit =
Ethernet
> #device fxp # Intel EtherExpress PRO/100B =
(82557, 82558)
> #device jme # JMicron JMC250 Gigabit/JMC260 =
Fast Ethernet
> #device lge # Level 1 LXT1001 gigabit =
Ethernet
> #device msk # Marvell/SysKonnect Yukon II =
Gigabit Ethernet
> #device nge # NatSemi DP83820 gigabit =
Ethernet
> #device nve # nVidia nForce MCP on-board =
Ethernet Networking
> #device pcn # AMD Am79C97x PCI 10/100 =
(precedence over 'le')
> #device re # RealTek =
8139C+/8169/8169S/8110S
> #device rl # RealTek 8129/8139
> #device sf # Adaptec AIC-6915 =
(``Starfire'')
> #device sge # Silicon Integrated Systems =
SiS190/191
> #device sis # Silicon Integrated Systems SiS =
900/SiS 7016
> #device sk # SysKonnect SK-984x & SK-982x =
gigabit Ethernet
> #device ste # Sundance ST201 (D-Link =
DFE-550TX)
> #device stge # Sundance/Tamarack TC9021 =
gigabit Ethernet
> #device tl # Texas Instruments ThunderLAN
> #device tx # SMC EtherPower II (83c170 =
``EPIC'')
> #device vge # VIA VT612x gigabit Ethernet
> #device vr # VIA Rhine, Rhine II
> #device wb # Winbond W89C840F
> #device xl # 3Com 3c90x (``Boomerang'', =
``Cyclone'')
>=20
> # Wireless NIC cards
> #device wlan # 802.11 support
> #options IEEE80211_DEBUG # enable debug msgs
> #options IEEE80211_AMPDU_AGE # age frames in AMPDU reorder q's
> #options IEEE80211_SUPPORT_MESH # enable 802.11s draft support
> #device wlan_wep # 802.11 WEP support
> #device wlan_ccmp # 802.11 CCMP support
> #device wlan_tkip # 802.11 TKIP support
> #device wlan_amrr # AMRR transmit rate control =
algorithm
> #device an # Aironet 4500/4800 802.11 =
wireless NICs.
> #device ath # Atheros NIC's
> #device ath_pci # Atheros pci/cardbus glue
> #device ath_hal # pci/cardbus chip support
> #options AH_SUPPORT_AR5416 # enable AR5416 tx/rx =
descriptors
> #device ath_rate_sample # SampleRate tx rate control for =
ath
> #device ral # Ralink Technology RT2500 =
wireless NICs.
> #device wi # WaveLAN/Intersil/Symbol 802.11 =
wireless NICs.
>=20
> # Pseudo devices.
> device loop # Network loopback
> device random # Entropy device
> device ether # Ethernet support
> device vlan # 802.1Q VLAN support
> device tun # Packet tunnel.
> device md # Memory "disks"
> device gif # IPv6 and IPv4 tunneling
> device faith # IPv6-to-IPv4 relaying =
(translation)
> device firmware # firmware assist module
>=20
> # The `bpf' device enables the Berkeley Packet Filter.
> # Be aware of the administrative consequences of enabling this!
> # Note that 'bpf' is required for DHCP.
> device bpf # Berkeley packet filter
>=20
> # Hardware watchdog support.
> #device octeon_wdog # Octeon hardware watchdog
>=20
> # USB support
> options USB_DEBUG # enable debug msgs
> device octusb # Cavium Octeon on-board USB =
interface (USB 2.0)
> device uhci # UHCI PCI->USB interface
> device ohci # OHCI PCI->USB interface
> device ehci # EHCI PCI->USB interface (USB =
2.0)
> device usb # USB Bus (required)
> #device udbp # USB Double Bulk Pipe devices
> device uhid # "Human Interface Devices"
> #device ulpt # Printer
> device umass # Disks/Mass storage - Requires =
scbus and da
> #device ums # Mouse
> #device urio # Diamond Rio 500 MP3 player
> # USB Serial devices
> #device u3g # USB-based 3G modems (Option, =
Huawei, Sierra)
> #device uark # Technologies ARK3116 based =
serial adapters
> #device ubsa # Belkin F5U103 and compatible =
serial adapters
> #device uftdi # For FTDI usb serial adapters
> #device uipaq # Some WinCE based devices
> #device uplcom # Prolific PL-2303 serial =
adapters
> #device uslcom # SI Labs CP2101/CP2102 serial =
adapters
> #device uvisor # Visor and Palm devices
> #device uvscom # USB serial support for DDI =
pocket's PHS
> # USB Ethernet, requires miibus
> #device aue # ADMtek USB Ethernet
> #device axe # ASIX Electronics USB Ethernet
> #device cdce # Generic USB over Ethernet
> #device cue # CATC USB Ethernet
> #device kue # Kawasaki LSI USB Ethernet
> #device rue # RealTek RTL8150 USB Ethernet
> #device udav # Davicom DM9601E USB
> # USB Wireless
> #device rum # Ralink Technology RT2501USB =
wireless NICs
> #device uath # Atheros AR5523 wireless NICs
> #device ural # Ralink Technology RT2500USB =
wireless NICs
> #device zyd # ZyDAS zd1211/zd1211b wireless =
NICs
>=20
> # crypto subsystem
> device crypto # core crypto support
> device cryptodev # /dev/crypto for access to h/w
> device cryptocteon # Octeon coprocessor 2 crypto =
offload
>=20
> # GPIO support
> #device gpio
>=20
> # PMC support
> #device hwpmc
>=20
>=20
> --=20
> Twoje radio
> _______________________________________________
> freebsd-mips@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-mips
> To unsubscribe, send any mail to =
"freebsd-mips-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?36762B3C-179F-42B3-B108-62F2D7F5A9DF>
