History log of /freebsd-11.0-release/sys/conf/Makefile.arm
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 303975 11-Aug-2016 gjb

Copy stable/11@r303970 to releng/11.0 as part of the 11.0-RELEASE
cycle.

Prune svn:mergeinfo from the new branch, and rename it to RC1.

Update __FreeBSD_version.

Use the quarterly branch for the default FreeBSD.conf pkg(8) repo and
the dvd1.iso packages population.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 302408 08-Jul-2016 gjb

Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle.
Prune svn:mergeinfo from the new branch, as nothing has been merged
here.

Additional commits post-branch will follow.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


# 295149 02-Feb-2016 mmel

ARM: All remaining functions in cpufunc_asm_arm10.S are identical with
functions in cpufunc_asm_arm9.S. Use arm9 variants and remove
cpufunc_asm_arm10.S completly.


# 286727 13-Aug-2015 marcel

Change md(4) to use weak symbols as start, end and size for the embedded
root disk. The embedded image is linked into the kernel in the .mfs
section.

Add rules and variables to kern.pre.mk and kern.post.mk that handle the
linking of the image. First objcopy is used to generate an object file.
Then, the object file is linked into the kernel.

Submitted by: Steve Kiernan <stevek@juniper.net>
Reviewed by: brooks@
Obtained from: Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D2903


# 276479 31-Dec-2014 dim

Upgrade our copy of clang, llvm and lldb to 3.5.0 release.

Please note that this version now requires C++11 support to build; see
UPDATING for more information.

Release notes for llvm and clang can be found here:
<http://llvm.org/releases/3.5.0/docs/ReleaseNotes.html>
<http://llvm.org/releases/3.5.0/tools/clang/docs/ReleaseNotes.html>

Thanks to Ed Maste, Roman Divacky, Andrew Turner, Justin Hibbits and
Antoine Brodin for their invaluable help with this import.

Approved by: portmgr (antoine)
MFC after: 1 month


# 273287 19-Oct-2014 andrew

Only build the ARM tranpoline when KERNPHYSADDR is defined as it is
otherwise unneeded in armv6 kernels.

MFC after: 1 week


# 272605 06-Oct-2014 andrew

Disable generating vfp and NEON instructions in the arm kernel.


# 272350 01-Oct-2014 andrew

Remove MK_ARM_EABI, the armeb issues have been fixed. The code to support
the oabi is still in the tree, but it is expected this will be removed
as developers work on surrounding code.

With this commit the ARM EABI is the only supported supported ABI by
FreeBSD on ARMa 32-bit processors.

X-MFC after: never
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D876


# 269957 14-Aug-2014 imp

Add support for FDT and !FDT configs on Atmel, though FDT isn't
working yet.
Bump rev on arm Makefile since files.at91 uses new '!' operator.


# 269697 08-Aug-2014 ian

Add the dts include directory to the -I list when doing arm builds.


# 269114 26-Jul-2014 sjg

Reviewed by: imp

LDFLAGS is supposed to be given to CC not LD.
Define _LDFLAGS as a filtered version of LDFLAGS safe to give to LD


# 265832 10-May-2014 imp

Simplify clang ifdefs in the kernel a bit. Introduce
CFLAGS.${COMPILER_TYPE} to mirror userland. Be explicit about which
compiler needs something (not clang isn't necessarily gcc in the
future).


# 264270 08-Apr-2014 imp

Put proper ${} around variable expansion. This fixes the build on 9.2
with fmake (which complained). Not sure why bmake didn't complain though...


# 263992 01-Apr-2014 imp

Test MK_ARM_ABI rather than if WITHOUT_ARM_ABI is defined.


# 262958 09-Mar-2014 ian

Remove all traces of support for ARM chips prior to the arm9 series. We
never actually ran on these chips (other than using SA1 support in an
emulator to do the early porting to FreeBSD long long ago). The clutter
and complexity of some of this code keeps getting in the way of other
maintenance, so it's time to go.


# 261492 04-Feb-2014 imp

Bump the version of config to the latest (3 year old, so upgrade
worries are long past). Also remove redundant MACHINE= declarations
and passing MACHINE/MACHINE_ARCH to module builds. That's now done in
common code.


# 261305 31-Jan-2014 imp

Hack: Add explicit depends on bus_if.h and device_if.h to avoid a
chicken and egg problem in some compilation environments.


# 260494 09-Jan-2014 dim

Fix a braino with r259730: we cannot currently use CFLAGS.gcc or
CFLAGS.clang in sys/conf/Makefile.arm, since the main kernel build does
not use <bsd.sys.mk>. So revert that particular change for now.

Pointy hat to: me
Noticed by: zbb
MFC after: 3 days
X-MFC-With: r259730


# 259730 22-Dec-2013 dim

