Commit Graph

190279 Commits

Author SHA1 Message Date
Aleksandr Rybalko
bfc00339de Fix case when vt(4) started w/o driver assigned.
o Always init locks and cv ASAP.
o Initialize driver-independent parts even if driver probing fail.
o Allow to call vt_upgrade anytime, for later loaded drivers.
o New window flag VWF_READY, to track if window already initialized.
Other updates:
o Pass vd as a cookie for kbd_allocate.
o Do not blank window on driver replacement.

Tested by:	hselasky (RPi), emaste(VGA, EFIFB, KMS), me

MFC after:	7 days
Sponsored by:	The FreeBSD Foundation
2014-06-03 13:33:43 +00:00
Pietro Cerutti
ae5cb1b14b - Use strlen instead of hardcoding a number
- Terminate a sentence with a period

Approved by:	cognet
2014-06-03 07:11:22 +00:00
Maxim Sobolev
415dfa833a Fix few outdated names of defines:
o NR_REG_SW_NIC -> NR_REG_SW
o NR_RING_NIC_SW -> NR_REG_NIC_SW
o NETMAP_NO_TX_SYNC -> NETMAP_NO_TX_POLL
o NETMAP_DO_RX_SYNC -> NETMAP_DO_RX_POLL

I hope dear luigi has not left those as an excercise to careful
reader, in which case I apologize in advance for ruining his play.

MFC after:     1 week
2014-06-03 05:19:10 +00:00
Kevin Lo
71c92ff80a Fix build UDP-Lite with VIMAGE enabled when building with gcc.
Reported and tested by: Jason Hellenthal
2014-06-03 01:30:32 +00:00
John-Mark Gurney
527be4f229 handle longer commands so that lines don't overflow... people who added
commands forgot to check this...
2014-06-02 23:50:19 +00:00
John-Mark Gurney
b2c696468c add Xref to sound(4)...
MFC after:	1 week
2014-06-02 22:58:00 +00:00
George V. Neville-Neil
5c37e5dacf Add missing Ivy Bridge and Haswell events.
Submitted by: Anton Rang <rang@mac.com>
MFC: 2 weeks
2014-06-02 20:50:08 +00:00
Alexander Motin
fcaf473cfc Overhaul CAM SG driver IOCTL interfaces.
Make it really work for native FreeBSD programs.  Before this it was broken
for years due to different number of pointer dereferences in Linux and
FreeBSD IOCTL paths, permanently returning errors to FreeBSD programs.
This change breaks the driver FreeBSD IOCTL ABI, making it more strict,
but since it was not working any way -- who bother.

Add shims for 32-bit programs on 64-bit host, translating the argument
of the SG_IO IOCTL for both FreeBSD and Linux ABIs.

With this change I was able to run 32-bit Linux sg3_utils tools and simple
32 and 64-bit FreeBSD test tools on both 32 and 64-bit FreeBSD systems.

MFC after:	1 month
2014-06-02 19:53:53 +00:00
Marcel Moolenaar
717568ad8d Convert bxe(4) to use the driver API.
Submitted by:   Sreekanth Rupavatharam <rupavath@juniper.net>
Obtained from:  Juniper Networks, Inc.
2014-06-02 18:54:45 +00:00
Marcel Moolenaar
9e11529015 Convert em(4) to use the driver API.
Submitted by:   Anuranjan Shukla <anshukla@juniper.net>
Obtained from:  Juniper Networks, Inc.
2014-06-02 18:52:03 +00:00
Marcel Moolenaar
41eb5ac39d Convert fxp(4) to use the driver API.
Submitted by:	Anuranjan Shukla <anshukla@juniper.net>
Obtained from:	Juniper Networks, Inc.
2014-06-02 18:45:36 +00:00
Ed Maste
ff2e520113 Remove extraneous "mkdir -p"
The directory hierarchy is created by an mtree file (BSD.usr.dist,
in the case of calendar(1)).  An explicit "mkdir -p" in a program's
Makefile is redundant, and can mask a missing mtree entry.
2014-06-02 18:30:57 +00:00
Marcel Moolenaar
d22c735e03 Add convert_drvapi.sh; a script that helps to convert NIC drivers
to use the procedural interface.

