31166 Commits

Author SHA1 Message Date
Roger Pau Monné
4ea0b4ad1a xen/resume: only send BITMAP IPIs if CPUs > 1
This is quite harmless on HEAD, but it's worse on stable/10 where
lapic_ipi_vectored is the local APIC native IPI implementation. On
stable/10 cpu_ops.ipi_vectored should be used instead.

MFC after:	5 days
Sponsored by:	Citrix Systems R&D
2016-05-11 10:10:25 +00:00
Edward Tomasz Napierala
220adb0416 Make sdhci(4) work after suspend/resume for chipsets that require
the frequency quirk. This makes it work on eg ThinkPad T420.

Without it, after resume one can see this:

mmc0: ACMD42 failed, RESULT: 4
mmcsd0: Error indicated: 1 Timeout
mmcsd0: Error indicated: 2 Bad CRC
mmcsd0: Error indicated: 2 Bad CRC
mmcsd0: Error indicated: 2 Bad CRC
mmcsd0: Error indicated: 2 Bad CRC
sdhci_pci0-slot0: Got data interrupt 0x00200000, but there is no active command.
sdhci_pci0-slot0: ============== REGISTER DUMP ==============
sdhci_pci0-slot0: Sys addr: 0x06317200 | Version: 0x00000502
sdhci_pci0-slot0: Blk size: 0x00000200 | Blk cnt: 0x00000010
sdhci_pci0-slot0: Argument: 0x00000200 | Trn mode: 0x00000037
sdhci_pci0-slot0: Present: 0x01ff0000 | Host ctl: 0x00000007
sdhci_pci0-slot0: Power: 0x0000000f | Blk gap: 0x00000000
sdhci_pci0-slot0: Wake-up: 0x00000000 | Clock: 0x00000007
sdhci_pci0-slot0: Timeout: 0x0000000d | Int stat: 0x00000000
sdhci_pci0-slot0: Int enab: 0x01ff00fb | Sig enab: 0x01ff00fb
sdhci_pci0-slot0: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci_pci0-slot0: Caps: 0x21e8c8b2 | Max curr: 0x00000040
sdhci_pci0-slot0: ===========================================
sdhci_pci0-slot0: Got data interrupt 0x00200000, but there is no active command.
sdhci_pci0-slot0: ============== REGISTER DUMP ==============
sdhci_pci0-slot0: Sys addr: 0x06317200 | Version: 0x00000502
sdhci_pci0-slot0: Blk size: 0x00000200 | Blk cnt: 0x00000001
sdhci_pci0-slot0: Argument: 0x00000040 | Trn mode: 0x00000013
sdhci_pci0-slot0: Present: 0x01ff0000 | Host ctl: 0x00000007
sdhci_pci0-slot0: Power: 0x0000000f | Blk gap: 0x00000000
sdhci_pci0-slot0: Wake-up: 0x00000000 | Clock: 0x00000007
sdhci_pci0-slot0: Timeout: 0x0000000d | Int stat: 0x00000000
autofs_flush: /net flushed
sdhci_pci0-slot0: Int enab: 0x01ff00fb | Sig enab: 0x01ff00fb
autofs_flush: /media flushed
sdhci_pci0-slot0: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci_pci0-slot0: Caps: 0x21e8c8b2 | Max curr: 0x00000040
sdhci_pci0-slot0: ===========================================

Afterwards all operations on /dev/mmcsd0 fail with EIO.

Reviewed by:	jhb@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D6265
2016-05-11 07:50:35 +00:00
Andrew Rybchenko
8b94864213 sfxge(4): update unicast filter insertion algorithm
As unicast filters are not chained, we should always try to insert the
specific filter for our MAC address, and then try to insert the unicast
mis-match filter if that fails or all unicast has been requested.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6295
2016-05-11 06:29:07 +00:00
Andrew Rybchenko
47cb5106d2 sfxge(4): fix efx_filter_reconfigure parameter type
This caused signed/unsigned errors in some subsequent patches.
The only value passed to this is a uint32_t.

Submitted by:   Mark Spender <mspender at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6294
2016-05-11 06:28:08 +00:00
Adrian Chadd
e426860f64 [siba] add r4 and r8 sprom formats for core_pwr_info.
The upcoming bwn(4) N-PHY support requires this (among other things that
are (hopefully) upcoming.)