To avoid having to explicitly test COMPILER_TYPE for setting
clang-specific or gcc-specific flags, introduce the following new
variables for use in Makefiles:

CFLAGS.clang
CFLAGS.gcc
CXXFLAGS.clang
CXXFLAGS.gcc

In bsd.sys.mk, these get appended to the regular CFLAGS or CXXFLAGS for
the right compiler.

MFC after: 1 week


# 257332 29-Oct-2013 zbb

Add missing ARMv6 CPU functions to ARM Makefile

Will fix RPI-B kernel build failure since it adds missing
armv6_idcache_wbinv_all which was previously taken from cpufunc_asm_pj4b.S.

Reviewed by: gber


# 253396 16-Jul-2013 andrew

2 years, 10 months, 22 days after the projects/arm_eabi branch was created
make the ARM EABI the default ABI on arm, armeb, armv6 and armv6eb.

This is intended to be the default ABI from now on with the old ABI to be
retired. Because of this all users are strongly suggested to upgrade to the
ARM EABI.

As the two ABIs are incompatible it is unlikely upgrading in place will
work. Users should perform a full backup and either use an external machine
to upgrade, or install to an alternative location on their media. They
should also reinstall all ports or packages when these are available.

The only known issues are:
- pkg incorrectly detects the ABI. This is fixed upstream, and will a
patch will be made to the port.
- GDB can have issues with executables built with clang.

__FreeBSD_version has been bumped.


# 248400 17-Mar-2013 andrew

The -mno-apcs-frame argument is unavaliable on clang, also ignore it there.


# 248365 16-Mar-2013 andrew

The compiler argument -mno-apcs-frame has no meaning when using EABI as we
will use aapcs frames, not apcs frames.


# 248363 16-Mar-2013 andrew

Fix the indentation for a few commands that were missed or incorrectly
indented in r248362.


# 248362 16-Mar-2013 andrew

Adjust the indentation of the trampoline compilation to make the commands
easier to follow.


# 248126 10-Mar-2013 andrew

- Clang doesn't understand the -mno-thumb-interwork. Only use it with gcc.
- We need to add "-mllvm -arm-enable-ehabi" to clangs CFLAGS when
generating the unwind tables to tell it to add the required directives to
the assembly it generates.


# 245838 23-Jan-2013 andrew

Don't build the kernel with Thumb interworking as we don't support Thumb.


# 245675 19-Jan-2013 andrew

When DDB is enabled and we are building for the ARM EABI include the unwind
tables in the kernel.


# 243664 29-Nov-2012 marcel

Fix LINT build for arm: NOTES defines LDFLAGS by way of a make option
but LDFLAGS is not (yet) passed on to the linker (via SYSTEM_LD et al).
Do so now. As such, any kernel configuration can now define linker
flags by setting LDFLAGS as normal and not have to revert to hacks
like setting DEBUG for flags that do not relate to debugging (see
sys/powerpc/conf/MPC85XX).


# 243463 23-Nov-2012 imp

The tramp stuff isn't dependent on DDB, so always add these to the
CLEANFILES list.


# 240402 12-Sep-2012 obrien

Remove duplication and centralize testing of various config(8)ed features.


# 240401 12-Sep-2012 obrien

Not all Pmake derived makes quietly tolerate assignment from shell commands
with no output. Add "echo" at the end these shell commands whose output is
assigned to a variable's value to ensure there is some output.

Submitted by: John Van Horne <jvanhorne@juniper.net>


# 239547 21-Aug-2012 gonzo

Get rid of ARM_BIG_ENDIAN for good:
- remove leftovers in Makefile.arm
- Let ld use default output format instead of providing one in ldscript


# 239268 15-Aug-2012 gonzo

Merging projects/armv6, part 1

Cummulative patch of changes that are not vendor-specific:
- ARMv6 and ARMv7 architecture support
- ARM SMP support
- VFP/Neon support
- ARM Generic Interrupt Controller driver
- Simplification of startup code for all platforms


# 238464 15-Jul-2012 imp

Force overwrite of gz file, to make NO_CLEAN builds work.


# 223116 15-Jun-2011 cognet

Add -ffreestanding to the command line, so taht inflate.c compiles and link
properly with llvm.

PR: arm/156771
Submitted by: Damjan Marion <damjan dot marion at gmail DOT com>


# 209131 13-Jun-2010 raj

Convert Marvell ARM platforms to FDT convention.

The following systems are involved:

- DB-88F5182
- DB-88F5281
- DB-88F6281
- DB-78100
- SheevaPlug

This overhaul covers the following major changes:

- All integrated peripherals drivers for Marvell ARM SoC, which are
currently in the FreeBSD source tree are reworked and adjusted so they
derive config data out of the device tree blob (instead of hard coded /
tabelarized values).

- Since the common FDT infrastrucutre (fdtbus, simplebus) is used we say
good by to obio / mbus drivers and numerous hard-coded config data.