Submitted by:	Sreekanth Rupavatharam <rupavath@juniper.net>
Reviewed by:	glebius@
Obtained from:	Juniper Networks, Inc.
2014-06-02 18:02:10 +00:00
Marcel Moolenaar
62d76917b8 Introduce a procedural interface to the ifnet structure. The new
interface allows the ifnet structure to be defined as an opaque
type in NIC drivers.  This then allows the ifnet structure to be
changed without a need to change or recompile NIC drivers.

Put differently, NIC drivers can be written and compiled once and
be used with different network stack implementations, provided of
course that those network stack implementations have an API and
ABI compatible interface.

This commit introduces the 'if_t' type to replace 'struct ifnet *'
as the type of a network interface. The 'if_t' type is defined as
'void *' to enable the compiler to perform type conversion to
'struct ifnet *' and vice versa where needed and without warnings.
The functions that implement the API are the only functions that
need to have an explicit cast.

The MII code has been converted to use the driver API to avoid
unnecessary code churn. Code churn comes from having to work with
both converted and unconverted drivers in correlation with having
callback functions that take an interface. By converting the MII
code first, the callback functions can be defined so that the
compiler will perform the typecasts automatically.

As soon as all drivers have been converted, the if_t type can be
redefined as needed and the API functions can be fix to not need
an explicit cast.

The immediate benefactors of this change are:
1.  Juniper Networks - The network stack implementation in Junos
    is entirely different from FreeBSD's one and this change
    allows Juniper to build "stock" NIC drivers that can be used
    in combination with both the FreeBSD and Junos stacks.
2.  FreeBSD - This change opens the door towards changing ifnet
    and implementing new features and optimizations in the network
    stack without it requiring a change in the many NIC drivers
    FreeBSD has.

Submitted by:	Anuranjan Shukla <anshukla@juniper.net>
Reviewed by:	glebius@
Obtained from:	Juniper Networks, Inc.
2014-06-02 17:54:39 +00:00
Ivan Voras
e74d21571f Document the diskid automatic label class.
While there, also document the glabel "native" labels and explain why
there are additional nodes created for nested GEOM classes.

Reminded by:	jmg
2014-06-02 15:05:25 +00:00
Pietro Cerutti
4c524a4287 - Return NULL and set errno to EINVAL if size is 0 (as required by POSIX).
Update the manpage to reflect this change.
- Always set the current position to the first null-byte when opening in append
mode. This makes the implementation compatible with glibc's. Update the test
suite.

Reported by:	pho
Approved by:	cognet
2014-06-02 13:48:57 +00:00
Hans Petter Selasky
b2fa7d8104 Change type of the DMA address so that on PAE platforms we get can
64-bit DMA addresses even though the USB stack currently only uses
32-bit DMA.

Suggested by:	Kohji Okuno <okuno.kohji@jp.panasonic.com>
2014-06-02 07:08:34 +00:00
John-Mark Gurney
13fe9e6cb1 enable sound modules on arm.. This is necessary to get the uaudio
module installed...
2014-06-02 03:27:33 +00:00
Benjamin Kaduk
3bd9acafff Note that recording is not supported for snd_envy24*
PR:		docs/166755
Approved by:	hrs (mentor)
2014-06-02 03:07:16 +00:00
Benjamin Kaduk
a353a594e0 Document some more socket features
Add some mention of the functions used by protocol implementations,
upcalls, and other general routines.

Not all functionality is documented; in particular:
o the *at() variants, which are useful only for implementing the
  corresponding syscalls.
o soconnect2(), also only used to implement a syscall (socketpair()).
o sockargs(), which is essentually unused and only tangentially
  socket-related.
o selsocket(), which is commented as being present solely for use by
  netncp and netsmb.
o getsockaddr(), which is just a convenience shortcut for copyin().

Reviewed by:	jhb (previous version)
Approved by:	hrs (mentor)
2014-06-02 03:03:57 +00:00
Luiz Otavio O Souza
7b34615303 Never, ever, abbreviate the month names on manual pages.
Pointed out by:	brueffer
Pointy hat to:	loos
2014-06-02 02:20:28 +00:00
Luiz Otavio O Souza
f7eebb7730 Configure the analog input 7 which, on BBB, is connected to the 3V3B rail
through a voltage divisor (R163 and R164 on page 4 of BBB schematic).

Add a note about this on ti_adc(4) man page.  The ti_adc(4) man page will
first appear on 10.1-RELEASE.

