diff options
Diffstat (limited to 'share')
-rw-r--r-- | share/examples/etc/make.conf | 6 | ||||
-rw-r--r-- | share/man/man4/Makefile | 2 | ||||
-rw-r--r-- | share/man/man4/gpio.4 | 43 | ||||
-rw-r--r-- | share/man/man4/nand.4 | 145 | ||||
-rw-r--r-- | share/man/man4/nandsim.4 | 93 | ||||
-rw-r--r-- | share/man/man4/owc.4 | 20 | ||||
-rw-r--r-- | share/man/man4/random.4 | 1 | ||||
-rw-r--r-- | share/man/man5/Makefile | 4 | ||||
-rw-r--r-- | share/man/man5/fstab.5 | 6 | ||||
-rw-r--r-- | share/man/man5/nandfs.5 | 132 | ||||
-rw-r--r-- | share/man/man9/Makefile | 2 | ||||
-rw-r--r-- | share/man/man9/VOP_REVOKE.9 | 4 | ||||
-rw-r--r-- | share/man/man9/iflibdi.9 | 6 | ||||
-rw-r--r-- | share/man/man9/pwm.9 | 93 | ||||
-rw-r--r-- | share/man/man9/pwmbus.9 | 81 | ||||
-rw-r--r-- | share/man/man9/vm_map_protect.9 | 19 | ||||
-rw-r--r-- | share/misc/bsd-family-tree | 5 | ||||
-rw-r--r-- | share/mk/bsd.cpu.mk | 4 | ||||
-rw-r--r-- | share/mk/bsd.libnames.mk | 1 | ||||
-rw-r--r-- | share/mk/src.libnames.mk | 1 | ||||
-rw-r--r-- | share/mk/src.opts.mk | 1 |
21 files changed, 151 insertions, 518 deletions
diff --git a/share/examples/etc/make.conf b/share/examples/etc/make.conf index 8a9fa90ac12a..f9463c334631 100644 --- a/share/examples/etc/make.conf +++ b/share/examples/etc/make.conf @@ -49,6 +49,12 @@ # icelake-client, cannonlake, knm, skylake-avx512, knl, # goldmont, skylake, broadwell, haswell, ivybridge, # sandybridge, westmere, nehalem, silvermont, bonnell +# ARM architecture: armv5, armv5te, armv6, armv6t2, arm1176jzf-s, armv7, +# armv7-a, armv7ve, generic-armv7-a, cortex-a5, +# cortex-a7, cortex-a8, cortex-a9, cortex-a12, +# cortex-a15, cortex-a17 +# ARM64 architechture: cortex-a53, cortex-a57, cortex-a72, +# exynos-m1 # # (?= allows to buildworld for a different CPUTYPE.) # diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index a810d9153349..13c3069b8172 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -303,8 +303,6 @@ MAN= aac.4 \ mx25l.4 \ mxge.4 \ my.4 \ - nand.4 \ - nandsim.4 \ ${_ndis.4} \ net80211.4 \ netdump.4 \ diff --git a/share/man/man4/gpio.4 b/share/man/man4/gpio.4 index 0e2c8cdb1423..da95c39f8e98 100644 --- a/share/man/man4/gpio.4 +++ b/share/man/man4/gpio.4 @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 5, 2013 +.Dd June 27, 2019 .Dt GPIO 4 .Os .Sh NAME @@ -103,12 +103,50 @@ passed to the kernel, being either statically compiled in, or by a variety of ways where the boot loader (or Open Firmware enabled system) passes the DTS blob to the kernel at boot. .Pp +On a +.Xr device.hints 5 +based system these hints can be used to configure drivers for devices +attached to +.Nm +pins: +.Bl -tag -width ".Va hint.driver.unit.pin_list" +.It Va hint.driver.unit.at +The +.Nm gpiobus +where the device is attached. +For example, +.Qq gpiobus0 . +.Ar driver +and +.Ar unit +are the driver name and the unit number for the device driver. +.It Va hint.driver.unit.pins +This is a bitmask of the pins on the +.Nm gpiobus +that are connected to the device. +The pins will be allocated to the specified driver instance. +Only pins with numbers from 0 to 31 can be specified using this hint. +.It Va hint.driver.unit.pin_list +This is a list of pin numbers of pins on the +.Nm gpiobus +that are connected to the device. +The pins will be allocated to the specified driver instance. +This is a more user friendly alternative to the +.Ar pins +hint. +Additionally, this hint allows specifying pin numbers greater than 31. +The numbers can be decimal or hexadecimal with 0x prefix. +Any non-digit character can be used as a separator. +For example, it can be a comma, a slash or a space. +The separator can be followed by any number of space characters. +.El +.Pp The following .Xr device.hints 5 are only provided by the .Cd ar71xx_gpio driver: -.Bl -tag -width ".Va hint.gpioiic.%d.atXXX" +.Bl -tag -width ".Va hint.gpio.function_clear" .It Va hint.gpio.%d.pinmask This is a bitmask of pins on the GPIO board that we would like to expose for use to the host operating system. @@ -133,6 +171,7 @@ of some device in a system. .Xr gpioiic 4 , .Xr gpioled 4 , .Xr iicbus 4 , +.Xr device.hints 5 , .Xr gpioctl 8 .Sh HISTORY The diff --git a/share/man/man4/nand.4 b/share/man/man4/nand.4 deleted file mode 100644 index 5c868a1151e6..000000000000 --- a/share/man/man4/nand.4 +++ /dev/null @@ -1,145 +0,0 @@ -.\" -.\" Copyright (c) 2012 The FreeBSD Foundation -.\" All rights reserved. -.\" -.\" This documentation was written by Semihalf under sponsorship from -.\" the FreeBSD Foundation. -.\" -.\" 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 AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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$ -.\" -.Dd March 8, 2012 -.Dt NAND 4 -.Os -.Sh NAME -.Nm nand -.Nd NAND Flash framework -.Sh SYNOPSIS -.Cd "device nand" -.Sh DESCRIPTION -The -.Fx -.Nm -framework consists of a set of interfaces that aim to provide an extensible, -object oriented environment for NAND controllers and NAND Flash memory chips -from various hardware vendors, and to allow for uniform and flexible -management of the NAND devices. -It comprises of the following major components: -.Bl -bullet -.It -NAND Flash controller (NFC) interface. -.Pp -Defines methods which allow to send commands as well as send/receive data -between the controller and a NAND chip. -Back-end drivers for specific NAND -controllers plug into this interface and implement low-level routines for a -given NAND controller. -.Pp -This layer implements basic functionality of a NAND Flash controller. -It allows to send command and address to chip, drive CS (chip select line), -as well as read/write to the selected NAND chip. -This layer is independent of -NAND chip devices actually connected to the controller. -.It -NAND chip interface. -.Pp -Provides basic operations like read page, program page, erase block. -Currently three generic classes of drivers are available, which provide -support for the following chips: -.Bl -bullet -.It -large page -.It -small page -.It -ONFI-compliant -.El -.Pp -This layer implements basic operations to be performed on a NAND chip, like -read, program, erase, get status etc. -Since these operations use specific -commands (depending on the vendor), each chip has potentially its own -implementation of the commands set. -.Pp -The framework is extensible so it is also possible to create a custom command -set for a non standard chip support. -.It -NANDbus. -.Pp -This layer is responsible for enumerating NAND chips in the system and -establishing the hierarchy between chips and their supervising controllers. -.Pp -Its main purpose is detecting type of NAND chips connected to a given chip -select (CS line). -It also allows manages locking access to the NAND -controller. -NANDbus passes requests from an active chip to the chip controller. -.It -NAND character / GEOM device. -.Pp -For each NAND chip found in a system a character and GEOM devices are created -which allows to read / write directly to a device, as well as perform other -specific operations (like via ioctl). -.Pp -There are two GEOM devices created for each NAND chip: -.Bl -bullet -.It -raw device -.It -normal device -.El -.Pp -Raw device allows to bypass ECC checking when reading/writing to it, while -normal device always uses ECC algorithm to validate the read data. -.Pp -NAND character devices will be created for each NAND chip detected while -probing the NAND controller. -.El -.Sh SEE ALSO -.Xr libnandfs 3 , -.Xr gnand 4 , -.Xr nandsim 4 , -.Xr nandfs 5 , -.Xr makefs 8 , -.Xr mount_nandfs 8 , -.Xr nandfs 8 , -.Xr nandsim 8 , -.Xr nandtool 8 , -.Xr newfs_nandfs 8 , -.Xr umount_nandfs 8 -.Sh STANDARDS -Open NAND Flash Interface Working Group -.Pq Vt ONFI . -.Sh HISTORY -The -.Nm -framework support first appeared in -.Fx 10.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -framework was designed and developed by -.An Grzegorz Bernacki . -This manual page was written by -.An Rafal Jaworowski . diff --git a/share/man/man4/nandsim.4 b/share/man/man4/nandsim.4 deleted file mode 100644 index bf8d624eeb8a..000000000000 --- a/share/man/man4/nandsim.4 +++ /dev/null @@ -1,93 +0,0 @@ -.\" -.\" Copyright (c) 2012 The FreeBSD Foundation -.\" All rights reserved. -.\" -.\" This documentation was written by Semihalf under sponsorship from -.\" the FreeBSD Foundation. -.\" -.\" 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 AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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$ -.\" -.Dd March 8, 2012 -.Dt NANDSIM 4 -.Os -.Sh NAME -.Nm nandsim -.Nd NAND Flash simulator driver -.Sh SYNOPSIS -.Cd "device nand" -.Cd "device nandsim" -.Cd "options ALQ" -.Sh DESCRIPTION -The -.Nm -is part of the -.Fx -NAND framework -.Xr nand 4 -and can be characterized with the following highlights: -.Bl -bullet -.It -plugs into the -.Xr nand 4 -framework APIs as if it were a hardware controller (hanging on the nexus bus) -with real NAND chips connected to it -.It -physically part of the kernel code (either statically linked into the kernel -image or built as a module) -.It -controlled with a user space program -.Xr nandsim 8 -.El -.Pp -From the user perspective, the -.Nm -allows for imitating ONFI-compliant NAND Flash devices as if they were -attached to the system via a virtual controller. -.Pp -Some -.Nm -features rely on the ability to log contents to a file, which is achieved -through the -.Xr alq 9 -facility. -.Sh SEE ALSO -.Xr nand 4 , -.Xr nandsim.conf 5 , -.Xr nandsim 8 -.Sh STANDARDS -Open NAND Flash Interface Working Group -.Pq Vt ONFI . -.Sh HISTORY -The -.Nm -support first appeared in -.Fx 10.0 . -.Sh AUTHORS -.An -nosplit -The -.Nm -kernel driver was developed by -.An Grzegorz Bernacki . -This manual page was written by -.An Rafal Jaworowski . diff --git a/share/man/man4/owc.4 b/share/man/man4/owc.4 index 43d6cb776ae4..06c4e909ac96 100644 --- a/share/man/man4/owc.4 +++ b/share/man/man4/owc.4 @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 20, 2015 +.Dd June 26, 2019 .Dt OWC 4 .Os .Sh NAME @@ -69,6 +69,24 @@ For more details about the .Va gpios property, please consult .Pa /usr/src/sys/dts/bindings-gpio.txt . +.Pp +On a +.Xr device.hints 5 +based system these values are required for the +.Nm : +.Bl -tag -width ".Va hint.owc.%d.atXXX" +.It Va hint.owc.%d.at +The +.Nm gpiobus +you are attaching to. +.It Va hint.owc.%d.pins +This is a bitmask that defines a pin on the +.Nm gpiobus +that is to be used for the 1-Wire bus. +For instance, to configure pin 10, use the bitmask of 0x400. +Please note that this mask should have only one bit set +(any other bits - i.e., pins - will be ignored). +.El .Sh SEE ALSO .Xr gpiobus 4 , .Xr ow 4 , diff --git a/share/man/man4/random.4 b/share/man/man4/random.4 index 0ccad03aeda4..3b3f9b2330e3 100644 --- a/share/man/man4/random.4 +++ b/share/man/man4/random.4 @@ -30,7 +30,6 @@ .Nm random .Nd the entropy device .Sh SYNOPSIS -.Cd "device random" .Cd "options RANDOM_LOADABLE" .Cd "options RANDOM_ENABLE_ETHER" .Cd "options RANDOM_ENABLE_UMA" diff --git a/share/man/man5/Makefile b/share/man/man5/Makefile index b5ec870f75ff..119869128acb 100644 --- a/share/man/man5/Makefile +++ b/share/man/man5/Makefile @@ -101,10 +101,6 @@ MAN+= freebsd-update.conf.5 MAN+= hesiod.conf.5 .endif -.if ${MK_NAND} != "no" -MAN+= nandfs.5 -.endif - .if ${MK_PF} != "no" MAN+= pf.conf.5 \ pf.os.5 diff --git a/share/man/man5/fstab.5 b/share/man/man5/fstab.5 index 062ab601851f..f4e9ce2b653e 100644 --- a/share/man/man5/fstab.5 +++ b/share/man/man5/fstab.5 @@ -216,6 +216,12 @@ then the special file is made available as a piece of swap space by the .Xr swapon 8 command at the end of the system reboot procedure. +For swap devices, the keyword +.Dq trimonce +triggers the delivery of a +.Dv BIO_DELETE +command to the device to mark +all blocks as unused. For vnode-backed swap spaces, .Dq file is supported in the diff --git a/share/man/man5/nandfs.5 b/share/man/man5/nandfs.5 deleted file mode 100644 index 7e895993674d..000000000000 --- a/share/man/man5/nandfs.5 +++ /dev/null @@ -1,132 +0,0 @@ -.\" -.\" Copyright (c) 2010 Semihalf -.\" 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 AND CONTRIBUTORS ``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 OR CONTRIBUTORS 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$ -.\" -.Dd Nov 11, 2010 -.Dt NANDFS 5 -.Os -.Sh NAME -.Nm nandfs -.Nd NAND Flash file system -.Sh SYNOPSIS -To compile support for the -.Nm , -place the following in your kernel configuration file: -.Bd -ragged -offset indent -.Cd "options NANDFS" -.Ed -.Pp -Even though the NAND FS can be used with any storage media, it has been -optimized and designed towards NAND Flash devices, so typically the following -driver is used: -.Bd -ragged -offset indent -.Cd "device nand" -.Ed -.Sh DESCRIPTION -The -.Nm -driver enables -.Fx -with support for NAND-oriented file system. -.Pp -It is a log-structured style file system with the following major features and -characteristics: -.Bl -bullet -.It -Hard links, symbolic links support -.It -Block journaling -.It -Copy-On-Write -.It -Snapshots (continuous, taken automatically, simultaneously mountable) -.It -Quick crash recovery at mount time -.It -64-bit data structures; supports many files, large files and volumes -.It -POSIX file permissions -.It -Checksum / ECC -.El -.Sh EXAMPLES -The most common usage is mounting the file system: -.Pp -.Dl "mount -t nandfs /dev/<gnandN> /mnt" -.Pp -or: -.Dl "mount_nandfs /dev/<gnandN> /mnt" -.Pp -where -.Ar gnandN -is the GEOM device representing a Flash partition (slice) containing the -.Nm -structure, and -.Pa /mnt -is a mount point. -.Pp -It is possible to define an entry in -.Pa /etc/fstab -for the -.Nm : -.Bd -literal -/dev/gnand0 /flash nandfs rw 0 0 -.Ed -.Pp -This will mount a -.Nm -partition at the specified mount point during system boot. -.Sh SEE ALSO -.Xr gnand 4 , -.Xr nand 4 , -.Xr mount_nandfs 8 , -.Xr nandfs 8 , -.Xr nandsim 8 , -.Xr nandtool 8 , -.Xr umount_nandfs 8 -.Sh HISTORY -The NAND FS concepts are based on NILFS principles and initial implementation -was derived from early read-only NILFS NetBSD code. -Since then the NAND FS -code diverged significantly and is by no means compatible with NILFS. -.Pp -The NAND Flash file system first appeared in -.Fx 10.0 . -.Sh AUTHORS -.An -nosplit -The NAND FS was written by -.An Grzegorz Bernacki -with the help of -.An Mateusz Guzik , -based on the NetBSD code created by -.An Reinoud Zandijk . -Additional help and support by -.An Lukasz Plachno , -.An Jan Sieka -and -.An Lukasz Wojcik . -This manual page was written by -.An Rafal Jaworowski . diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 682eb2a39502..a4fb56b891b9 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -270,7 +270,6 @@ MAN= accept_filter.9 \ proc_rwmem.9 \ pseudofs.9 \ psignal.9 \ - pwm.9 \ pwmbus.9 \ random.9 \ random_harvest.9 \ @@ -1670,6 +1669,7 @@ MLINKS+=proc_rwmem.9 proc_readmem.9 \ MLINKS+=psignal.9 gsignal.9 \ psignal.9 pgsignal.9 \ psignal.9 tdsignal.9 +MLINKS+=pwmbus.9 pwm.9 MLINKS+=random.9 arc4rand.9 \ random.9 arc4random.9 \ random.9 is_random_seeded.9 \ diff --git a/share/man/man9/VOP_REVOKE.9 b/share/man/man9/VOP_REVOKE.9 index 3557ce1109e8..610fdb7142aa 100644 --- a/share/man/man9/VOP_REVOKE.9 +++ b/share/man/man9/VOP_REVOKE.9 @@ -34,7 +34,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 5, 2002 +.Dd June 20, 2019 .Dt VOP_REVOKE 9 .Os .Sh NAME @@ -61,7 +61,7 @@ to signify that all access will be revoked; any other value is invalid. .Sh LOCKS The .Fa vp -must be unlocked on entry, and will remain unlocked upon return. +must be exclusively locked on entry, and will remain locked upon return. .Sh SEE ALSO .Xr make_dev_alias 9 , .Xr vnode 9 diff --git a/share/man/man9/iflibdi.9 b/share/man/man9/iflibdi.9 index 84340d502080..c37832ede6af 100644 --- a/share/man/man9/iflibdi.9 +++ b/share/man/man9/iflibdi.9 @@ -1,5 +1,5 @@ .\" $FreeBSD$ -.Dd May 24, 2017 +.Dd May 21, 2019 .Dt IFLIBDI 9 .Os .Sh NAME @@ -194,10 +194,10 @@ Allocate and initialize the \fIif_ctx_t\fP structure. Setup and initialize the MSI or MSI/X interrupt queues if necessary. Allocate memory for queues and qset structure setup. -.It Fn iflib_device_irq_alloc +.It Fn iflib_irq_alloc Allocate an interrupt resource for a given rid value with an associated filter and handler function. -.It Fn iflib_device_irq_alloc_generic +.It Fn iflib_irq_alloc_generic Performs the same function as iflib_device_irq_alloc along with the additional functionality of adding a taskgroup. The data fields and callback function are determined by the type of interrupt, diff --git a/share/man/man9/pwm.9 b/share/man/man9/pwm.9 deleted file mode 100644 index f7564a4eeca3..000000000000 --- a/share/man/man9/pwm.9 +++ /dev/null @@ -1,93 +0,0 @@ -.\" Copyright (c) 2018 Emmanuel Vadot <manu@freebsd.org> -.\" -.\" 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 DEVELOPERS ``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 DEVELOPERS 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$ -.\" -.Dd January 12, 2019 -.Dt PWM 9 -.Os -.Sh NAME -.Nm pwm , -.Nm PWM_GET_BUS , -.Nm PWM_CHANNEL_CONFIG , -.Nm PWM_CHANNEL_GET_CONFIG , -.Nm PWM_CHANNEL_SET_FLAGS , -.Nm PWM_CHANNEL_GET_FLAGS , -.Nm PWM_CHANNEL_ENABLE , -.Nm PWM_CHANNEL_IS_ENABLED , -.Nm PWM_CHANNEL_MAX -.Nd PWM methods -.Sh SYNOPSIS -.Cd "device pwm" -.In "pwm_if.h" -.Ft device_t -.Fn PWM_GET_BUS "device_t dev" -.Ft int -.Fn PWM_CHANNEL_CONFIG "device_t dev" "int channel" "uint64_t period" "uint64_t duty" -.Ft int -.Fn PWM_CHANNEL_GET_CONFIG "device_t dev" "int channel" "uint64_t *period" "uint64_t *duty" -.Ft int -.Fn PWM_CHANNEL_SET_FLAGS "device_t dev" "int channel" "uint32_t flags" -.Ft int -.Fn PWM_CHANNEL_GET_FLAGS "device_t dev" "int channel" "uint32_t *flags" -.Ft int -.Fn PWM_CHANNEL_ENABLE "device_t dev" "int channel" "bool enable" -.Ft int -.Fn PWM_CHANNEL_IS_ENABLED "device_t dev" "int channel" "bool *enabled" -.Ft int -.Fn PWM_CHANNEL_MAX "device_t dev" "int channel" "int *nchannel" -.Sh DESCRIPTION -The PWM (Pulse-Width Modulation) interface allows the device driver to register to a global -bus so other devices in the kernel can use them in a generic way. -.Sh INTERFACE -.Bl -tag -width indent -.It Fn PWM_GET_BUS "device_t dev" -Return the bus device. -.It Fn PWM_CHANNEL_CONFIG "device_t dev" "int channel" "uint64_t period" "uint64_t duty" -Configure the period and duty (in nanoseconds) in the PWM controller for the specified channel. -Returns 0 on success or -.Er EINVAL -if the values are not supported by the controller or -.Er EBUSY -is the PWM controller is in use and does not support changing the value on the fly. -.It Fn PWM_CHANNEL_GET_CONFIG "device_t dev" "int channel" "uint64_t *period" "uint64_t *duty" -Get the current configuration of the period and duty for the specified channel. -.It Fn PWM_CHANNEL_SET_FLAGS "device_t dev" "int channel" "uint32_t flags" -Set the flags of the channel (like inverted polarity). -.It Fn PWM_CHANNEL_GET_FLAGS "device_t dev" "int channel" "uint32_t *flags" -Get the current flags for the channel. -.It Fn PWM_CHANNEL_ENABLE "device_t dev" "int channel" "bool enable" -Enable the PWM channel. -.It Fn PWM_CHANNEL_ISENABLED "device_t dev" "int channel" "bool *enable" -Test if the PWM channel is enabled. -.It Fn PWM_CHANNEL_MAX "device_t dev" "int channel" "int *nchannel" -Get the maximum number of channels supported by the controller. -.El -.Sh HISTORY -The -.Nm pwm -interface first appeared in -.Fx 13.0 . -The -.Nm pwm -interface and manual page was written by -.An Emmanuel Vadot Aq Mt manu@FreeBSD.org . diff --git a/share/man/man9/pwmbus.9 b/share/man/man9/pwmbus.9 index ba987eaf77a5..5b0915c10812 100644 --- a/share/man/man9/pwmbus.9 +++ b/share/man/man9/pwmbus.9 @@ -22,70 +22,85 @@ .\" .\" $FreeBSD$ .\" -.Dd November 12, 2018 +.Dd June 21, 2019 .Dt PWMBUS 9 .Os .Sh NAME .Nm pwmbus , -.Nm pwmbus_attach_bus , -.Nm PWMBUS_GET_BUS , .Nm PWMBUS_CHANNEL_CONFIG , +.Nm PWMBUS_CHANNEL_COUNT , +.Nm PWMBUS_CHANNEL_ENABLE , .Nm PWMBUS_CHANNEL_GET_CONFIG , -.Nm PWMBUS_CHANNEL_SET_FLAGS , .Nm PWMBUS_CHANNEL_GET_FLAGS , -.Nm PWMBUS_CHANNEL_ENABLE , .Nm PWMBUS_CHANNEL_IS_ENABLED , -.Nm PWMBUS_CHANNEL_MAX +.Nm PWMBUS_CHANNEL_SET_FLAGS , +.Nm PWMBUS_GET_BUS .Nd PWMBUS methods .Sh SYNOPSIS .Cd "device pwm" .In "pwmbus_if.h" -.Ft device_t -.Fn pwmbus_attach_bus "device_t dev" .Ft int .Fn PWMBUS_CHANNEL_CONFIG "device_t bus" "int channel" "uint64_t period" "uint64_t duty" .Ft int -.Fn PWMBUS_CHANNEL_GET_CONFIG "device_t bus" "int channel" "uint64_t *period" "uint64_t *duty" +.Fn PWMBUS_CHANNEL_COUNT "device_t bus" "int channel" "int *nchannel" .Ft int -.Fn PWMBUS_CHANNEL_SET_FLAGS "device_t bus" "int channel" "uint32_t flags" +.Fn PWMBUS_CHANNEL_ENABLE "device_t bus" "int channel" "bool enable" .Ft int -.Fn PWMBUS_CHANNEL_GET_FLAGS "device_t bus" "int channel" "uint32_t *flags" +.Fn PWMBUS_CHANNEL_GET_CONFIG "device_t bus" "int channel" "uint64_t *period" "uint64_t *duty" .Ft int -.Fn PWMBUS_CHANNEL_ENABLE "device_t bus" "int channel" "bool enable" +.Fn PWMBUS_CHANNEL_GET_FLAGS "device_t bus" "int channel" "uint32_t *flags" .Ft int .Fn PWMBUS_CHANNEL_IS_ENABLED "device_t bus" "int channel" "bool *enabled" .Ft int -.Fn PWMBUS_CHANNEL_MAX "device_t bus" "int channel" "int *nchannel" +.Fn PWMBUS_CHANNEL_SET_FLAGS "device_t bus" "int channel" "uint32_t flags" .Sh DESCRIPTION -The PWMBUS (Pulse-Width Modulation) interface allows the device driver to register to a global -bus so other devices in the kernel can use them in a generic way +The PWMBUS (Pulse-Width Modulation) interface allows a device driver to +register to a global bus so other devices in the kernel can use them in a +generic way. +.Pp +For all +.Nm +methods, the +.Va period +argument is the duration in nanoseconds of one complete on-off cycle, and the +.Va duty +argument is the duration in nanoseconds of the on portion of that cycle. +.Pp +Some PWM hardware is organized as a single controller with multiple channels. +Channel numbers count up from zero. +When multiple channels are present, they sometimes share a common clock or +other resources. +In such cases, changing the period or duty cycle of any one channel may affect +other channels within the hardware which share the same resources. +Consult the documentation for the underlying PWM hardware device driver for +details on channels that share resources. .Sh INTERFACE .Bl -tag -width indent -.It Fn pwmbus_attach_bus "device_t dev" -Attach the -.Nm pwmbus -to the device driver .It Fn PWMBUS_CHANNEL_CONFIG "device_t bus" "int channel" "uint64_t period" "uint64_t duty" -Configure the period and duty (in nanoseconds) in the PWM controller on the bus for the specified channel. +Configure the period and duty (in nanoseconds) in the PWM controller on the bus +for the specified channel. Returns 0 on success or .Er EINVAL -is the values are not supported by the controller or +if the values are not supported by the controller or .Er EBUSY -is the PWMBUS controller is in use and doesn't support changing the value on the fly. +if the PWMBUS controller is in use and does not support changing the value on +the fly. +.It Fn PWMBUS_CHANNEL_COUNT "device_t bus" "int *nchannel" +Get the number of channels supported by the controller. +.It Fn PWMBUS_CHANNEL_ENABLE "device_t bus" "int channel" "bool enable" +Enable the PWM channel. .It Fn PWMBUS_CHANNEL_GET_CONFIG "device_t bus" "int channel" "uint64_t *period" "uint64_t *duty" Get the current configuration of the period and duty for the specified channel. -.It Fn PWMBUS_CHANNEL_SET_FLAGS "device_t bus" "int channel" "uint32_t flags" -Set the flags of the channel (like inverted polarity), if the driver or controller -doesn't support this a default method is used. .It Fn PWMBUS_CHANNEL_GET_FLAGS "device_t bus" "int channel" "uint32_t *flags" -Get the current flags for the channel, if the driver or controller -doesn't support this, a default method is used. -.It Fn PWMBUS_CHANNEL_ENABLE "device_t bus" "int channel" "bool enable" -Enable the PWM channel. -.It Fn PWMBUS_CHANNEL_ISENABLED "device_t bus" "int channel" "bool *enable" -Test if the PWM channel is enabled. -.It PWMBUS_CHANNEL_MAX "device_t bus" "int channel" "int *nchannel" -Get the maximum number of channel supported by the controller. +Get the current flags for the channel. +If the driver or controller +does not support this, a default method returns a flags value of zero. +.It Fn PWMBUS_CHANNEL_IS_ENABLED "device_t bus" "int channel" "bool *enable" +Test whether the PWM channel is enabled. +.It Fn PWMBUS_CHANNEL_SET_FLAGS "device_t bus" "int channel" "uint32_t flags" +Set the flags of the channel (such as inverted polarity). +If the driver or controller does not support this a do-nothing default method +is used. .El .Sh HISTORY The diff --git a/share/man/man9/vm_map_protect.9 b/share/man/man9/vm_map_protect.9 index c4b5a738abe7..5e58074ebda7 100644 --- a/share/man/man9/vm_map_protect.9 +++ b/share/man/man9/vm_map_protect.9 @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 19, 2003 +.Dd June 20, 2019 .Dt VM_MAP_PROTECT 9 .Os .Sh NAME @@ -51,6 +51,11 @@ within the map .Fa map to .Fa new_prot . +The value specified by +.Fa new_prot +may not include any protection bits that are not set in +.Va max_protection +on every entry within the range. .Pp If .Fa set_max @@ -59,7 +64,12 @@ is TRUE, is treated as the new .Va max_protection setting for each underlying entry. -Otherwise, only the +Protection bits not included +.Fa new_prot +will be cleared from existing entries. +If +.Fa set_max +is FALSE only the .Va protection field is affected. .Pp @@ -86,6 +96,11 @@ would exceed for an entry within the range, .Dv KERN_PROTECTION_FAILURE is returned. +If a copy-on-write mapping is transitioned from read-only to +read-write, and too little swap space is available for backing the +copied pages, +.Dv KERN_RESOURCE_SHORTAGE +is returned. .Sh SEE ALSO .Xr vm_map 9 .Sh AUTHORS diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index 81741ca34446..6f386cbc0b08 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -135,7 +135,7 @@ FreeBSD 4.0 | | | | | NetBSD 1.4.2 | | | FreeBSD 3.5.1 | | | | | | | | | | | | | | | *---FreeBSD 4.1 | | | | | | | - | | | | (?) | | | | + | | | | | | | | | | FreeBSD 4.1.1 | | / | | | | | | | | / | | | | | FreeBSD 4.2 Darwin/ | NetBSD 1.4.3 | | @@ -399,6 +399,8 @@ FreeBSD 5.2 | | | | | | | NetBSD | | | | | 8.1 | DragonFly 5.6 | | | | | + | | | | DragonFly 5.6.1 + | | | | | FreeBSD 13 -current | NetBSD -current OpenBSD -current DragonFly -current | | | | | v v v v v @@ -783,6 +785,7 @@ DragonFly 5.4.1 2018-12-24 [DFB] OpenBSD 6.5 2019-05-01 [OBD] NetBSD 8.1 2019-06-04 [NBD] DragonFly 5.6 2019-06-17 [DFB] +DragonFly 5.6.1 2019-06-19 [DFB] Bibliography ------------------------ diff --git a/share/mk/bsd.cpu.mk b/share/mk/bsd.cpu.mk index acf1f5922593..c16ab5a85bf6 100644 --- a/share/mk/bsd.cpu.mk +++ b/share/mk/bsd.cpu.mk @@ -369,6 +369,10 @@ CFLAGS += -mfloat-abi=softfp .endif .endif +.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpcspe" +LDFLAGS+= -Wl,--secure-plt +.endif + .if ${MACHINE_ARCH} == "powerpcspe" CFLAGS += -mcpu=8548 -Wa,-me500 -mspe=yes -mabi=spe -mfloat-gprs=double .endif diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk index b2675fce7cf3..1bea2ff10786 100644 --- a/share/mk/bsd.libnames.mk +++ b/share/mk/bsd.libnames.mk @@ -104,7 +104,6 @@ LIBMLX4?= ${LIBDESTDIR}${LIBDIR_BASE}/libmlx4.a LIBMLX5?= ${LIBDESTDIR}${LIBDIR_BASE}/libmlx5.a LIBMP?= ${LIBDESTDIR}${LIBDIR_BASE}/libmp.a LIBMT?= ${LIBDESTDIR}${LIBDIR_BASE}/libmt.a -LIBNANDFS?= ${LIBDESTDIR}${LIBDIR_BASE}/libnandfs.a LIBNCURSES?= ${LIBDESTDIR}${LIBDIR_BASE}/libncurses.a LIBNCURSESW?= ${LIBDESTDIR}${LIBDIR_BASE}/libncursesw.a LIBNETGRAPH?= ${LIBDESTDIR}${LIBDIR_BASE}/libnetgraph.a diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index d08a8653de3a..fcb03aaaedcd 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -135,7 +135,6 @@ _LIBRARIES= \ memstat \ mp \ mt \ - nandfs \ ncurses \ ncursesw \ netgraph \ diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index 96e3c94a948f..03d089b8246b 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -206,7 +206,6 @@ __DEFAULT_NO_OPTIONS = \ LOADER_FORCE_LE \ LOADER_VERBOSE \ LOADER_VERIEXEC_PASS_MANIFEST \ - NAND \ OFED_EXTRA \ OPENLDAP \ RPCBIND_WARMSTART_SUPPORT \ |