Note that world needs to be built WITH_FDT for the affected platforms.

Reviewed by: imp
Sponsored by: The FreeBSD Foundation.


# 201468 04-Jan-2010 rpaulo

Add support for Cavium Econa CNS11XX ARM boards. These boards were
previously know by StarSemi STR9104.

Tested by the submitter on an Emprex NSD-100 board.

Submitted by: Yohanes Nugroho <yohanes at gmail.com>
Reviewed by: freebsd-arm, stas
Obtained from: //depot/projects/str91xx/...


# 186934 09-Jan-2009 raj

Rename Marvell ARM CPU specific file according to r186933.


# 185478 30-Nov-2008 sam

enable use of modules but disable them by adding MODULES_OVERRIDE=""
in each config file until we can sort out issues in the modules tree

Reviewed by: imp
MFC after: 1 month


# 183840 13-Oct-2008 raj

Introduce basic support for Marvell families of system-on-chip ARM devices:

* Orion
- 88F5181
- 88F5182
- 88F5281

* Kirkwood
- 88F6281

* Discovery
- MV78100

The above families of SOCs are built around CPU cores compliant with ARMv5TE
instruction set architecture definition. They share a number of integrated
peripherals. This commit brings support for the following basic elements:

* GPIO
* Interrupt controller
* L1, L2 cache
* Timers, watchdog, RTC
* TWSI (I2C)
* UART

Other peripherals drivers will be introduced separately.

Reviewed by: imp, marcel, stass (Thanks guys!)
Obtained from: Marvell, Semihalf


# 181294 04-Aug-2008 cognet

We need -I$S to compile the elf trampoline.

MFC after: 3 days


# 177923 04-Apr-2008 imp

If you build a compiler with TARGET_BIG_ENDIAN, and then try to build
a little endian kernel, things break. Be explicit about the endian
choice by setting it in the little endian case as well.


# 177916 04-Apr-2008 raj

Make kernel.tramp build properly on ARM9E.

Reviewed by: imp
Approved by: cognet (mentor)


# 177895 03-Apr-2008 imp

Always build kernel.tramp. This should be helpful for a lot of
people, as well making sure it doesn't break.


# 175984 05-Feb-2008 raj

Introduce a standalone shell script for embedding MFS image.

This allows to fix a problem with ARM kernel.bin not having the MFS image
embedded: it is objcopied from the kernel.noheader temporary ELF file, which
was not subject to embedding the MFS image previously.

Reviewed by: imp
Approved by: cognet (mentor)


# 171619 27-Jul-2007 cognet

Bring in two bandaids to get the elf trampoline to work again, until I find
a proper solution.
- Add a dummy entry point which just calls the C entry points, and try to make
sure it's the first code in the binary.
- Copy a bit more than func_end to try to copy the whole load_kernel()
function. gcc4 puts code behind the func_end symbol.

Approved by: re (blanket)


# 169612 16-May-2007 wkoszek

Revert config(8) version bump. It brings major pain for people working on
different versions of FreeBSD source tree.

Old config(8) can now be used unless you want to use INCLUDE_CONFIG_FILE
option.

Approved by: imp
Reviewed by: imp


# 169515 13-May-2007 wkoszek

Bump config(8) version and build requirement for config(8) to 600006. This
is caused by my latest changes to config(8). You're supposed to install new
config(8) in order to prevent yourself from seeing a warning about old
version of that tool.

You should configure the kernel with a new config(8) then.

Oked by: rwatson, cognet (mentor)


# 160629 24-Jul-2006 cognet

Only use -mno-apcs-frame if DDB is not in the kernel, as it prevent the
backtraces from working.

MFC After: 3 days


# 160479 18-Jul-2006 cognet

Add -EB to ${LD} too if we're making a big endian kernel, not anything in
kernel makefiles uses SYSTEM_LD.


# 159758 18-Jun-2006 cognet

Make sure the stack is properly aligned.
Enable the MMU when relocating as well, and use write-through cache.


# 159557 12-Jun-2006 cognet

MFp4:
- Try hard to calculate a safe sp, so that the stack doesn't get smashed
while uncompressing or relocating the kernel.
- Bring in code needed to calculate the cacheline size etc, needed for
arm9_idcache_wbinv_all.


# 159084 30-May-2006 cognet

To avoid problems, invalidate the data cache and disable the MMU once
we're done uncompressing the kernel.


# 157165 27-Mar-2006 cognet

Erm don't use -mno-apcs-frame if we're going to do profiling either, it's not
exactly compatible.


# 154561 20-Jan-2006 cognet

Build a minimal pagetables, with only section mappings, mapped write through,
to speed up the decompression.


# 153566 20-Dec-2005 cognet

Rather than appending it at the end of the kernel build process, give the
ELF trampoline build its own target, "trampoline".
It makes it possible to construct a bootable gzipped kernel without having
to build in the same process.