MFC after:	1 week
Suggested by:	Sulev-Madis Silber (ketas)
Manual page reviewed by:	brueffer (D127)
2014-06-02 02:00:17 +00:00
Eitan Adler
ebfbfab668 arc: add linting for python files 2014-06-02 00:21:42 +00:00
Hiren Panchasara
046faba0eb DNOLD_IS_ECN introduced by r266941 is not required.
DNOLD_* flags are for compat with old binaries.

Suggested by: luigi
2014-06-01 20:19:17 +00:00
Bryan Venteicher
9a73216696 Split the virtio.h header file into multiple files
Reorganize the previous contexts of the file as it is in Linux. The
eventual goal is to install the header files and share them between
the kernel and bhyve.

MFC after:	1 week
2014-06-01 18:16:01 +00:00
Ruslan Bukin
0cd354a070 Add ident value. This fixes universe build.
Pointed out by:	andrew
2014-06-01 17:09:02 +00:00
Jilles Tjoelker
fd1e753fbc printf: Install tests/regress.missingpos1.out, fixing tests. 2014-06-01 13:33:22 +00:00
Jilles Tjoelker
b0762e4921 sh: Avoid undefined behaviour shifting negative values left in arithmetic.
With i386 base clang, arith_yacc.o remains unchanged.
2014-06-01 11:25:34 +00:00
Hans Petter Selasky
dd5a01badc Add basic support for isochronous transfers in host mode to the
ISP/SAF1761 driver.

Sponsored by:	DARPA, AFRL
2014-06-01 10:22:18 +00:00
Ruslan Bukin
53dc9d3d9c Fix i2c communication interface to be compatible with
vendor tools, e.g. embedded controller tool

Submitted by:	Maxim Ignatenko <gelraen.ua@gmail.com>
2014-06-01 08:45:27 +00:00
Ruslan Bukin
08ae4ac990 Rename exynos uart driver filenames. 2014-06-01 08:34:45 +00:00
Ruslan Bukin
1e57235626 Add support for Exynos 5420 Octa - 8-core
heterogeneous (big.LITTLE) ARM machine
(4 x Cortex-A15 @ 1.8Ghz, 4 x Cortex-A7 @ 1Ghz)

Add configuration for Arndale Octa development board
2014-06-01 08:15:34 +00:00
Ruslan Bukin
058a928e4c Do only receive chars if there are some data in the buffer.
This fixes operation on newer Exynos boards.
2014-06-01 07:34:54 +00:00
Hiren Panchasara
fc5e1956d9 ECN marking implenetation for dummynet.
Changes include both DCTCP and RFC 3168 ECN marking methodology.

DCTCP draft: http://tools.ietf.org/html/draft-bensley-tcpm-dctcp-00

Submitted by:	Midori Kato (aoimidori27@gmail.com)
Worked with:	Lars Eggert (lars@netapp.com)
Reviewed by:	luigi, hiren
2014-06-01 07:28:24 +00:00
Ganbold Tsagaankhuu
80ce0850f4 Silence tinderbox build.
Approved by:    stas (mentor)
2014-06-01 05:02:48 +00:00
Adrian Chadd
924aaf69ff Pin the right thread.
This _was_ right, a last minute suggestion and not enough testing makes
Adrian a bad boy.

Tested:

* igb(4) with RSS patches, by hand verifying each igb(4) taskqueue
  tid from procstat -ka using cpuset -g -t <tid>.
2014-06-01 04:11:05 +00:00
Craig Rodrigues
7bfe91e85c Allow customization of the brand displayed in the boot menu.
If the user specifies in /boot/loader.conf:

    loader_brand="mycustom-brand"

Then "mycustom-brand" will be executed instead of "fbsd-logo".

Submitted by:    alfred
Obtained from:   FreeNAS
2014-06-01 04:08:45 +00:00
Luiz Otavio O Souza
b1b4b37f4d Export two new settings for the AM335x PWM, the clock prescaler (clkdiv)
and the actual PWM frequency.

Enforce the maximum value for the period sysctl.

The frequency systcl now allows the direct setting of the PWM frequency (it
will try to find the better clkdiv and period for a given frequency, i.e.
the ones that will give the better PWM resolution).

