svn commit: r295734 - in projects/release-pkg: . bin/sh/tests cddl/usr.sbin/dtrace/tests/common contrib/elftoolchain/elfcopy gnu/usr.bin/rcs/doc lib/clang/libllvmdebuginfodwarf lib/clang/libllvmdeb...
Glen Barber
gjb at FreeBSD.org
Thu Feb 18 00:38:03 UTC 2016
Author: gjb
Date: Thu Feb 18 00:37:58 2016
New Revision: 295734
URL: https://svnweb.freebsd.org/changeset/base/295734
Log:
MFH
Sponsored by: The FreeBSD Foundation
Added:
projects/release-pkg/lib/clang/libllvmdebuginfodwarf/Makefile.depend
- copied unchanged from r295733, head/lib/clang/libllvmdebuginfodwarf/Makefile.depend
projects/release-pkg/lib/clang/libllvmdebuginfopdb/Makefile.depend
- copied unchanged from r295733, head/lib/clang/libllvmdebuginfopdb/Makefile.depend
projects/release-pkg/lib/clang/libllvmlibdriver/Makefile.depend
- copied unchanged from r295733, head/lib/clang/libllvmlibdriver/Makefile.depend
projects/release-pkg/lib/clang/libllvmlto/Makefile.depend
- copied unchanged from r295733, head/lib/clang/libllvmlto/Makefile.depend
projects/release-pkg/lib/clang/libllvmmirparser/Makefile.depend
- copied unchanged from r295733, head/lib/clang/libllvmmirparser/Makefile.depend
projects/release-pkg/lib/clang/libllvmorcjit/Makefile.depend
- copied unchanged from r295733, head/lib/clang/libllvmorcjit/Makefile.depend
projects/release-pkg/lib/clang/libllvmpasses/Makefile.depend
- copied unchanged from r295733, head/lib/clang/libllvmpasses/Makefile.depend
projects/release-pkg/lib/libpe/Makefile.depend
- copied unchanged from r295733, head/lib/libpe/Makefile.depend
projects/release-pkg/libexec/makewhatis.local/
- copied from r295733, head/libexec/makewhatis.local/
projects/release-pkg/sys/arm/allwinner/a10_codec.c
- copied unchanged from r295733, head/sys/arm/allwinner/a10_codec.c
projects/release-pkg/sys/arm/allwinner/a10_padconf.c
- copied unchanged from r295733, head/sys/arm/allwinner/a10_padconf.c
projects/release-pkg/sys/arm/allwinner/a20/a20_padconf.c
- copied unchanged from r295733, head/sys/arm/allwinner/a20/a20_padconf.c
projects/release-pkg/sys/arm/allwinner/allwinner_pinctrl.h
- copied unchanged from r295733, head/sys/arm/allwinner/allwinner_pinctrl.h
projects/release-pkg/sys/arm64/cavium/thunder_pcie_pem.h
- copied unchanged from r295733, head/sys/arm64/cavium/thunder_pcie_pem.h
projects/release-pkg/sys/arm64/cavium/thunder_pcie_pem_fdt.c
- copied unchanged from r295733, head/sys/arm64/cavium/thunder_pcie_pem_fdt.c
projects/release-pkg/usr.bin/bmake/tests/Makefile.inc
- copied unchanged from r295733, head/usr.bin/bmake/tests/Makefile.inc
projects/release-pkg/usr.bin/clang/bugpoint/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/bugpoint/Makefile.depend
projects/release-pkg/usr.bin/clang/llc/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llc/Makefile.depend
projects/release-pkg/usr.bin/clang/lli/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/lli/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-ar/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-ar/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-as/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-as/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-bcanalyzer/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-bcanalyzer/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-cov/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-cov/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-cxxdump/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-cxxdump/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-diff/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-diff/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-dis/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-dis/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-dwarfdump/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-dwarfdump/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-extract/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-extract/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-link/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-link/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-lto/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-lto/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-mc/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-mc/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-nm/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-nm/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-objdump/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-objdump/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-pdbdump/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-pdbdump/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-profdata/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-profdata/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-rtdyld/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-rtdyld/Makefile.depend
projects/release-pkg/usr.bin/clang/llvm-symbolizer/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/llvm-symbolizer/Makefile.depend
projects/release-pkg/usr.bin/clang/macho-dump/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/macho-dump/Makefile.depend
projects/release-pkg/usr.bin/clang/opt/Makefile.depend
- copied unchanged from r295733, head/usr.bin/clang/opt/Makefile.depend
projects/release-pkg/usr.bin/truss/Makefile.depend
- copied unchanged from r295733, head/usr.bin/truss/Makefile.depend
Deleted:
projects/release-pkg/usr.bin/truss/Makefile.depend.amd64
Modified:
projects/release-pkg/Makefile.inc1
projects/release-pkg/bin/sh/tests/Makefile
projects/release-pkg/cddl/usr.sbin/dtrace/tests/common/Makefile
projects/release-pkg/contrib/elftoolchain/elfcopy/main.c
projects/release-pkg/gnu/usr.bin/rcs/doc/rcs.ms
projects/release-pkg/lib/libc/tests/Makefile
projects/release-pkg/libexec/Makefile
projects/release-pkg/libexec/rtld-elf/tests/Makefile
projects/release-pkg/sbin/kldstat/Makefile.depend
projects/release-pkg/secure/lib/libssh/Makefile.depend
projects/release-pkg/share/misc/committers-ports.dot
projects/release-pkg/share/mk/bsd.dep.mk
projects/release-pkg/share/mk/bsd.init.mk
projects/release-pkg/share/mk/bsd.lib.mk
projects/release-pkg/share/mk/bsd.obj.mk
projects/release-pkg/share/mk/bsd.prog.mk
projects/release-pkg/share/mk/bsd.subdir.mk
projects/release-pkg/share/mk/bsd.test.mk
projects/release-pkg/sys/arm/allwinner/a10_ahci.c
projects/release-pkg/sys/arm/allwinner/a10_gpio.c
projects/release-pkg/sys/arm/allwinner/a20/a20_if_dwc.c
projects/release-pkg/sys/arm/allwinner/a20/files.a20
projects/release-pkg/sys/arm/allwinner/axp209.c
projects/release-pkg/sys/arm/allwinner/files.a10
projects/release-pkg/sys/arm/allwinner/files.allwinner
projects/release-pkg/sys/arm/allwinner/if_emac.c
projects/release-pkg/sys/arm/arm/bus_space_generic.c
projects/release-pkg/sys/arm/arm/devmap.c
projects/release-pkg/sys/arm/arm/fiq.c
projects/release-pkg/sys/arm/arm/genassym.c
projects/release-pkg/sys/arm/arm/locore-v6.S
projects/release-pkg/sys/arm/arm/ofw_machdep.c
projects/release-pkg/sys/arm/arm/pmap-v6.c
projects/release-pkg/sys/arm/at91/at91_machdep.c
projects/release-pkg/sys/arm/broadcom/bcm2835/bcm2835_dma.c
projects/release-pkg/sys/arm/broadcom/bcm2835/bcm2835_dma.h
projects/release-pkg/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c
projects/release-pkg/sys/arm/cavium/cns11xx/econa_machdep.c
projects/release-pkg/sys/arm/conf/A10
projects/release-pkg/sys/arm/conf/A20
projects/release-pkg/sys/arm/conf/CUBIEBOARD
projects/release-pkg/sys/arm/freescale/imx/imx6_machdep.c
projects/release-pkg/sys/arm/include/devmap.h
projects/release-pkg/sys/arm/include/pmap-v6.h
projects/release-pkg/sys/arm/include/pmap_var.h
projects/release-pkg/sys/arm/include/vm.h
projects/release-pkg/sys/arm/mv/mv_localbus.c
projects/release-pkg/sys/arm/mv/mv_machdep.c
projects/release-pkg/sys/arm/mv/mv_pci.c
projects/release-pkg/sys/arm/mv/orion/db88f5xxx.c
projects/release-pkg/sys/arm/ti/ti_scm.c
projects/release-pkg/sys/arm/versatile/versatile_machdep.c
projects/release-pkg/sys/arm/xscale/i8134x/crb_machdep.c
projects/release-pkg/sys/arm/xscale/ixp425/avila_machdep.c
projects/release-pkg/sys/arm/xscale/pxa/pxa_machdep.c
projects/release-pkg/sys/arm64/arm64/ofw_machdep.c
projects/release-pkg/sys/arm64/cavium/thunder_pcie_common.h
projects/release-pkg/sys/arm64/cavium/thunder_pcie_pem.c
projects/release-pkg/sys/arm64/include/devmap.h
projects/release-pkg/sys/boot/efi/boot1/Makefile.depend
projects/release-pkg/sys/boot/fdt/dts/arm/bananapi.dts
projects/release-pkg/sys/boot/fdt/dts/arm/cubieboard.dts
projects/release-pkg/sys/boot/fdt/dts/arm/pandaboard-common.dtsi
projects/release-pkg/sys/boot/fdt/dts/arm/sun4i-a10.dtsi
projects/release-pkg/sys/boot/fdt/dts/arm/sun7i-a20.dtsi
projects/release-pkg/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c
projects/release-pkg/sys/conf/files.arm64
projects/release-pkg/sys/conf/kern.post.mk
projects/release-pkg/sys/conf/kmod.mk
projects/release-pkg/sys/conf/options.arm
projects/release-pkg/sys/dev/ae/if_ae.c
projects/release-pkg/sys/dev/ata/chipsets/ata-promise.c
projects/release-pkg/sys/dev/ata/chipsets/ata-serverworks.c
projects/release-pkg/sys/dev/filemon/filemon_wrapper.c
projects/release-pkg/sys/dev/ichsmb/ichsmb_pci.c
projects/release-pkg/sys/dev/mmc/mmcsd.c
projects/release-pkg/sys/dev/ofw/openfirm.h
projects/release-pkg/sys/dev/pci/pci_pci.c
projects/release-pkg/sys/dev/random/nehemiah.c
projects/release-pkg/sys/dev/tsec/if_tsec_fdt.c
projects/release-pkg/sys/dev/uart/uart_cpu_fdt.c
projects/release-pkg/sys/dev/uart/uart_cpu_powerpc.c
projects/release-pkg/sys/dev/virtio/block/virtio_blk.c
projects/release-pkg/sys/dev/vt/hw/ofwfb/ofwfb.c
projects/release-pkg/sys/fs/nullfs/null_vnops.c
projects/release-pkg/sys/geom/geom.h
projects/release-pkg/sys/geom/geom_io.c
projects/release-pkg/sys/geom/journal/g_journal.c
projects/release-pkg/sys/geom/mirror/g_mirror.c
projects/release-pkg/sys/geom/raid/g_raid.c
projects/release-pkg/sys/geom/raid3/g_raid3.c
projects/release-pkg/sys/kern/kern_physio.c
projects/release-pkg/sys/kern/vfs_subr.c
projects/release-pkg/sys/mips/mips/ofw_machdep.c
projects/release-pkg/sys/netinet/sctp_asconf.c
projects/release-pkg/sys/netinet/sctp_bsd_addr.c
projects/release-pkg/sys/netinet/sctp_input.c
projects/release-pkg/sys/netinet/sctp_output.c
projects/release-pkg/sys/netinet/sctp_pcb.c
projects/release-pkg/sys/netinet/sctp_pcb.h
projects/release-pkg/sys/netinet/sctp_timer.c
projects/release-pkg/sys/netinet/sctp_timer.h
projects/release-pkg/sys/netinet/sctputil.c
projects/release-pkg/sys/netinet6/in6.c
projects/release-pkg/sys/netinet6/nd6.h
projects/release-pkg/sys/netinet6/nd6_nbr.c
projects/release-pkg/sys/netinet6/nd6_rtr.c
projects/release-pkg/sys/powerpc/booke/pmap.c
projects/release-pkg/sys/powerpc/include/pte.h
projects/release-pkg/sys/powerpc/ofw/ofw_machdep.c
projects/release-pkg/sys/powerpc/ofw/ofw_syscons.c
projects/release-pkg/sys/powerpc/ps3/ps3bus.c
projects/release-pkg/sys/riscv/include/atomic.h
projects/release-pkg/sys/riscv/include/ucontext.h
projects/release-pkg/sys/riscv/riscv/swtch.S
projects/release-pkg/sys/riscv/riscv/vm_machdep.c
projects/release-pkg/sys/sys/param.h
projects/release-pkg/sys/sys/sockbuf.h
projects/release-pkg/sys/sys/socketvar.h
projects/release-pkg/targets/pseudo/clang/Makefile.depend
projects/release-pkg/targets/pseudo/userland/lib/Makefile.depend
projects/release-pkg/tests/sys/Makefile
projects/release-pkg/tests/sys/pjdfstest/tests/Makefile
projects/release-pkg/usr.bin/calendar/calendars/calendar.freebsd
projects/release-pkg/usr.bin/elfcopy/Makefile.depend
projects/release-pkg/usr.bin/kdump/Makefile.depend
projects/release-pkg/usr.bin/mail/def.h
projects/release-pkg/usr.bin/makewhatis/Makefile
projects/release-pkg/usr.bin/truss/setup.c
projects/release-pkg/usr.bin/truss/syscall.h
projects/release-pkg/usr.bin/truss/syscalls.c
projects/release-pkg/usr.sbin/amd/include/Makefile
projects/release-pkg/usr.sbin/cron/cron/do_command.c
projects/release-pkg/usr.sbin/cron/crontab/crontab.c
projects/release-pkg/usr.sbin/ctld/Makefile.depend
Directory Properties:
projects/release-pkg/ (props changed)
projects/release-pkg/cddl/ (props changed)
projects/release-pkg/contrib/elftoolchain/ (props changed)
projects/release-pkg/lib/libc/ (props changed)
projects/release-pkg/sbin/ (props changed)
projects/release-pkg/share/ (props changed)
projects/release-pkg/sys/ (props changed)
projects/release-pkg/sys/boot/ (props changed)
projects/release-pkg/sys/cddl/contrib/opensolaris/ (props changed)
projects/release-pkg/sys/conf/ (props changed)
projects/release-pkg/targets/ (props changed)
projects/release-pkg/usr.bin/calendar/ (props changed)
Modified: projects/release-pkg/Makefile.inc1
==============================================================================
--- projects/release-pkg/Makefile.inc1 Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/Makefile.inc1 Thu Feb 18 00:37:58 2016 (r295734)
@@ -1128,7 +1128,7 @@ distrib-dirs distribution: .MAKE .PHONY
.if make(distribution)
${_+_}cd ${.CURDIR}; ${CROSSENV} PATH=${TMPPATH} \
${MAKE} -f Makefile.inc1 ${IMAKE_INSTALL} \
- METALOG=${METALOG} installconfig
+ METALOG=${METALOG} MK_TESTS=no installconfig
.endif
#
Modified: projects/release-pkg/bin/sh/tests/Makefile
==============================================================================
--- projects/release-pkg/bin/sh/tests/Makefile Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/bin/sh/tests/Makefile Thu Feb 18 00:37:58 2016 (r295734)
@@ -14,6 +14,4 @@ TESTS_SUBDIRS+= parameters
TESTS_SUBDIRS+= parser
TESTS_SUBDIRS+= set-e
-SUBDIR_PARALLEL=
-
.include <bsd.test.mk>
Modified: projects/release-pkg/cddl/usr.sbin/dtrace/tests/common/Makefile
==============================================================================
--- projects/release-pkg/cddl/usr.sbin/dtrace/tests/common/Makefile Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/cddl/usr.sbin/dtrace/tests/common/Makefile Thu Feb 18 00:37:58 2016 (r295734)
@@ -86,6 +86,4 @@ TESTS_SUBDIRS+= aggs \
.PATH: ${.CURDIR:H:H:H:H:H}/tests
KYUAFILE= YES
-SUBDIR_PARALLEL=
-
.include <bsd.test.mk>
Modified: projects/release-pkg/contrib/elftoolchain/elfcopy/main.c
==============================================================================
--- projects/release-pkg/contrib/elftoolchain/elfcopy/main.c Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/contrib/elftoolchain/elfcopy/main.c Thu Feb 18 00:37:58 2016 (r295734)
@@ -641,6 +641,18 @@ create_file(struct elfcopy *ecp, const c
* ELF object before processing.
*/
if (ecp->itf != ETF_ELF) {
+ /*
+ * If the output object is not an ELF file, choose an arbitrary
+ * ELF format for the intermediate file. srec, ihex and binary
+ * formats are independent of class, endianness and machine
+ * type so these choices do not affect the output.
+ */
+ if (ecp->otf != ETF_ELF) {
+ if (ecp->oec == ELFCLASSNONE)
+ ecp->oec = ELFCLASS64;
+ if (ecp->oed == ELFDATANONE)
+ ecp->oed = ELFDATA2LSB;
+ }
create_tempfile(&elftemp, &efd);
if ((ecp->eout = elf_begin(efd, ELF_C_WRITE, NULL)) == NULL)
errx(EXIT_FAILURE, "elf_begin() failed: %s",
Modified: projects/release-pkg/gnu/usr.bin/rcs/doc/rcs.ms
==============================================================================
--- projects/release-pkg/gnu/usr.bin/rcs/doc/rcs.ms Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/gnu/usr.bin/rcs/doc/rcs.ms Thu Feb 18 00:37:58 2016 (r295734)
@@ -16,7 +16,7 @@
.R
..
.de Id
-.ND \\$4
+.ND 1 June 1995
..
.Id $FreeBSD$
.RP
Copied: projects/release-pkg/lib/clang/libllvmdebuginfodwarf/Makefile.depend (from r295733, head/lib/clang/libllvmdebuginfodwarf/Makefile.depend)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/lib/clang/libllvmdebuginfodwarf/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmdebuginfodwarf/Makefile.depend)
@@ -0,0 +1,15 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+ include \
+ include/xlocale \
+ lib/libc++ \
+ lib/msun \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif
Copied: projects/release-pkg/lib/clang/libllvmdebuginfopdb/Makefile.depend (from r295733, head/lib/clang/libllvmdebuginfopdb/Makefile.depend)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/lib/clang/libllvmdebuginfopdb/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmdebuginfopdb/Makefile.depend)
@@ -0,0 +1,15 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+ include \
+ include/xlocale \
+ lib/libc++ \
+ lib/msun \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif
Copied: projects/release-pkg/lib/clang/libllvmlibdriver/Makefile.depend (from r295733, head/lib/clang/libllvmlibdriver/Makefile.depend)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/lib/clang/libllvmlibdriver/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmlibdriver/Makefile.depend)
@@ -0,0 +1,18 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+ include \
+ include/xlocale \
+ lib/libc++ \
+ lib/msun \
+ usr.bin/clang/tblgen.host \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+LibDriver.o: Options.inc.h
+LibDriver.po: Options.inc.h
+.endif
Copied: projects/release-pkg/lib/clang/libllvmlto/Makefile.depend (from r295733, head/lib/clang/libllvmlto/Makefile.depend)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/lib/clang/libllvmlto/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmlto/Makefile.depend)
@@ -0,0 +1,18 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+ include \
+ include/xlocale \
+ lib/libc++ \
+ lib/msun \
+ usr.bin/clang/tblgen.host \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+LTOCodeGenerator.o: Intrinsics.inc.h
+LTOCodeGenerator.po: Intrinsics.inc.h
+.endif
Copied: projects/release-pkg/lib/clang/libllvmmirparser/Makefile.depend (from r295733, head/lib/clang/libllvmmirparser/Makefile.depend)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/lib/clang/libllvmmirparser/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmmirparser/Makefile.depend)
@@ -0,0 +1,15 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+ include \
+ include/xlocale \
+ lib/libc++ \
+ lib/msun \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif
Copied: projects/release-pkg/lib/clang/libllvmorcjit/Makefile.depend (from r295733, head/lib/clang/libllvmorcjit/Makefile.depend)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/lib/clang/libllvmorcjit/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmorcjit/Makefile.depend)
@@ -0,0 +1,15 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+ include \
+ include/xlocale \
+ lib/libc++ \
+ lib/msun \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif
Copied: projects/release-pkg/lib/clang/libllvmpasses/Makefile.depend (from r295733, head/lib/clang/libllvmpasses/Makefile.depend)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/lib/clang/libllvmpasses/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmpasses/Makefile.depend)
@@ -0,0 +1,18 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+ include \
+ include/xlocale \
+ lib/libc++ \
+ lib/msun \
+ usr.bin/clang/tblgen.host \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+PassBuilder.o: Intrinsics.inc.h
+PassBuilder.po: Intrinsics.inc.h
+.endif
Modified: projects/release-pkg/lib/libc/tests/Makefile
==============================================================================
--- projects/release-pkg/lib/libc/tests/Makefile Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/lib/libc/tests/Makefile Thu Feb 18 00:37:58 2016 (r295734)
@@ -26,6 +26,8 @@ TESTS_SUBDIRS+= termios
TESTS_SUBDIRS+= tls
TESTS_SUBDIRS+= ttyio
+SUBDIR_DEPEND_tls= tls_dso
+
.if ${MK_LOCALES} != "no"
TESTS_SUBDIRS+= locale
.endif
Copied: projects/release-pkg/lib/libpe/Makefile.depend (from r295733, head/lib/libpe/Makefile.depend)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/lib/libpe/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/libpe/Makefile.depend)
@@ -0,0 +1,13 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+ include \
+ include/xlocale \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif
Modified: projects/release-pkg/libexec/Makefile
==============================================================================
--- projects/release-pkg/libexec/Makefile Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/libexec/Makefile Thu Feb 18 00:37:58 2016 (r295734)
@@ -10,6 +10,7 @@ SUBDIR= ${_atf} \
${_dma} \
getty \
${_mail.local} \
+ ${_makewhatis.local} \
${_mknetid} \
${_pppoed} \
revnetgroup \
@@ -88,6 +89,10 @@ _mail.local= mail.local
_smrsh= smrsh
.endif
+.if ${MK_MAN_UTILS} != "no"
+_makewhatis.local= makewhatis.local
+.endif
+
.if ${MK_TALK} != "no"
SUBDIR+= talkd
.endif
Modified: projects/release-pkg/libexec/rtld-elf/tests/Makefile
==============================================================================
--- projects/release-pkg/libexec/rtld-elf/tests/Makefile Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/libexec/rtld-elf/tests/Makefile Thu Feb 18 00:37:58 2016 (r295734)
@@ -7,6 +7,7 @@ FILESGROUPS= TESTS
TESTSPACKAGE= ${PACKAGE}
SUBDIR+= libpythagoras target
+SUBDIR_DEPEND_target= libpythagoras
ATF_TESTS_C= ld_library_pathfds
.include <bsd.test.mk>
Modified: projects/release-pkg/sbin/kldstat/Makefile.depend
==============================================================================
--- projects/release-pkg/sbin/kldstat/Makefile.depend Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/sbin/kldstat/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734)
@@ -8,6 +8,7 @@ DIRDEPS = \
lib/${CSU_DIR} \
lib/libc \
lib/libcompiler_rt \
+ lib/libutil \
.include <dirdeps.mk>
Modified: projects/release-pkg/secure/lib/libssh/Makefile.depend
==============================================================================
--- projects/release-pkg/secure/lib/libssh/Makefile.depend Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/secure/lib/libssh/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734)
@@ -6,6 +6,7 @@ DIRDEPS = \
gnu/lib/libgcc \
include \
include/arpa \
+ include/gssapi \
include/xlocale \
lib/${CSU_DIR} \
lib/libc \
Modified: projects/release-pkg/share/misc/committers-ports.dot
==============================================================================
--- projects/release-pkg/share/misc/committers-ports.dot Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/share/misc/committers-ports.dot Thu Feb 18 00:37:58 2016 (r295734)
@@ -175,6 +175,7 @@ nork [label="Norikatsu Shigemura\nnork at F
novel [label="Roman Bogorodskiy\nnovel at FreeBSD.org\n2005/03/07"]
nox [label="Juergen Lock\nnox at FreeBSD.org\n2006/12/22"]
obrien [label="David E. O'Brien\nobrien at FreeBSD.org\n1996/10/29"]
+olivier [label="Olivier Cochard-Labbe\nolivier at FreeBSD.org\n2016/02/02"]
olivierd [label="Olivier Duchateau\nolivierd at FreeBSD.org\n2012/05/29"]
osa [label="Sergey A. Osokin\nosa at FreeBSD.org\n2003/06/04"]
pat [label="Patrick Li\npat at FreeBSD.org\n2001/11/14"]
@@ -400,6 +401,7 @@ itetcu -> sylvio
jadawin -> bapt
jadawin -> flo
+jadawin -> olivier
jadawin -> riggs
jadawin -> sbz
jadawin -> wen
Modified: projects/release-pkg/share/mk/bsd.dep.mk
==============================================================================
--- projects/release-pkg/share/mk/bsd.dep.mk Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/share/mk/bsd.dep.mk Thu Feb 18 00:37:58 2016 (r295734)
@@ -5,6 +5,11 @@
#
# +++ variables +++
#
+# CLEANDEPENDDIRS Additional directories to remove for the cleandepend
+# target.
+#
+# CLEANDEPENDFILES Additional files to remove for the cleandepend target.
+#
# CTAGS A tags file generation program [gtags]
#
# CTAGSFLAGS Options for ctags(1) [not set]
@@ -27,7 +32,8 @@
# +++ targets +++
#
# cleandepend:
-# Remove depend and tags file
+# remove ${CLEANDEPENDFILES}; remove ${CLEANDEPENDDIRS} and all
+# contents.
#
# depend:
# Make the dependencies for the source files, and store
@@ -59,7 +65,7 @@ DEPENDFILE?= .depend
.if ${MK_DIRDEPS_BUILD} == "no"
.MAKE.DEPENDFILE= ${DEPENDFILE}
.endif
-DEPENDFILES= ${DEPENDFILE}
+CLEANDEPENDFILES= ${DEPENDFILE} ${DEPENDFILE}.*
# Keep `tags' here, before SRCS are mangled below for `depend'.
.if !target(tags) && defined(SRCS) && !defined(NO_TAGS)
@@ -156,7 +162,6 @@ ${_D}.po: ${_DSRC} ${POBJS:S/^${_D}.po$/
.if ${MK_FAST_DEPEND} == "yes" && \
(${.MAKE.MODE:Mmeta} == "" || ${.MAKE.MODE:Mnofilemon} != "")
-DEPENDFILES+= ${DEPENDFILE}.*
DEPEND_MP?= -MP
# Handle OBJS=../somefile.o hacks. Just replace '/' rather than use :T to
# avoid collisions.
@@ -205,14 +210,6 @@ depend: beforedepend ${DEPENDFILE} after
# This could be simpler with bmake :tW but needs to support fmake for MFC.
_CFLAGS_INCLUDES= ${CFLAGS:Q:S/\\ /,/g:C/-include,/-include%/g:C/,/ /g:M-include*:C/%/ /g}
_CXXFLAGS_INCLUDES= ${CXXFLAGS:Q:S/\\ /,/g:C/-include,/-include%/g:C/,/ /g:M-include*:C/%/ /g}
-# XXX: Temporary hack to workaround .depend files not tracking -include
-_hdrincludes=${_CFLAGS_INCLUDES:M*.h} ${_CXXFLAGS_INCLUDES:M*.h}
-.for _hdr in ${_hdrincludes:O:u}
-.if exists(${_hdr})
-${OBJS} ${POBJS} ${SOBJS}: ${_hdr}
-.endif
-.endfor
-.undef _hdrincludes
# Different types of sources are compiled with slightly different flags.
# Split up the sources, and filter out headers and non-applicable flags.
@@ -261,16 +258,20 @@ afterdepend:
.endif
.endif
-.if !target(cleandepend)
-cleandepend:
-.if defined(SRCS)
.if ${CTAGS:T} == "gtags"
- rm -f ${DEPENDFILES} GPATH GRTAGS GSYMS GTAGS
+CLEANDEPENDFILES+= GPATH GRTAGS GSYMS GTAGS
.if defined(HTML)
- rm -rf HTML
+CLEANDEPENDDIRS+= HTML
.endif
.else
- rm -f ${DEPENDFILES} tags
+CLEANDEPENDFILES+= tags
+.endif
+.if !target(cleandepend)
+cleandepend:
+.if defined(SRCS)
+ rm -f ${CLEANDEPENDFILES}
+.if !empty(CLEANDEPENDDIRS)
+ rm -rf ${CLEANDEPENDDIRS}
.endif
.endif
.endif
Modified: projects/release-pkg/share/mk/bsd.init.mk
==============================================================================
--- projects/release-pkg/share/mk/bsd.init.mk Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/share/mk/bsd.init.mk Thu Feb 18 00:37:58 2016 (r295734)
@@ -15,6 +15,10 @@ __<bsd.init.mk>__:
.endif
.include <bsd.own.mk>
.MAIN: all
+beforebuild: .PHONY .NOTMAIN
+.if !defined(_SKIP_BUILD)
+all: beforebuild .WAIT
+.endif
.if ${.MAKE.LEVEL:U1} == 0 && ${BUILD_AT_LEVEL0:Uyes:tl} == "no" && !make(clean*)
# this tells lib.mk and prog.mk to not actually build anything
Modified: projects/release-pkg/share/mk/bsd.lib.mk
==============================================================================
--- projects/release-pkg/share/mk/bsd.lib.mk Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/share/mk/bsd.lib.mk Thu Feb 18 00:37:58 2016 (r295734)
@@ -139,11 +139,6 @@ PO_FLAG=-pg
-c ${.IMPSRC} -o ${.TARGET}
${CTFCONVERT_CMD}
-.if !defined(_SKIP_BUILD)
-all: beforebuild .WAIT
-beforebuild: objwarn
-.endif
-
_LIBDIR:=${LIBDIR}
_SHLIBDIR:=${SHLIBDIR}
Modified: projects/release-pkg/share/mk/bsd.obj.mk
==============================================================================
--- projects/release-pkg/share/mk/bsd.obj.mk Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/share/mk/bsd.obj.mk Thu Feb 18 00:37:58 2016 (r295734)
@@ -89,6 +89,7 @@ objwarn:
canonical ${CANONICALOBJDIR}"
.endif
.endif
+beforebuild: objwarn
.if !defined(NO_OBJ)
.if !target(obj)
Modified: projects/release-pkg/share/mk/bsd.prog.mk
==============================================================================
--- projects/release-pkg/share/mk/bsd.prog.mk Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/share/mk/bsd.prog.mk Thu Feb 18 00:37:58 2016 (r295734)
@@ -155,8 +155,7 @@ MAN1= ${MAN}
.if defined(_SKIP_BUILD)
all:
.else
-all: beforebuild .WAIT ${PROG} ${SCRIPTS}
-beforebuild: objwarn
+all: ${PROG} ${SCRIPTS}
.if ${MK_MAN} != "no"
all: _manpages
.endif
Modified: projects/release-pkg/share/mk/bsd.subdir.mk
==============================================================================
--- projects/release-pkg/share/mk/bsd.subdir.mk Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/share/mk/bsd.subdir.mk Thu Feb 18 00:37:58 2016 (r295734)
@@ -89,6 +89,7 @@ ${__stage}install:
install: beforeinstall realinstall afterinstall
.ORDER: beforeinstall realinstall afterinstall
.endif
+.ORDER: all install
# SUBDIR recursing may be disabled for MK_DIRDEPS_BUILD
.if !target(_SUBDIR)
Modified: projects/release-pkg/share/mk/bsd.test.mk
==============================================================================
--- projects/release-pkg/share/mk/bsd.test.mk Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/share/mk/bsd.test.mk Thu Feb 18 00:37:58 2016 (r295734)
@@ -69,6 +69,7 @@ _TESTS=
SUBDIR+= ${ts}
.endif
.endfor
+SUBDIR_PARALLEL= t
.endif
# it is rare for test cases to have man pages
Modified: projects/release-pkg/sys/arm/allwinner/a10_ahci.c
==============================================================================
--- projects/release-pkg/sys/arm/allwinner/a10_ahci.c Thu Feb 18 00:26:21 2016 (r295733)
+++ projects/release-pkg/sys/arm/allwinner/a10_ahci.c Thu Feb 18 00:37:58 2016 (r295734)
@@ -41,7 +41,6 @@ __FBSDID("$FreeBSD$");
#include <sys/rman.h>
#include <sys/kernel.h>
#include <sys/module.h>
-#include <sys/gpio.h>
#include <machine/bus.h>
#include <dev/ofw/ofw_bus.h>
@@ -49,7 +48,6 @@ __FBSDID("$FreeBSD$");
#include <dev/ahci/ahci.h>
#include <arm/allwinner/a10_clk.h>
-#include "gpio_if.h"
/*
* Allwinner a1x/a2x/a8x SATA attachment. This is just the AHCI register
@@ -119,9 +117,6 @@ __FBSDID("$FreeBSD$");
#define AHCI_P0PHYCR 0x0078
#define AHCI_P0PHYSR 0x007C
-/* Kludge for CUBIEBOARD (and Banana PI too) */
-#define GPIO_AHCI_PWR 40
-
static void inline
ahci_set(struct resource *m, bus_size_t off, uint32_t set)
{
@@ -298,7 +293,6 @@ ahci_a10_probe(device_t dev)
static int
ahci_a10_attach(device_t dev)
{
- device_t gpio;
int error;
struct ahci_controller *ctlr;
@@ -316,19 +310,6 @@ ahci_a10_attach(device_t dev)
/* Turn on the PLL for SATA */
a10_clk_ahci_activate();
- /* Apply power to the drive, if any */
- gpio = devclass_get_device(devclass_find("gpio"), 0);
- if (gpio == NULL) {
- device_printf(dev,
- "GPIO device not yet present (SATA won't work).\n");
- bus_release_resource(dev, SYS_RES_MEMORY, ctlr->r_rid,
- ctlr->r_mem);
- return (ENXIO);
- }
- GPIO_PIN_SETFLAGS(gpio, GPIO_AHCI_PWR, GPIO_PIN_OUTPUT);
- GPIO_PIN_SET(gpio, GPIO_AHCI_PWR, GPIO_PIN_HIGH);
- DELAY(10000);
-
/* Reset controller */
if ((error = ahci_a10_ctlr_reset(dev)) != 0) {
bus_release_resource(dev, SYS_RES_MEMORY, ctlr->r_rid,
Copied: projects/release-pkg/sys/arm/allwinner/a10_codec.c (from r295733, head/sys/arm/allwinner/a10_codec.c)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ projects/release-pkg/sys/arm/allwinner/a10_codec.c Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/sys/arm/allwinner/a10_codec.c)
@@ -0,0 +1,850 @@
+/*-
+ * Copyright (c) 2014-2016 Jared D. McNeill <jmcneill at invisible.ca>
+ * 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.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, 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 DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+/*
+ * Allwinner A10/A20 Audio Codec
+ */
+
+#include <sys/cdefs.h>
+__FBSDID("$FreeBSD$");
+
+#include <sys/param.h>
+#include <sys/systm.h>
+#include <sys/bus.h>
+#include <sys/rman.h>
+#include <sys/condvar.h>
+#include <sys/kernel.h>
+#include <sys/module.h>
+#include <sys/gpio.h>
+
+#include <machine/bus.h>
+
+#include <dev/sound/pcm/sound.h>
+#include <dev/sound/chip.h>
+
+#include <dev/ofw/ofw_bus.h>
+#include <dev/ofw/ofw_bus_subr.h>
+
+#include <arm/allwinner/a10_clk.h>
+
+#include "sunxi_dma_if.h"
+#include "mixer_if.h"
+#include "gpio_if.h"
+
+#define TX_TRIG_LEVEL 0xf
+#define RX_TRIG_LEVEL 0x7
+#define DRQ_CLR_CNT 0x3
+
+#define AC_DAC_DPC 0x00
+#define DAC_DPC_EN_DA 0x80000000
+#define AC_DAC_FIFOC 0x04
+#define DAC_FIFOC_FS_SHIFT 29
+#define DAC_FIFOC_FS_MASK (7U << DAC_FIFOC_FS_SHIFT)
+#define DAC_FS_48KHZ 0
+#define DAC_FS_32KHZ 1
+#define DAC_FS_24KHZ 2
+#define DAC_FS_16KHZ 3
+#define DAC_FS_12KHZ 4
+#define DAC_FS_8KHZ 5
+#define DAC_FS_192KHZ 6
+#define DAC_FS_96KHZ 7
+#define DAC_FIFOC_FIFO_MODE_SHIFT 24
+#define DAC_FIFOC_FIFO_MODE_MASK (3U << DAC_FIFOC_FIFO_MODE_SHIFT)
+#define FIFO_MODE_24_31_8 0
+#define FIFO_MODE_16_31_16 0
+#define FIFO_MODE_16_15_0 1
+#define DAC_FIFOC_DRQ_CLR_CNT_SHIFT 21
+#define DAC_FIFOC_DRQ_CLR_CNT_MASK (3U << DAC_FIFOC_DRQ_CLR_CNT_SHIFT)
+#define DAC_FIFOC_TX_TRIG_LEVEL_SHIFT 8
+#define DAC_FIFOC_TX_TRIG_LEVEL_MASK (0x7f << DAC_FIFOC_TX_TRIG_LEVEL_SHIFT)
+#define DAC_FIFOC_MONO_EN (1U << 6)
+#define DAC_FIFOC_TX_BITS (1U << 5)
+#define DAC_FIFOC_DRQ_EN (1U << 4)
+#define DAC_FIFOC_FIFO_FLUSH (1U << 0)
+#define AC_DAC_FIFOS 0x08
+#define AC_DAC_TXDATA 0x0c
+#define AC_DAC_ACTL 0x10
+#define DAC_ACTL_DACAREN (1U << 31)
+#define DAC_ACTL_DACALEN (1U << 30)
+#define DAC_ACTL_MIXEN (1U << 29)
+#define DAC_ACTL_DACPAS (1U << 8)
+#define DAC_ACTL_PAMUTE (1U << 6)
+#define DAC_ACTL_PAVOL_SHIFT 0
+#define DAC_ACTL_PAVOL_MASK (0x3f << DAC_ACTL_PAVOL_SHIFT)
+#define AC_ADC_FIFOC 0x1c
+#define ADC_FIFOC_FS_SHIFT 29
+#define ADC_FIFOC_FS_MASK (7U << ADC_FIFOC_FS_SHIFT)
+#define ADC_FS_48KHZ 0
+#define ADC_FIFOC_EN_AD (1U << 28)
+#define ADC_FIFOC_RX_FIFO_MODE (1U << 24)
+#define ADC_FIFOC_RX_TRIG_LEVEL_SHIFT 8
+#define ADC_FIFOC_RX_TRIG_LEVEL_MASK (0x1f << ADC_FIFOC_RX_TRIG_LEVEL_SHIFT)
+#define ADC_FIFOC_MONO_EN (1U << 7)
+#define ADC_FIFOC_RX_BITS (1U << 6)
+#define ADC_FIFOC_DRQ_EN (1U << 4)
+#define ADC_FIFOC_FIFO_FLUSH (1U << 1)
+#define AC_ADC_FIFOS 0x20
+#define AC_ADC_RXDATA 0x24
+#define AC_ADC_ACTL 0x28
+#define ADC_ACTL_ADCREN (1U << 31)
+#define ADC_ACTL_ADCLEN (1U << 30)
+#define ADC_ACTL_PREG1EN (1U << 29)
+#define ADC_ACTL_PREG2EN (1U << 28)
+#define ADC_ACTL_VMICEN (1U << 27)
+#define ADC_ACTL_ADCG_SHIFT 20
+#define ADC_ACTL_ADCG_MASK (7U << ADC_ACTL_ADCG_SHIFT)
+#define ADC_ACTL_ADCIS_SHIFT 17
+#define ADC_ACTL_ADCIS_MASK (7U << ADC_ACTL_ADCIS_SHIFT)
+#define ADC_IS_LINEIN 0
+#define ADC_IS_FMIN 1
+#define ADC_IS_MIC1 2
+#define ADC_IS_MIC2 3
+#define ADC_IS_MIC1_L_MIC2_R 4
+#define ADC_IS_MIC1_LR_MIC2_LR 5
+#define ADC_IS_OMIX 6
+#define ADC_IS_LINEIN_L_MIC1_R 7
+#define ADC_ACTL_LNRDF (1U << 16)
+#define ADC_ACTL_LNPREG_SHIFT 13
+#define ADC_ACTL_LNPREG_MASK (7U << ADC_ACTL_LNPREG_SHIFT)
+#define ADC_ACTL_PA_EN (1U << 4)
+#define ADC_ACTL_DDE (1U << 3)
+#define AC_DAC_CNT 0x30
+#define AC_ADC_CNT 0x34
+
+static uint32_t a10codec_fmt[] = {
+ SND_FORMAT(AFMT_S16_LE, 1, 0),
+ SND_FORMAT(AFMT_S16_LE, 2, 0),
+ 0
+};
+
+static struct pcmchan_caps a10codec_pcaps = { 8000, 192000, a10codec_fmt, 0 };
+static struct pcmchan_caps a10codec_rcaps = { 8000, 48000, a10codec_fmt, 0 };
+
+struct a10codec_info;
+
+struct a10codec_chinfo {
+ struct snd_dbuf *buffer;
+ struct pcm_channel *channel;
+ struct a10codec_info *parent;
+ bus_dmamap_t dmamap;
+ void *dmaaddr;
+ bus_addr_t physaddr;
+ bus_size_t fifo;
+ device_t dmac;
+ void *dmachan;
+
+ int dir;
+ int run;
+ uint32_t pos;
+ uint32_t format;
+ uint32_t blocksize;
+ uint32_t speed;
+};
+
+struct a10codec_info {
+ device_t dev;
+ struct resource *res[2];
+ struct mtx *lock;
+ bus_dma_tag_t dmat;
+ unsigned dmasize;
+ void *ih;
+
+ unsigned drqtype_codec;
+ unsigned drqtype_sdram;
+
+ struct a10codec_chinfo play;
+ struct a10codec_chinfo rec;
+};
+
+static struct resource_spec a10codec_spec[] = {
+ { SYS_RES_MEMORY, 0, RF_ACTIVE },
+ { SYS_RES_IRQ, 0, RF_ACTIVE },
+ { -1, 0 }
+};
+
+#define CODEC_READ(sc, reg) bus_read_4((sc)->res[0], (reg))
+#define CODEC_WRITE(sc, reg, val) bus_write_4((sc)->res[0], (reg), (val))
+
+/*
+ * Mixer interface
+ */
+
+static int
+a10codec_mixer_init(struct snd_mixer *m)
+{
+ struct a10codec_info *sc = mix_getdevinfo(m);
+ pcell_t prop[4];
+ phandle_t node;
+ device_t gpio;
+ uint32_t val;
+ ssize_t len;
+ int pin;
+
+ mix_setdevs(m, SOUND_MASK_VOLUME | SOUND_MASK_LINE | SOUND_MASK_RECLEV);
+ mix_setrecdevs(m, SOUND_MASK_LINE | SOUND_MASK_LINE1 | SOUND_MASK_MIC);
+
+ /* Unmute input source to PA */
+ val = CODEC_READ(sc, AC_DAC_ACTL);
+ val |= DAC_ACTL_PAMUTE;
+ CODEC_WRITE(sc, AC_DAC_ACTL, val);
+
+ /* Enable PA */
+ val = CODEC_READ(sc, AC_ADC_ACTL);
+ val |= ADC_ACTL_PA_EN;
+ CODEC_WRITE(sc, AC_ADC_ACTL, val);
+
+ /* Unmute PA */
+ node = ofw_bus_get_node(sc->dev);
+ len = OF_getencprop(node, "allwinner,pa-gpios", prop, sizeof(prop));
+ if (len > 0 && (len / sizeof(prop[0])) == 4) {
+ gpio = OF_device_from_xref(prop[0]);
+ if (gpio != NULL) {
+ pin = prop[1] * 32 + prop[2];
+ GPIO_PIN_SETFLAGS(gpio, pin, GPIO_PIN_OUTPUT);
+ GPIO_PIN_SET(gpio, pin, GPIO_PIN_LOW);
+ }
+ }
+
+ return (0);
+}
+
+static const struct a10codec_mixer {
+ unsigned reg;
+ unsigned mask;
+ unsigned shift;
+} a10codec_mixers[SOUND_MIXER_NRDEVICES] = {
+ [SOUND_MIXER_VOLUME] = { AC_DAC_ACTL, DAC_ACTL_PAVOL_MASK,
+ DAC_ACTL_PAVOL_SHIFT },
+ [SOUND_MIXER_LINE] = { AC_ADC_ACTL, ADC_ACTL_LNPREG_MASK,
+ ADC_ACTL_LNPREG_SHIFT },
+ [SOUND_MIXER_RECLEV] = { AC_ADC_ACTL, ADC_ACTL_ADCG_MASK,
+ ADC_ACTL_ADCG_SHIFT },
+};
+
+static int
+a10codec_mixer_set(struct snd_mixer *m, unsigned dev, unsigned left,
+ unsigned right)
+{
+ struct a10codec_info *sc = mix_getdevinfo(m);
+ uint32_t val;
+ unsigned nvol, max;
+
+ max = a10codec_mixers[dev].mask >> a10codec_mixers[dev].shift;
+ nvol = (left * max) / 100;
+
+ val = CODEC_READ(sc, a10codec_mixers[dev].reg);
+ val &= ~a10codec_mixers[dev].mask;
+ val |= (nvol << a10codec_mixers[dev].shift);
+ CODEC_WRITE(sc, a10codec_mixers[dev].reg, val);
+
+ left = right = (left * 100) / max;
+ return (left | (right << 8));
+}
+
+static uint32_t
+a10codec_mixer_setrecsrc(struct snd_mixer *m, uint32_t src)
+{
+ struct a10codec_info *sc = mix_getdevinfo(m);
+ uint32_t val;
+
+ val = CODEC_READ(sc, AC_ADC_ACTL);
+
+ switch (src) {
+ case SOUND_MASK_LINE: /* line-in */
+ val &= ~ADC_ACTL_ADCIS_MASK;
+ val |= (ADC_IS_LINEIN << ADC_ACTL_ADCIS_SHIFT);
+ break;
+ case SOUND_MASK_MIC: /* MIC1 */
+ val &= ~ADC_ACTL_ADCIS_MASK;
+ val |= (ADC_IS_MIC1 << ADC_ACTL_ADCIS_SHIFT);
+ break;
+ case SOUND_MASK_LINE1: /* MIC2 */
+ val &= ~ADC_ACTL_ADCIS_MASK;
+ val |= (ADC_IS_MIC2 << ADC_ACTL_ADCIS_SHIFT);
+ break;
+ default:
+ break;
+ }
+
+ CODEC_WRITE(sc, AC_ADC_ACTL, val);
+
+ switch ((val & ADC_ACTL_ADCIS_MASK) >> ADC_ACTL_ADCIS_SHIFT) {
+ case ADC_IS_LINEIN:
+ return (SOUND_MASK_LINE);
+ case ADC_IS_MIC1:
+ return (SOUND_MASK_MIC);
+ case ADC_IS_MIC2:
+ return (SOUND_MASK_LINE1);
+ default:
+ return (0);
+ }
+}
+
+static kobj_method_t a10codec_mixer_methods[] = {
+ KOBJMETHOD(mixer_init, a10codec_mixer_init),
+ KOBJMETHOD(mixer_set, a10codec_mixer_set),
+ KOBJMETHOD(mixer_setrecsrc, a10codec_mixer_setrecsrc),
+ KOBJMETHOD_END
+};
+MIXER_DECLARE(a10codec_mixer);
+
+
+/*
+ * Channel interface
+ */
+
+static void
+a10codec_dmamap_cb(void *arg, bus_dma_segment_t *segs, int nseg, int error)
+{
+ struct a10codec_chinfo *ch = arg;
+
+ if (error != 0)
+ return;
+
+ ch->physaddr = segs[0].ds_addr;
+}
+
+static void
+a10codec_transfer(struct a10codec_chinfo *ch)
+{
+ bus_addr_t src, dst;
+ int error;
+
+ if (ch->dir == PCMDIR_PLAY) {
+ src = ch->physaddr + ch->pos;
+ dst = ch->fifo;
+ } else {
+ src = ch->fifo;
+ dst = ch->physaddr + ch->pos;
+ }
+
+ error = SUNXI_DMA_TRANSFER(ch->dmac, ch->dmachan, src, dst,
+ ch->blocksize);
+ if (error) {
+ ch->run = 0;
+ device_printf(ch->parent->dev, "DMA transfer failed: %d\n",
+ error);
+ }
+}
+
+static void
+a10codec_dmaconfig(struct a10codec_chinfo *ch)
+{
+ struct a10codec_info *sc = ch->parent;
+ struct sunxi_dma_config conf;
+
+ memset(&conf, 0, sizeof(conf));
+ conf.src_width = conf.dst_width = 16;
+ conf.src_burst_len = conf.dst_burst_len = 4;
+
+ if (ch->dir == PCMDIR_PLAY) {
+ conf.dst_noincr = true;
+ conf.src_drqtype = sc->drqtype_sdram;
+ conf.dst_drqtype = sc->drqtype_codec;
+ } else {
+ conf.src_noincr = true;
+ conf.src_drqtype = sc->drqtype_codec;
+ conf.dst_drqtype = sc->drqtype_sdram;
+ }
+
+ SUNXI_DMA_SET_CONFIG(ch->dmac, ch->dmachan, &conf);
+}
+
+static void
+a10codec_dmaintr(void *priv)
+{
+ struct a10codec_chinfo *ch = priv;
+ unsigned bufsize;
+
+ bufsize = sndbuf_getsize(ch->buffer);
+
+ ch->pos += ch->blocksize;
+ if (ch->pos >= bufsize)
+ ch->pos -= bufsize;
+
+ if (ch->run) {
+ chn_intr(ch->channel);
+ a10codec_transfer(ch);
+ }
+}
+
+static unsigned
+a10codec_fs(struct a10codec_chinfo *ch)
+{
+ switch (ch->speed) {
+ case 48000:
+ return (DAC_FS_48KHZ);
+ case 24000:
+ return (DAC_FS_24KHZ);
+ case 12000:
+ return (DAC_FS_12KHZ);
+ case 192000:
+ return (DAC_FS_192KHZ);
+ case 32000:
+ return (DAC_FS_32KHZ);
+ case 16000:
+ return (DAC_FS_16KHZ);
+ case 8000:
+ return (DAC_FS_8KHZ);
+ case 96000:
+ return (DAC_FS_96KHZ);
+ default:
+ return (DAC_FS_48KHZ);
+ }
+}
+
+static void
+a10codec_start(struct a10codec_chinfo *ch)
+{
+ struct a10codec_info *sc = ch->parent;
+ uint32_t val;
+
+ ch->pos = 0;
+
+ if (ch->dir == PCMDIR_PLAY) {
+ /* Flush DAC FIFO */
+ CODEC_WRITE(sc, AC_DAC_FIFOC, DAC_FIFOC_FIFO_FLUSH);
+
+ /* Clear DAC FIFO status */
+ CODEC_WRITE(sc, AC_DAC_FIFOS, CODEC_READ(sc, AC_DAC_FIFOS));
+
+ /* Enable DAC analog left/right channels and output mixer */
+ val = CODEC_READ(sc, AC_DAC_ACTL);
+ val |= DAC_ACTL_DACAREN;
+ val |= DAC_ACTL_DACALEN;
+ val |= DAC_ACTL_DACPAS;
+ CODEC_WRITE(sc, AC_DAC_ACTL, val);
+
+ /* Configure DAC DMA channel */
+ a10codec_dmaconfig(ch);
+
+ /* Configure DAC FIFO */
+ CODEC_WRITE(sc, AC_DAC_FIFOC,
+ (AFMT_CHANNEL(ch->format) == 1 ? DAC_FIFOC_MONO_EN : 0) |
+ (a10codec_fs(ch) << DAC_FIFOC_FS_SHIFT) |
+ (FIFO_MODE_16_15_0 << DAC_FIFOC_FIFO_MODE_SHIFT) |
+ (DRQ_CLR_CNT << DAC_FIFOC_DRQ_CLR_CNT_SHIFT) |
+ (TX_TRIG_LEVEL << DAC_FIFOC_TX_TRIG_LEVEL_SHIFT));
+
+ /* Enable DAC DRQ */
+ val = CODEC_READ(sc, AC_DAC_FIFOC);
+ val |= DAC_FIFOC_DRQ_EN;
+ CODEC_WRITE(sc, AC_DAC_FIFOC, val);
+ } else {
+ /* Flush ADC FIFO */
+ CODEC_WRITE(sc, AC_ADC_FIFOC, ADC_FIFOC_FIFO_FLUSH);
+
+ /* Clear ADC FIFO status */
+ CODEC_WRITE(sc, AC_ADC_FIFOS, CODEC_READ(sc, AC_ADC_FIFOS));
+
+ /* Enable ADC analog left/right channels, MIC1 preamp,
+ * and VMIC pin voltage
+ */
+ val = CODEC_READ(sc, AC_ADC_ACTL);
+ val |= ADC_ACTL_ADCREN;
+ val |= ADC_ACTL_ADCLEN;
+ val |= ADC_ACTL_PREG1EN;
+ val |= ADC_ACTL_VMICEN;
+ CODEC_WRITE(sc, AC_ADC_ACTL, val);
+
+ /* Configure ADC DMA channel */
+ a10codec_dmaconfig(ch);
+
+ /* Configure ADC FIFO */
+ CODEC_WRITE(sc, AC_ADC_FIFOC,
+ ADC_FIFOC_EN_AD |
+ ADC_FIFOC_RX_FIFO_MODE |
+ (AFMT_CHANNEL(ch->format) == 1 ? ADC_FIFOC_MONO_EN : 0) |
+ (a10codec_fs(ch) << ADC_FIFOC_FS_SHIFT) |
+ (RX_TRIG_LEVEL << ADC_FIFOC_RX_TRIG_LEVEL_SHIFT));
+
+ /* Enable ADC DRQ */
+ val = CODEC_READ(sc, AC_ADC_FIFOC);
+ val |= ADC_FIFOC_DRQ_EN;
+ CODEC_WRITE(sc, AC_ADC_FIFOC, val);
+ }
+
+ /* Start DMA transfer */
+ a10codec_transfer(ch);
+}
+
+static void
+a10codec_stop(struct a10codec_chinfo *ch)
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-projects
mailing list