Obtained from:	Linux ssb (definitions)
2016-05-11 06:27:46 +00:00
Andrew Rybchenko
b7875d2cdd sfxge(4): make efx_sram_test Siena-only
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6293
2016-05-11 06:21:07 +00:00
Andrew Rybchenko
f634dfda66 sfxge(4): add new Emerald board sensors to common code
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6292
2016-05-11 06:19:53 +00:00
Andrew Rybchenko
95812f27e1 sfxge(4): simplify efx_mac_select
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6291
2016-05-11 06:19:05 +00:00
Andrew Rybchenko
0de035aa72 sfxge(4): remove Falcon specific EV_GLOBAL support
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6290
2016-05-11 06:18:15 +00:00
Andrew Rybchenko
a4983a11aa sfxge(4): remove Falcon-specific code paths from common code
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6289
2016-05-11 06:16:53 +00:00
Andrew Rybchenko
f49cb708cd sfxge(4): add TLV format buffer manipulation functions for V3 licensing
The licensing partition for V3 licensing will use the standard TLV format,
so Medford licensing operations on the staging buffer are implemented using
the TLV functions.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6288
2016-05-11 06:15:07 +00:00
Sepherosa Ziehau
11a55b7340 hyperv/hn: Extract RSS hash value and type.
MFC after:	1 week
Sponsored by:	Microsoft OSTC
Differential Revision:	https://reviews.freebsd.org/D6287
2016-05-11 03:31:25 +00:00
Justin Hibbits
b03f6e30cc Don't mark the initial portal registers as fully mapped.
BMan and QMan will do this at attach time.  Even though the registers are mapped
now, dpaa_portal_map_registers() will be called at BMan and QMan attach time,
updating the mappings to be private, and in the case of cache-enabled registers,
marked as coherent memory mappings.
2016-05-11 00:41:40 +00:00
Oleksandr Tymoshenko
e2a1919df0 Use DEVMETHOD_END instead of its value to indicate end of methods table 2016-05-11 00:34:43 +00:00
Oleksandr Tymoshenko
26c36284a9 Use GPIO pin management API in gpiobacklight
- Get rid of hack with re-parenting gpio-leds node to gpiobus
- Use gpio_pin_set_active to enable/disable backlight, it automatically
    takes care of active-low pins
2016-05-11 00:26:52 +00:00
Oleksandr Tymoshenko
51702162cc Pass device tree node as a part of gpio_pin_get_by_ofw_XXX API
Current API assumes that "gpios" property belongs to the device's node but for
some binding it's not true: gpiokeys has set of child nodes with this property.

Patch adds new argument instead of replacing device_t because device_t will be
used to track ownership for allocated pins

Reviewed by:	mmel
Differential Revision:	https://reviews.freebsd.org/D6277
2016-05-10 20:02:03 +00:00
Hans Petter Selasky
6a55ff4866 Ensure waiting loops terminate during cold boot. This fixes boot with
MacBookPro and i915kms_load="YES" in /boot/loader.conf.

A lowlevel timeout in one of the display ports caused an infinite wait
because a ticks/jiffies comparison was constant. The clock subsystem
which makes ticks/jiffies increment is started after the initial
driver probing is done. Refer to sys/kernel.h and SI_SUB_DRIVERS vs
SI_SUB_CLOCKS .

Discussed with:	kmacy @
2016-05-10 18:18:29 +00:00
Pedro F. Giffuni
594c945a54 aic7xxx: minor spelling fixes.
Affects mostly comments but also a visible text string,

Differential Revision:	https://reviews.freebsd.org/D6270
2016-05-10 16:40:19 +00:00
Hans Petter Selasky
ae14b49908 Fix kernel LINT build after r299363.
Define shadowing macros the same way to avoid macro redefinition
compile error(s) for now.