This allows the use lower frequencies on the PWM.  Without changing the
clock prescaler the minimum PWM frequency was 1.52kHz.

PWM frequencies checked with an osciloscope.

PWM output tested with some R/C servos at 50Hz.
2014-06-01 03:57:57 +00:00
Luiz Otavio O Souza
f74e8e4039 Adds the bsnmp module to export the temperature data from lm75 sensors on
the system.

Together with lm75(4) this module allows easy temperature monitoring over
SNMP, specially for embedded systems.

Manual page reviewed by:        brueffer (D128)
2014-06-01 03:14:03 +00:00
Neel Natu
26cdcdbebb Use MIN(a,b) from <sys/param.h> instead of rolling our own version.
Pointed out by:	grehan
2014-06-01 02:47:09 +00:00
Neel Natu
0be3798af5 Limit the maximum number of back-to-back iterations of a "rep; ins/outs"
to 16. This is arbitrary and is used to ensure that a vcpu goes back into
the vm_run() loop to process interrupts or rendezvous events in a timely
fashion.

Found with:	Coverity Scan
CID:		1216436
2014-06-01 02:13:07 +00:00
Neel Natu
95ebc360ef Activate vcpus from bhyve(8) using the ioctl VM_ACTIVATE_CPU instead of doing
it implicitly in vmm.ko.

Add ioctl VM_GET_CPUS to get the current set of 'active' and 'suspended' cpus
and display them via /usr/sbin/bhyvectl using the "--get-active-cpus" and
"--get-suspended-cpus" options.

This is in preparation for being able to reset virtual machine state without
having to destroy and recreate it.
2014-05-31 23:37:34 +00:00
Jilles Tjoelker
2ceda70233 sh: Simplify find_command() slightly. 2014-05-31 22:25:45 +00:00
Christian Brueffer
6e898985fc Grammar cleanup; sort SEE ALSO.
MFC after:	1 week
2014-05-31 21:12:14 +00:00
John-Mark Gurney
646fc9ccad convert to using the _daddr_t types like newfs was...
Put the superblock in the correct possition for UFS2... There is a bug
in FFS that if we don't put it here (for UFS2), it will forcefully
relocate the superblock, and I believe cause data loss..

I have a fix for that, but w/ how many releases are broken, we won't be
able to switch to the better _FLOPPY (block 0) for this for a while..
2014-05-31 20:26:34 +00:00
Dmitry Chagin
5f56da1891 To allow to run the interpreter itself add a new ELF branding type.
Allow Linux ABI to run ELF interpreter.

MFC after:	3 days
2014-05-31 15:01:51 +00:00
Dmitry Chagin
fb6bf8bba9 Glibc was switched to the FUTEX_WAIT_BITSET op and CLOCK_REALTIME
flag has been added instead of FUTEX_WAIT to replace the FUTEX_WAIT
logic which needs to do gettimeofday() calls before the futex syscall
to convert the absolute timeout to a relative timeout.
Before this the CLOCK_MONOTONIC used by the FUTEX_WAIT_BITSET op.

When the FUTEX_CLOCK_REALTIME is specified the timeout is an absolute
time, not a relative time. Rework futex_wait to handle this.
On the side fix the futex leak in error case and remove useless
parentheses.

Properly calculate the timeout for the CLOCK_MONOTONIC case.

MFC after:	3 days
2014-05-31 14:58:53 +00:00
Luiz Otavio O Souza
34aa2211e7 Ignore IIC_ENOADDR from iicbus_reset() as it only means we have a
master-only controller.

This fixes the iic bus scan with i2c(8) (on supported controllers).

Tested with gpioiic(4).
2014-05-31 14:38:05 +00:00
Luiz Otavio O Souza
e72f32cd0f Add a bounds verification to the SCL and SDA pin values.
At attach, print the SCL and SDA pin numbers.

Remove a stray blank line.

Remove the GPIOBUS locking from gpioiic_reset(), it is already called with
this lock held.  This fixes a crash when you try to scan the iicbus with
i2c(8).
2014-05-31 14:27:50 +00:00
Ganbold Tsagaankhuu
75dc1c319b Add #NO_UNIVERSE to RADXA and RADXA-LITE kernel configs
since there aren't any new devices in those files so unhook them
from universe build.

Approved by:    stas (mentor)
2014-05-31 06:17:34 +00:00