# 153549 20-Dec-2005 cognet

Make the elf trampoline disable the MMU, and link it at physical address,
to avoid bad surprises.


# 153112 05-Dec-2005 cognet

Teach the elf trampoline how to deal with gzipped kernels.


# 152891 28-Nov-2005 imp

Version 600004 is better than 700000 given other changes that are in
the pipeline. We had to bump the version for 600004 because the old
parser got confused and generated bogus output.

Approved by: ru@


# 152862 27-Nov-2005 ru

Make config(8) understand ORed dependecies in "files*" and
improve tracking of known devices. Bump config(8) version.


# 152782 25-Nov-2005 cognet

Use the correct file name for the ldscript.


# 152742 24-Nov-2005 cognet

Create a non-elf pure binary version of the kernel as well.


# 152534 17-Nov-2005 cognet

Make the elf wrapper work with recent kernel.debug changes.


# 152026 04-Nov-2005 imp

We don't bump the config version for additions to config that aren't
used in the base system. This has been much discussed in the past
(typically people giving me a hard time for it). Since all that was
added to config was nocpu, and since we don't use it, we don't need to
bump the version.


# 152018 03-Nov-2005 ru

Implement the "nocpu" directive.

Requested by: rwatson


# 151763 27-Oct-2005 jhb

Bump config(8) version for the DEFAULTS change.


# 151423 17-Oct-2005 cognet

Strip the $a, $t and $d symbols if we're using DDB. There are useless and
confusing in a backtrace.


# 150918 04-Oct-2005 cognet

Really detect if DDB is enabled.
Remove kernel.tramp if it exists on make clean.


# 150862 03-Oct-2005 cognet

Makefile magic for the ELF trampoline.


# 147630 27-Jun-2005 cognet

Use -mno-apcs-frame if DEBUG isn't defined.

Approved by: re (blanket)


# 145016 13-Apr-2005 imp

Never hardcode /sys into these Makefiles. The proper way to spell it is $S.

Also, move the -I stuff to the centralized kern.pre.mk. However, it
might be better to add these flags to files.conf. This is a short
term fix to fix the broken builds on my machine (I don't have a valid
/sys link).


# 144966 12-Apr-2005 vkashyap

The latest release of the FreeBSD driver (twa) for
3ware's 9xxx series controllers. This corresponds to
the 9.2 release (for FreeBSD 5.2.1) on the 3ware website.

Highlights of this release are:

1. The driver has been re-architected to use a "Common Layer"
(all tw_cl* files), which is a consolidation of all OS-independent
parts of the driver. The FreeBSD OS specific portions of the
driver go into an "OS Layer" (all tw_osl* files).
This re-architecture is to achieve better maintainability, consistency
of behavior across OS's, and better portability to new OS's (drivers
for new OS's can be written by just adding an OS Layer that's specific
to the OS, by complying to a "Common Layer Programming Interface" API.

2. The driver takes advantage of multiple processors.

3. The driver has a new firmware image bundled, the new features of which
include Online Capacity Expansion and multi-lun support, among others.
More details about 3ware's 9.2 release can be found here:
http://www.3ware.com/download/Escalade9000Series/9.2/9.2_Release_Notes_Web.pdf

Since the Common Layer is used across OS's, the FreeBSD specific include
path for header files (/sys/dev/twa) is not part of the #include pre-processor
directive in any of the source files. For being able to integrate twa into
the kernel despite this, Makefile.<arch> has been changed to add the include
path to CFLAGS.

Reviewed by: scottl


# 144510 01-Apr-2005 imp

Update version number for latest config version bump


# 141666 10-Feb-2005 jmg

bump the Makefile config versions now that config is 600001...

Forgotten by: des


# 140479 19-Jan-2005 cognet

Add a new make option, ARM_BIG_ENDIAN, to compile big endian kernels.


# 136910 24-Oct-2004 ru

For variables that are only checked with defined(), don't provide
any fake value.


# 135670 23-Sep-2004 cognet

Add the possibility to specify the kernel virtual address and the kernel
physical address in the kernel config file, as it varies from CPU to CPU.


# 134542 30-Aug-2004 peter

Kill count device support from config. I've changed the last few
remaining consumers to have the count passed as an option. This is
i4b, pc98/wdc, and coda.

Bump configvers.h from 500013 to 600000.

Remove heuristics that tried to parse "device ed5" as 5 units of the ed
device. This broke things like the snd_emu10k1 device, which required
quotes to make it parse right. The no-longer-needed quotes have been
removed from NOTES, GENERIC etc. eg, I've removed the quotes from:
device snd_maestro
device "snd_maestro3"
device snd_mss

I believe everything will still compile and work after this.


# 129199 14-May-2004 cognet

Add config magic for arm.