Approved by:	np @
2016-05-10 16:31:18 +00:00
Edward Tomasz Napierala
13a8942827 Remove NULL checks after M_WAITOK allocations from mpr(4).
Reviewed by:	asomers@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D6297
2016-05-10 15:04:24 +00:00
Edward Tomasz Napierala
6db37b5649 Remove NULL checks after M_WAITOK allocations from mps(4).
Reviewed by:	asomers@
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D6296
2016-05-10 14:57:14 +00:00
Edward Tomasz Napierala
084d207584 Remove misc NULL checks after M_WAITOK allocations.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2016-05-10 10:26:07 +00:00
Edward Tomasz Napierala
b00039f739 Remove NULL check after M_WAITOK allocations from mfi(4).
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2016-05-10 10:24:35 +00:00
Edward Tomasz Napierala
256a4cb9d7 Remove NULL checks after M_WAITOK allocations from firewire.
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
2016-05-10 10:21:03 +00:00
Andrew Rybchenko
a07bcda4ea sfxge(4): cleanup: fix typo
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 08:00:40 +00:00
Andrew Rybchenko
dcb49ebade sfxge(4): cleanup: remove unneeded include files
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:59:23 +00:00
Andrew Rybchenko
04bd9a165a sfxge(4): cleanup: remove unused efx_infer_family()
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:42:18 +00:00
Andrew Rybchenko
908ecfc65d sfxge(4): cleanup: remove obsolete common code module
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:40:03 +00:00
Andrew Rybchenko
7bfe1d8677 sfxge(4): cleanup: fix typos
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:38:23 +00:00
Andrew Rybchenko
69a8775247 sfxge(4): cleanup efx_check.h comments and error messages
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:22:19 +00:00
Andrew Rybchenko
b18622c3b3 sfxge(4): remove EFSYS_OPT_PHY_TXC43128
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:21:14 +00:00
Andrew Rybchenko
ffb5b3947f sfxge(4): remove EFSYS_OPT_PHY_SFX7101
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:20:18 +00:00
Andrew Rybchenko
7d276678b9 sfxge(4): remove EFSYS_OPT_PHY_SFT9001
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:19:15 +00:00
Andrew Rybchenko
784995f8f3 sfxge(4): remove EFSYS_OPT_PHY_QT2025C
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:18:18 +00:00
Andrew Rybchenko
0c2328b0ad sfxge(4): remove EFSYS_OPT_PHY_QT2022C2
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:17:08 +00:00
Andrew Rybchenko
45a31c66ed sfxge(4): remove EFSYS_OPT_PHY_NULL
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:15:57 +00:00
Andrew Rybchenko
eaec7581ab sfxge(4): remove EFSYS_OPT_NVRAM_SFX7101
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:15:09 +00:00
Andrew Rybchenko
d9b66edc7e sfxge(4): remove EFSYS_OPT_NVRAM_SFT9001
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:13:45 +00:00
Andrew Rybchenko
6e85f167f6 sfxge(4): remove EFSYS_OPT_FALCON_BOOTROM
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:12:27 +00:00
Andrew Rybchenko
1c7fb9c767 sfxge(4): remove EFSYS_OPT_MON_NULL
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:11:09 +00:00
Andrew Rybchenko
3f20cf969d sfxge(4): remove EFSYS_OPT_MON_MAX6647
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:09:18 +00:00
Andrew Rybchenko
4060d2b031 sfxge(4): remove EFSYS_OPT_MON_LM87
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:08:40 +00:00
Andrew Rybchenko
16f997ae55 sfxge(4): remove EFSYS_OPT_MAC_FALCON_XMAC
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:07:49 +00:00
Andrew Rybchenko
56dae5be28 sfxge(4): remove EFSYS_OPT_MAC_FALCON_GMAC
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:06:44 +00:00
Andrew Rybchenko
53e1d37767 sfxge(4): remove EFSYS_OPT_FALCON_NIC_CFG_OVERRIDE
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:02:59 +00:00
Andrew Rybchenko
e75412c9cb sfxge(4): remove EFSYS_OPT_FALCON
Submitted by:   Andy Moreton <amoreton at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
2016-05-10 07:01:06 +00:00
Andrew Rybchenko
0d38c77d19 sfxge(4): add TLV item manipulation functions to common code
Add creation, deletion and checksumming operations to the private copy of
TLV functions in the common code.  Functions added in preparation for V3
licensing support, as licensing keys are stored in the TLV format.  Missing
support for multiple segment partitions added. Annotations for Windows code
analysis also updated.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6264
2016-05-10 06:53:38 +00:00
Andrew Rybchenko
5abce2b919 sfxge(4): restructure TLV buffer validation
Move TLV buffer validation into ef10-specific function and add accessor
function which also converts the partition ID to the internal
representation.

Submitted by:   Richard Houldsworth <rhouldsworth at solarflare.com>
Sponsored by:   Solarflare Communications, Inc.
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D6263
2016-05-10 06:51:20 +00:00
Adrian Chadd
45d8d7918e [siba] migrate siba.c to siba_mips.c
Turns out that ye olde siba.c is /just/ the siba mips code (used by
the initial SENTRY5 port.  However, I don't think it was ever
finished enough to be useful, and I do have this nagging feeling
that we'll eventually replace it with the bhnd code.

But, since bhnd(4) introduced siba.c too, we ended up with a
source file name clash, and that broke the SENTRY5 build.

It /looks/ like this is the only place siba.c / device siba is
used.
2016-05-10 05:05:23 +00:00
Adrian Chadd
05992f9e2c [bhnd] fix bcma resource allocation for regions; EROM work around.
* bcma.c - assign different resource IDs for different regions
* bcma_erom.c - workaround for BCM/MIPS bus enumerations

Tested:

* (submitter) Tested on ASUS RT-N16 initially, double checked on ASUS RT-N53
* (landonf) BCM4331

Submitted by:	Michael Zhilin <mizkha@gmail.com>
Differential Revision:	https://reviews.freebsd.org/D6245
2016-05-10 04:55:57 +00:00