* Re: [PATCH 2/2] net: ipv6: ndisc: Fix warning when CONFIG_SYSCTL=n
From: David Miller @ 2013-11-18 19:49 UTC (permalink / raw)
To: festevam; +Cc: netdev, fabio.estevam
In-Reply-To: <1384570328-21666-2-git-send-email-festevam@gmail.com>
From: Fabio Estevam <festevam@gmail.com>
Date: Sat, 16 Nov 2013 00:52:08 -0200
> From: Fabio Estevam <fabio.estevam@freescale.com>
>
> When CONFIG_SYSCTL=n the following build warning happens:
>
> net/ipv6/ndisc.c:1730:1: warning: label 'out' defined but not used [-Wunused-label]
>
> The 'out' label is only used when CONFIG_SYSCTL=y, so move it inside the
> 'ifdef CONFIG_SYSCTL' block.
>
> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Applied.
^ permalink raw reply
* Re: [PATCH net-next 02/13] driver: net: remove unnecessary skb NULL check before calling dev_kfree_skb_irq
From: Johannes Berg @ 2013-11-18 19:37 UTC (permalink / raw)
To: Govindarajulu Varadarajan
Cc: David Miller, gregkh, linux-usb, linux-kernel, schwidefsky,
linville, linux-wireless, netdev, IvDoorn, sbhatewara, samuel,
chas, roland, isdn, jcliburn, Christian Benvenuti (benve),
Sujith Sankar (ssujith), jeffrey.t.kirsher, jesse.brandeburg,
shahed.shaikh, joe, apw
In-Reply-To: <alpine.LNX.2.03.1311190055150.10646@gmail.com>
Please don't top-post. You're making a lot of obvious mistakes, to the
likely effect that soon enough people won't even read your email.
> Did you have a chance to look at this? Let me know how you want me to
> fix this.
By not "fixing" anything?
> >> Is is quite unlikely thats skb is NULL. So it comes down to one extra
> >> if-branching statement or one extra assignment. I would prefer extra
> >> assignment to branching statement. In my opinion extra assignment is
> >> very little price we pay.
> >>
> >> //govind
> >
> > Another way to solve the double NULL check is to define a new function
> > something like this
> >
> > dev_kfree_skb_NULL(struct sk_buff **skb)
> > {
> > if(*skb) {
> > free_skb(*skb);
> > *skb=NULL;
> > }
> > }
> >
> > and use this if you want to free a skb and make it NULL.
> > Is this approach better?
That's just ugly imho. Why do you want to "clean up" something that
doesn't need changing?
Anyway, just saying.
johannes
^ permalink raw reply
* Re: Fw: [Bug 65131] New: kernel panic (BUG_ON raised) in SCTP function sctp_cmd_interpreter
From: Vlad Yasevich @ 2013-11-18 19:35 UTC (permalink / raw)
To: Stephen Hemminger, netdev
In-Reply-To: <528A5282.7090505@gmail.com>
On 11/18/2013 12:46 PM, Vlad Yasevich wrote:
> On 11/18/2013 12:14 PM, Stephen Hemminger wrote:
>>
>>
>> Begin forwarded message:
>>
>> Date: Sun, 17 Nov 2013 19:38:56 -0800
>> From: "bugzilla-daemon@bugzilla.kernel.org" <bugzilla-daemon@bugzilla.kernel.org>
>> To: "stephen@networkplumber.org" <stephen@networkplumber.org>
>> Subject: [Bug 65131] New: kernel panic (BUG_ON raised) in SCTP function sctp_cmd_interpreter
>>
>>
>> https://bugzilla.kernel.org/show_bug.cgi?id=65131
>>
>> Bug ID: 65131
>> Summary: kernel panic (BUG_ON raised) in SCTP function
>> sctp_cmd_interpreter
>> Product: Networking
>> Version: 2.5
>> Kernel Version: 3.11.8 custom build, repeated on 3.11.2
>> Hardware: All
>> OS: Linux
>> Tree: Mainline
>> Status: NEW
>> Severity: blocking
>> Priority: P1
>> Component: IPV4
>> Assignee: shemminger@linux-foundation.org
>> Reporter: yuras@uch.net
>> Regression: No
>>
>> Created attachment 114991
>> --> https://bugzilla.kernel.org/attachment.cgi?id=114991&action=edit
>> Screenshot of panic
>>
>> Two-node cluster configured using latest corosync (also DRBD 8.4.4, LVM2, and
>> GFS2 but this is unessential).
>> Steps to reproduce:
>> 1. Start corosync on both nodes.
>> 2. Start dlm_controld (version 4.0.2) on both nodes (used SCTP protocol as TCP
>> cannot be used on multi-homed hosts). Adds such lines to kern.log:
>> kernel: [ 580.428664] sctp: Hash tables configured (established 65536 bind
>> 65536)
>> kernel: [ 580.441779] DLM installed
>> 3. Start clvmd on either node. Adds such lines to kern.log:
>> kernel: [ 1345.259502] dlm: Using SCTP for communications
>> kernel: [ 1345.260699] dlm: clvmd: joining the lockspace group...
>> kernel: [ 1345.262962] dlm: clvmd: dlm_recover 1
>> kernel: [ 1345.262968] dlm: clvmd: group event done 0 0
>> kernel: [ 1345.262992] dlm: clvmd: add member 1024
>> kernel: [ 1345.262995] dlm: clvmd: dlm_recover_members 1 nodes
>> kernel: [ 1345.262996] dlm: clvmd: join complete
>> kernel: [ 1345.262998] dlm: clvmd: generation 1 slots 1 1:1024
>> kernel: [ 1345.262999] dlm: clvmd: dlm_recover_directory
>> kernel: [ 1345.263000] dlm: clvmd: dlm_recover_directory 0 in 0 new
>> kernel: [ 1345.263002] dlm: clvmd: dlm_recover_directory 0 out 0 messages
>> kernel: [ 1345.263019] dlm: clvmd: dlm_recover 1 generation 1 done: 0 ms
>> 4. Start clvmd on second node. With high probability one node or both nodes
>> panic in the similar way. Screenshot in attachment.
>>
>> Stack trace can differ slightly above EOI line, but RIP was always the same. I
>> suppose provided CPU codes correspond to one of BUG_ON macro inside
>> sctp_cmd_interpreter. So, this is a bug.
>>
>> Now this bug totally prevents me from using my cluster as DLM rejects to use
>> TCP for multi-homed hosts.
>>
>
> Should be fixed by:
> commit 7926c1d5be0b7cbe5b8d5c788d7d39237e7b212c
> Author: Daniel Borkmann <dborkman@redhat.com>
> Date: Thu Oct 31 09:13:32 2013 +0100
>
> net: sctp: do not trigger BUG_ON in sctp_cmd_delete_tcb
>
> -vlad
>
Just received confirmation that the above patch has been queued for 3.11.
-vlad
^ permalink raw reply
* Re: [PATCH net-next 02/13] driver: net: remove unnecessary skb NULL check before calling dev_kfree_skb_irq
From: Govindarajulu Varadarajan @ 2013-11-18 19:26 UTC (permalink / raw)
To: David Miller
Cc: Govindarajulu Varadarajan, gregkh, linux-usb, linux-kernel,
schwidefsky, linville, linux-wireless, netdev, IvDoorn,
sbhatewara, samuel, chas, roland, isdn, jcliburn,
Christian Benvenuti (benve), Sujith Sankar (ssujith),
jeffrey.t.kirsher, jesse.brandeburg, shahed.shaikh, joe, apw
In-Reply-To: <alpine.LNX.2.03.1311111537020.2363@cisco.com>
Hi Dave
Did you have a chance to look at this? Let me know how you want me to
fix this.
//govind
On Mon, 11 Nov 2013, Govindarajulu Varadarajan wrote:
>
>
> On Mon, 4 Nov 2013, David Miller wrote:
>
>> From: Govindarajulu Varadarajan <govindarajulu90@gmail.com>
>> Date: Sat, 2 Nov 2013 19:17:43 +0530
>>
>>> @@ -1030,10 +1030,8 @@ static void ni65_xmit_intr(struct net_device
>>> *dev,int csr0)
>>> }
>>>
>>> #ifdef XMT_VIA_SKB
>>> - if(p->tmd_skb[p->tmdlast]) {
>>> - dev_kfree_skb_irq(p->tmd_skb[p->tmdlast]);
>>> - p->tmd_skb[p->tmdlast] = NULL;
>>> - }
>>> + dev_kfree_skb_irq(p->tmd_skb[p->tmdlast]);
>>> + p->tmd_skb[p->tmdlast] = NULL;
>>> #endif
>>
>> I absolutely disagree with this kind of change.
>>
>> There is a non-trivial cost for NULL'ing out that array entry
>> unconditionally. It's a dirtied cache line and this is in the
>> fast path of TX SKB reclaim of this driver.
>>
>> You've made several changes of this kind.
>>
>> And it sort-of shows that the places that do check for NULL,
>> are getting something in return for that test, namely avoidance
>> of an unnecessary cpu store in the fast path of the driver.
>>
>
> True, in case of dev_kfree_skb_irq. If you look at patch 06-12, at many
> places we do
>
> if (s->skb) {
> dev_kfree_skb_any(s->skb);
> s->skb = NULL)
> }
>
> This is in fast path. If the code is not running in hardirq,
> dev_kfree_skb_any calls dev_kfree_skb. Which again check if skb is NULL.
> So we are checking if skb is null twice. That is what this patch is
> trying to fix. (sorry I should have mentioned this in cover letter).
>
> I am not sure if you have read my previous mail. I am pasting it below.
>
>>> On Sun, 3 Nov 2013, Brandeburg, Jesse wrote: Thanks for this work, I'm a
>>> little concerned that there is a
>>> non-trivial overhead to this patch.
>>>
>>> when doing (for example in the Intel drivers): if (s->skb) {
>>> dev_kfree_skb(s->skb);
>>> s->skb = NULL; }
>>>
>>
>> In current code, dev_kfree_skb is NULL safe. Which means skb is
>> checked for NULL inside dev_kfree_skb. dev_kfree_skb_any is also NULL safe
>> when the code is running in non-hardirq.
>>
>> Lets consider two cases
>>
>> 1. skb is not NULL:
>> * Without my patch:
>> In the code above, we check for skb!=NULL twice. (once
>> before calling dev_kfree_skb, once by dev_kfree_skb). And
>> then we do assignment.
>> * With this patch:
>> we check for skb!=NULL once, And then we do assignment.
>>
>> To fix the twice NULL check, we either have to remove the check
>> which is inside dev_kfree_skb (1). Or do whats done in this
>> patch.
>>
>> (1) is not an option because a lot of kernel code already
>> assumes that dev_kfree_skb is NULL safe.
>>
>> 2. skb is NULL:
>> * Without this patch:
>> One if statement is executed.
>> * With this patch:
>> One if statement and one assignment is executed.
>>
>> From my observation most of the dev_kfree_skb calls are from
>> e1000_unmap_and_free_tx_resource, e1000_put_txbuf,
>> atl1_clean_tx_ring, alx_free_txbuf etc. in clean up functions.
>>
>> Is is quite unlikely thats skb is NULL. So it comes down to one extra
>> if-branching statement or one extra assignment. I would prefer extra
>> assignment to branching statement. In my opinion extra assignment is
>> very little price we pay.
>>
>> //govind
>
> Another way to solve the double NULL check is to define a new function
> something like this
>
> dev_kfree_skb_NULL(struct sk_buff **skb)
> {
> if(*skb) {
> free_skb(*skb);
> *skb=NULL;
> }
> }
>
> and use this if you want to free a skb and make it NULL.
> Is this approach better?
>
> //govind
>
>
^ permalink raw reply
* [PATCH 3/3] rtlwifi: rtl8192cu: Update table.c
From: Larry Finger @ 2013-11-18 19:06 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, Mark Cave-Ayland, netdev, Larry Finger
In-Reply-To: <1384801617-22920-1-git-send-email-Larry.Finger@lwfinger.net>
From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
The latest vendor driver has some new values.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
---
drivers/net/wireless/rtlwifi/rtl8192cu/table.c | 40 +++++++++++++-------------
1 file changed, 20 insertions(+), 20 deletions(-)
diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/table.c b/drivers/net/wireless/rtlwifi/rtl8192cu/table.c
index 966be51..7903c15 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192cu/table.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192cu/table.c
@@ -36,7 +36,7 @@ u32 RTL8192CUPHY_REG_2TARRAY[RTL8192CUPHY_REG_2TARRAY_LENGTH] = {
0x804, 0x00000003,
0x808, 0x0000fc00,
0x80c, 0x0000000a,
- 0x810, 0x10005388,
+ 0x810, 0x10000330,
0x814, 0x020c3d10,
0x818, 0x02200385,
0x81c, 0x00000000,
@@ -110,22 +110,22 @@ u32 RTL8192CUPHY_REG_2TARRAY[RTL8192CUPHY_REG_2TARRAY_LENGTH] = {
0xc44, 0x000100b7,
0xc48, 0xec020107,
0xc4c, 0x007f037f,
- 0xc50, 0x6954341e,
+ 0xc50, 0x69543420,
0xc54, 0x43bc0094,
- 0xc58, 0x6954341e,
+ 0xc58, 0x69543420,
0xc5c, 0x433c0094,
0xc60, 0x00000000,
0xc64, 0x5116848b,
0xc68, 0x47c00bff,
0xc6c, 0x00000036,
0xc70, 0x2c7f000d,
- 0xc74, 0x0186115b,
+ 0xc74, 0x2186115b,
0xc78, 0x0000001f,
0xc7c, 0x00b99612,
0xc80, 0x40000100,
0xc84, 0x20f60000,
0xc88, 0x40000100,
- 0xc8c, 0x20200000,
+ 0xc8c, 0xa0e40000,
0xc90, 0x00121820,
0xc94, 0x00000000,
0xc98, 0x00121820,
@@ -226,7 +226,7 @@ u32 RTL8192CUPHY_REG_1TARRAY[RTL8192CUPHY_REG_1TARRAY_LENGTH] = {
0x804, 0x00000001,
0x808, 0x0000fc00,
0x80c, 0x0000000a,
- 0x810, 0x10005388,
+ 0x810, 0x10000330,
0x814, 0x020c3d10,
0x818, 0x02200385,
0x81c, 0x00000000,
@@ -300,9 +300,9 @@ u32 RTL8192CUPHY_REG_1TARRAY[RTL8192CUPHY_REG_1TARRAY_LENGTH] = {
0xc44, 0x000100b7,
0xc48, 0xec020107,
0xc4c, 0x007f037f,
- 0xc50, 0x6954341e,
+ 0xc50, 0x69543420,
0xc54, 0x43bc0094,
- 0xc58, 0x6954341e,
+ 0xc58, 0x69543420,
0xc5c, 0x433c0094,
0xc60, 0x00000000,
0xc64, 0x5116848b,
@@ -340,7 +340,7 @@ u32 RTL8192CUPHY_REG_1TARRAY[RTL8192CUPHY_REG_1TARRAY_LENGTH] = {
0xce4, 0x00000000,
0xce8, 0x37644302,
0xcec, 0x2f97d40c,
- 0xd00, 0x00080740,
+ 0xd00, 0x00000740,
0xd04, 0x00020401,
0xd08, 0x0000907f,
0xd0c, 0x20010201,
@@ -633,17 +633,17 @@ u32 RTL8192CURADIOA_2TARRAY[RTL8192CURADIOA_2TARRAYLENGTH] = {
0x012, 0x00071000,
0x012, 0x000b0000,
0x012, 0x000fc000,
- 0x013, 0x000287af,
+ 0x013, 0x000287b3,
0x013, 0x000244b7,
0x013, 0x000204ab,
0x013, 0x0001c49f,
0x013, 0x00018493,
- 0x013, 0x00014297,
- 0x013, 0x00010295,
- 0x013, 0x0000c298,
- 0x013, 0x0000819c,
- 0x013, 0x000040a8,
- 0x013, 0x0000001c,
+ 0x013, 0x0001429b,
+ 0x013, 0x00010299,
+ 0x013, 0x0000c29c,
+ 0x013, 0x000081a0,
+ 0x013, 0x000040ac,
+ 0x013, 0x00000020,
0x014, 0x0001944c,
0x014, 0x00059444,
0x014, 0x0009944c,
@@ -932,10 +932,10 @@ u32 RTL8192CUMAC_2T_ARRAY[RTL8192CUMAC_2T_ARRAYLENGTH] = {
0x608, 0x0000000e,
0x609, 0x0000002a,
0x652, 0x00000020,
- 0x63c, 0x0000000a,
- 0x63d, 0x0000000e,
- 0x63e, 0x0000000a,
- 0x63f, 0x0000000e,
+ 0x63c, 0x00000008,
+ 0x63d, 0x00000008,
+ 0x63e, 0x0000000c,
+ 0x63f, 0x0000000c,
0x66e, 0x00000005,
0x700, 0x00000021,
0x701, 0x00000043,
--
1.8.4
^ permalink raw reply related
* [PATCH 1/3] Bring _rtl92c_phy_iq_calibrate() in line with the vendor driver function _PHY_IQCalibrate().
From: Larry Finger @ 2013-11-18 19:06 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, Mark Cave-Ayland, netdev, Larry Finger
In-Reply-To: <1384801617-22920-1-git-send-email-Larry.Finger@lwfinger.net>
From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Also fix incorrect initialisation for rtl8192cu.
Signed-of-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
---
drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c | 39 ++++++++++++++++------
drivers/net/wireless/rtlwifi/rtl8192cu/hw.c | 2 +-
2 files changed, 29 insertions(+), 12 deletions(-)
diff --git a/drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c b/drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c
index 0c0e782..9e32ac8 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c
@@ -1147,6 +1147,12 @@ static void _rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw,
0x522, 0x550, 0x551, 0x040
};
+ u32 iqk_bb_reg_92C[9] = {
+ 0xc04, 0xc08, 0x874, 0xb68,
+ 0xb6c, 0x870, 0x860, 0x864,
+ 0x800
+ };
+
const u32 retrycount = 2;
if (t == 0) {
@@ -1157,6 +1163,8 @@ static void _rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw,
rtlphy->adda_backup, 16);
_rtl92c_phy_save_mac_registers(hw, iqk_mac_reg,
rtlphy->iqk_mac_backup);
+ _rtl92c_phy_save_adda_registers(hw, iqk_bb_reg_92C,
+ rtlphy->iqk_bb_backup, 9);
}
_rtl92c_phy_path_adda_on(hw, adda_reg, true, is2t);
if (t == 0) {
@@ -1167,14 +1175,18 @@ static void _rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw,
if (!rtlphy->rfpi_enable)
_rtl92c_phy_pi_mode_switch(hw, true);
- if (t == 0) {
- rtlphy->reg_c04 = rtl_get_bbreg(hw, 0xc04, MASKDWORD);
- rtlphy->reg_c08 = rtl_get_bbreg(hw, 0xc08, MASKDWORD);
- rtlphy->reg_874 = rtl_get_bbreg(hw, 0x874, MASKDWORD);
- }
+
+ rtl_set_bbreg(hw, 0x800, BIT(24), 0x0);
+
rtl_set_bbreg(hw, 0xc04, MASKDWORD, 0x03a05600);
rtl_set_bbreg(hw, 0xc08, MASKDWORD, 0x000800e4);
rtl_set_bbreg(hw, 0x874, MASKDWORD, 0x22204000);
+
+ rtl_set_bbreg(hw, 0x870, BIT(10), 0x1);
+ rtl_set_bbreg(hw, 0x870, BIT(26), 0x1);
+ rtl_set_bbreg(hw, 0x860, BIT(10), 0x0);
+ rtl_set_bbreg(hw, 0x864, BIT(10), 0x0);
+
if (is2t) {
rtl_set_bbreg(hw, 0x840, MASKDWORD, 0x00010000);
rtl_set_bbreg(hw, 0x844, MASKDWORD, 0x00010000);
@@ -1239,13 +1251,9 @@ static void _rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw,
0x3FF0000) >> 16;
}
}
- rtl_set_bbreg(hw, 0xc04, MASKDWORD, rtlphy->reg_c04);
- rtl_set_bbreg(hw, 0x874, MASKDWORD, rtlphy->reg_874);
- rtl_set_bbreg(hw, 0xc08, MASKDWORD, rtlphy->reg_c08);
+
rtl_set_bbreg(hw, 0xe28, MASKDWORD, 0);
- rtl_set_bbreg(hw, 0x840, MASKDWORD, 0x00032ed3);
- if (is2t)
- rtl_set_bbreg(hw, 0x844, MASKDWORD, 0x00032ed3);
+
if (t != 0) {
if (!rtlphy->rfpi_enable)
_rtl92c_phy_pi_mode_switch(hw, false);
@@ -1253,6 +1261,15 @@ static void _rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw,
rtlphy->adda_backup, 16);
_rtl92c_phy_reload_mac_registers(hw, iqk_mac_reg,
rtlphy->iqk_mac_backup);
+ _rtl92c_phy_reload_adda_registers(hw, iqk_bb_reg_92C,
+ rtlphy->iqk_bb_backup, 9);
+
+ rtl_set_bbreg(hw, 0x840, MASKDWORD, 0x00032ed3);
+ if (is2t)
+ rtl_set_bbreg(hw, 0x844, MASKDWORD, 0x00032ed3);
+
+ rtl_set_bbreg(hw, 0xe30, MASKDWORD, 0x01008c00);
+ rtl_set_bbreg(hw, 0xe34, MASKDWORD, 0x01008c00);
}
}
diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c b/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c
index 189ba12..468bf73 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c
@@ -1022,7 +1022,7 @@ int rtl92cu_hw_init(struct ieee80211_hw *hw)
if (ppsc->rfpwr_state == ERFON) {
rtl92c_phy_set_rfpath_switch(hw, 1);
if (iqk_initialized) {
- rtl92c_phy_iq_calibrate(hw, false);
+ rtl92c_phy_iq_calibrate(hw, true);
} else {
rtl92c_phy_iq_calibrate(hw, false);
iqk_initialized = true;
--
1.8.4
^ permalink raw reply related
* [PATCH 0/3] More fixes to Update rtl8192cu to latest vendor version
From: Larry Finger @ 2013-11-18 19:06 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, Larry Finger, netdev
These are some additional bits that are in the latest vendor driver.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Mark Cave-Ayland (3):
Bring _rtl92c_phy_iq_calibrate() in line with the vendor driver
function _PHY_IQCalibrate().
rtlwifi: rtl8192cu: Bring rtl92cu_phy_bb_config() up to date
rtlwifi: rtl8192cu: Update table.c
drivers/net/wireless/rtlwifi/rtl8192c/phy_common.c | 39 +++++++++++++++------
drivers/net/wireless/rtlwifi/rtl8192cu/hw.c | 2 +-
drivers/net/wireless/rtlwifi/rtl8192cu/phy.c | 6 +++-
drivers/net/wireless/rtlwifi/rtl8192cu/table.c | 40 +++++++++++-----------
4 files changed, 54 insertions(+), 33 deletions(-)
--
1.8.4
^ permalink raw reply
* [PATCH 2/3] rtlwifi: rtl8192cu: Bring rtl92cu_phy_bb_config() up to date
From: Larry Finger @ 2013-11-18 19:06 UTC (permalink / raw)
To: linville-2XuSBdqkA4R54TAoqtyWWQ
Cc: linux-wireless-u79uwXL29TY76Z2rM5mHXA, Mark Cave-Ayland,
netdev-u79uwXL29TY76Z2rM5mHXA, Larry Finger
In-Reply-To: <1384801617-22920-1-git-send-email-Larry.Finger-tQ5ms3gMjBLk1uMJSBkQmQ@public.gmane.org>
From: Mark Cave-Ayland <mark.cave-ayland-r2/yp8inhXLQXOPxS62xeg@public.gmane.org>
The latest vendor driver contains some changes not in the kernel version.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland-r2/yp8inhXLQXOPxS62xeg@public.gmane.org>
Signed-off-by: Larry Finger <Larry.Finger-tQ5ms3gMjBLk1uMJSBkQmQ@public.gmane.org>
---
drivers/net/wireless/rtlwifi/rtl8192cu/phy.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/rtlwifi/rtl8192cu/phy.c b/drivers/net/wireless/rtlwifi/rtl8192cu/phy.c
index 34e5630..0c09240 100644
--- a/drivers/net/wireless/rtlwifi/rtl8192cu/phy.c
+++ b/drivers/net/wireless/rtlwifi/rtl8192cu/phy.c
@@ -120,6 +120,7 @@ bool rtl92cu_phy_bb_config(struct ieee80211_hw *hw)
struct rtl_priv *rtlpriv = rtl_priv(hw);
struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));
u16 regval;
+ u32 regval32;
u8 b_reg_hwparafile = 1;
_rtl92c_phy_init_bb_rf_register_definition(hw);
@@ -135,8 +136,11 @@ bool rtl92cu_phy_bb_config(struct ieee80211_hw *hw)
} else if (IS_HARDWARE_TYPE_8192CU(rtlhal)) {
rtl_write_byte(rtlpriv, REG_SYS_FUNC_EN, FEN_USBA | FEN_USBD |
FEN_BB_GLB_RSTn | FEN_BBRSTB);
- rtl_write_byte(rtlpriv, REG_LDOHCI12_CTRL, 0x0f);
}
+ regval32 = rtl_read_dword(rtlpriv, 0x87c);
+ rtl_write_dword(rtlpriv, 0x87c, regval32 & (~BIT(31)));
+ if (IS_HARDWARE_TYPE_8192CU(rtlhal))
+ rtl_write_byte(rtlpriv, REG_LDOHCI12_CTRL, 0x0f);
rtl_write_byte(rtlpriv, REG_AFE_XTAL_CTRL + 1, 0x80);
if (b_reg_hwparafile == 1)
rtstatus = _rtl92c_phy_bb8192c_config_parafile(hw);
--
1.8.4
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related
* [PATCH v2 4/4] net/phy: Add the autocross feature for forced links on VSC82x4
From: Shruti Kanetkar @ 2013-11-18 19:05 UTC (permalink / raw)
To: davem, netdev; +Cc: Madalin Bucur, Shruti Kanetkar
In-Reply-To: <1384801516-19595-1-git-send-email-Shruti@Freescale.com>
From: Madalin Bucur <madalin.bucur@freescale.com>
Add auto-MDI/MDI-X capability for forced (autonegotiation disabled)
10/100 Mbps speeds on Vitesse VSC82x4 PHYs. Exported previously static
function genphy_setup_forced() required by the new config_aneg handler
in the Vitesse PHY module.
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Signed-off-by: Shruti Kanetkar <Shruti@freescale.com>
---
drivers/net/phy/phy_device.c | 4 +--
drivers/net/phy/vitesse.c | 75 +++++++++++++++++++++++++++++++++++++++++---
include/linux/phy.h | 1 +
3 files changed, 73 insertions(+), 7 deletions(-)
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
index 74630e9..d6447b3 100644
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
@@ -697,7 +697,7 @@ static int genphy_config_advert(struct phy_device *phydev)
* to the values in phydev. Assumes that the values are valid.
* Please see phy_sanitize_settings().
*/
-static int genphy_setup_forced(struct phy_device *phydev)
+int genphy_setup_forced(struct phy_device *phydev)
{
int err;
int ctl = 0;
@@ -716,7 +716,7 @@ static int genphy_setup_forced(struct phy_device *phydev)
return err;
}
-
+EXPORT_SYMBOL(genphy_setup_forced);
/**
* genphy_restart_aneg - Enable and Restart Autonegotiation
diff --git a/drivers/net/phy/vitesse.c b/drivers/net/phy/vitesse.c
index 40406bc..508e435 100644
--- a/drivers/net/phy/vitesse.c
+++ b/drivers/net/phy/vitesse.c
@@ -3,7 +3,7 @@
*
* Author: Kriston Carson
*
- * Copyright (c) 2005, 2009 Freescale Semiconductor, Inc.
+ * Copyright (c) 2005, 2009, 2011 Freescale Semiconductor, Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -18,6 +18,11 @@
#include <linux/ethtool.h>
#include <linux/phy.h>
+/* Vitesse Extended Page Magic Register(s) */
+#define MII_VSC82X4_EXT_PAGE_16E 0x10
+#define MII_VSC82X4_EXT_PAGE_17E 0x11
+#define MII_VSC82X4_EXT_PAGE_18E 0x12
+
/* Vitesse Extended Control Register 1 */
#define MII_VSC8244_EXT_CON1 0x17
#define MII_VSC8244_EXTCON1_INIT 0x0000
@@ -54,6 +59,9 @@
#define MII_VSC8221_AUXCONSTAT_INIT 0x0004 /* need to set this bit? */
#define MII_VSC8221_AUXCONSTAT_RESERVED 0x0004
+/* Vitesse Extended Page Access Register */
+#define MII_VSC82X4_EXT_PAGE_ACCESS 0x1f
+
#define PHY_ID_VSC8234 0x000fc620
#define PHY_ID_VSC8244 0x000fc6c0
#define PHY_ID_VSC8574 0x000704a0
@@ -154,6 +162,63 @@ static int vsc8221_config_init(struct phy_device *phydev)
*/
}
+/* vsc82x4_config_autocross_enable - Enable auto MDI/MDI-X for forced links
+ * @phydev: target phy_device struct
+ *
+ * Enable auto MDI/MDI-X when in 10/100 forced link speeds by writing
+ * special values in the VSC8234/VSC8244 extended reserved registers
+ */
+static int vsc82x4_config_autocross_enable(struct phy_device *phydev)
+{
+ int ret;
+
+ if (phydev->autoneg == AUTONEG_ENABLE || phydev->speed > SPEED_100)
+ return 0;
+
+ /* map extended registers set 0x10 - 0x1e */
+ ret = phy_write(phydev, MII_VSC82X4_EXT_PAGE_ACCESS, 0x52b5);
+ if (ret >= 0)
+ ret = phy_write(phydev, MII_VSC82X4_EXT_PAGE_18E, 0x0012);
+ if (ret >= 0)
+ ret = phy_write(phydev, MII_VSC82X4_EXT_PAGE_17E, 0x2803);
+ if (ret >= 0)
+ ret = phy_write(phydev, MII_VSC82X4_EXT_PAGE_16E, 0x87fa);
+ /* map standard registers set 0x10 - 0x1e */
+ if (ret >= 0)
+ ret = phy_write(phydev, MII_VSC82X4_EXT_PAGE_ACCESS, 0x0000);
+ else
+ phy_write(phydev, MII_VSC82X4_EXT_PAGE_ACCESS, 0x0000);
+
+ return ret;
+}
+
+/* vsc82x4_config_aneg - restart auto-negotiation or write BMCR
+ * @phydev: target phy_device struct
+ *
+ * Description: If auto-negotiation is enabled, we configure the
+ * advertising, and then restart auto-negotiation. If it is not
+ * enabled, then we write the BMCR and also start the auto
+ * MDI/MDI-X feature
+ */
+static int vsc82x4_config_aneg(struct phy_device *phydev)
+{
+ int ret;
+
+ /* Enable auto MDI/MDI-X when in 10/100 forced link speeds by
+ * writing special values in the VSC8234 extended reserved registers
+ */
+ if (phydev->autoneg != AUTONEG_ENABLE && phydev->speed <= SPEED_100) {
+ ret = genphy_setup_forced(phydev);
+
+ if (ret < 0) /* error */
+ return ret;
+
+ return vsc82x4_config_autocross_enable(phydev);
+ }
+
+ return genphy_config_aneg(phydev);
+}
+
/* Vitesse 82xx */
static struct phy_driver vsc82xx_driver[] = {
{
@@ -163,7 +228,7 @@ static struct phy_driver vsc82xx_driver[] = {
.features = PHY_GBIT_FEATURES,
.flags = PHY_HAS_INTERRUPT,
.config_init = &vsc824x_config_init,
- .config_aneg = &genphy_config_aneg,
+ .config_aneg = &vsc82x4_config_aneg,
.read_status = &genphy_read_status,
.ack_interrupt = &vsc824x_ack_interrupt,
.config_intr = &vsc82xx_config_intr,
@@ -175,7 +240,7 @@ static struct phy_driver vsc82xx_driver[] = {
.features = PHY_GBIT_FEATURES,
.flags = PHY_HAS_INTERRUPT,
.config_init = &vsc824x_config_init,
- .config_aneg = &genphy_config_aneg,
+ .config_aneg = &vsc82x4_config_aneg,
.read_status = &genphy_read_status,
.ack_interrupt = &vsc824x_ack_interrupt,
.config_intr = &vsc82xx_config_intr,
@@ -187,7 +252,7 @@ static struct phy_driver vsc82xx_driver[] = {
.features = PHY_GBIT_FEATURES,
.flags = PHY_HAS_INTERRUPT,
.config_init = &vsc824x_config_init,
- .config_aneg = &genphy_config_aneg,
+ .config_aneg = &vsc82x4_config_aneg,
.read_status = &genphy_read_status,
.ack_interrupt = &vsc824x_ack_interrupt,
.config_intr = &vsc82xx_config_intr,
@@ -199,7 +264,7 @@ static struct phy_driver vsc82xx_driver[] = {
.features = PHY_GBIT_FEATURES,
.flags = PHY_HAS_INTERRUPT,
.config_init = &vsc824x_config_init,
- .config_aneg = &genphy_config_aneg,
+ .config_aneg = &vsc82x4_config_aneg,
.read_status = &genphy_read_status,
.ack_interrupt = &vsc824x_ack_interrupt,
.config_intr = &vsc82xx_config_intr,
diff --git a/include/linux/phy.h b/include/linux/phy.h
index 64ab823..48a4dc3 100644
--- a/include/linux/phy.h
+++ b/include/linux/phy.h
@@ -559,6 +559,7 @@ static inline int phy_read_status(struct phy_device *phydev) {
return phydev->drv->read_status(phydev);
}
+int genphy_setup_forced(struct phy_device *phydev);
int genphy_restart_aneg(struct phy_device *phydev);
int genphy_config_aneg(struct phy_device *phydev);
int genphy_update_link(struct phy_device *phydev);
--
1.8.3.1
^ permalink raw reply related
* [PATCH v2 3/4] net/phy: Add VSC8662 support
From: Shruti Kanetkar @ 2013-11-18 19:05 UTC (permalink / raw)
To: davem, netdev; +Cc: Sandeep Singh, Sandeep Singh, Andy Fleming, Shruti Kanetkar
In-Reply-To: <1384801516-19595-1-git-send-email-Shruti@Freescale.com>
From: Sandeep Singh <sandeep@freescale.com>
Vitesse VSC8662 is Dual Port 10/100/1000Base-T Phy
Its register set and features are similar to other Vitesse Phys.
Signed-off-by: Sandeep Singh <Sandeep@freescale.com>
Signed-off-by: Andy Fleming <afleming@gmail.com>
Signed-off-by: Shruti Kanetkar <Shruti@Freescale.com>
---
drivers/net/phy/vitesse.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/drivers/net/phy/vitesse.c b/drivers/net/phy/vitesse.c
index 31b3148..40406bc 100644
--- a/drivers/net/phy/vitesse.c
+++ b/drivers/net/phy/vitesse.c
@@ -57,6 +57,7 @@
#define PHY_ID_VSC8234 0x000fc620
#define PHY_ID_VSC8244 0x000fc6c0
#define PHY_ID_VSC8574 0x000704a0
+#define PHY_ID_VSC8662 0x00070660
#define PHY_ID_VSC8221 0x000fc550
#define PHY_ID_VSC8211 0x000fc4b0
@@ -192,6 +193,18 @@ static struct phy_driver vsc82xx_driver[] = {
.config_intr = &vsc82xx_config_intr,
.driver = { .owner = THIS_MODULE,},
}, {
+ .phy_id = PHY_ID_VSC8662,
+ .name = "Vitesse VSC8662",
+ .phy_id_mask = 0x000ffff0,
+ .features = PHY_GBIT_FEATURES,
+ .flags = PHY_HAS_INTERRUPT,
+ .config_init = &vsc824x_config_init,
+ .config_aneg = &genphy_config_aneg,
+ .read_status = &genphy_read_status,
+ .ack_interrupt = &vsc824x_ack_interrupt,
+ .config_intr = &vsc82xx_config_intr,
+ .driver = { .owner = THIS_MODULE,},
+}, {
/* Vitesse 8221 */
.phy_id = PHY_ID_VSC8221,
.phy_id_mask = 0x000ffff0,
@@ -238,6 +251,7 @@ static struct mdio_device_id __maybe_unused vitesse_tbl[] = {
{ PHY_ID_VSC8234, 0x000ffff0 },
{ PHY_ID_VSC8244, 0x000fffc0 },
{ PHY_ID_VSC8574, 0x000ffff0 },
+ { PHY_ID_VSC8662, 0x000ffff0 },
{ PHY_ID_VSC8221, 0x000ffff0 },
{ PHY_ID_VSC8211, 0x000ffff0 },
{ }
--
1.8.3.1
^ permalink raw reply related
* [PATCH v2 2/4] net/phy: Add VSC8574 support
From: Shruti Kanetkar @ 2013-11-18 19:05 UTC (permalink / raw)
To: davem, netdev; +Cc: shaohui xie, Andy Fleming, Shruti Kanetkar
In-Reply-To: <1384801516-19595-1-git-send-email-Shruti@Freescale.com>
From: shaohui xie <Shaohui.Xie@freescale.com>
The VSC8574 is a quad-port Gigabit Ethernet transceiver with four SerDes
interfaces for quad-port dual media capability.
Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Andy Fleming <afleming@gmail.com>
Signed-off-by: Shruti Kanetkar <Shruti@freescale.com>
---
drivers/net/phy/vitesse.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/drivers/net/phy/vitesse.c b/drivers/net/phy/vitesse.c
index 59e3b58..31b3148 100644
--- a/drivers/net/phy/vitesse.c
+++ b/drivers/net/phy/vitesse.c
@@ -56,6 +56,7 @@
#define PHY_ID_VSC8234 0x000fc620
#define PHY_ID_VSC8244 0x000fc6c0
+#define PHY_ID_VSC8574 0x000704a0
#define PHY_ID_VSC8221 0x000fc550
#define PHY_ID_VSC8211 0x000fc4b0
@@ -120,7 +121,8 @@ static int vsc82xx_config_intr(struct phy_device *phydev)
if (phydev->interrupts == PHY_INTERRUPT_ENABLED)
err = phy_write(phydev, MII_VSC8244_IMASK,
(phydev->drv->phy_id == PHY_ID_VSC8234 ||
- phydev->drv->phy_id == PHY_ID_VSC8244) ?
+ phydev->drv->phy_id == PHY_ID_VSC8244 ||
+ phydev->drv->phy_id == PHY_ID_VSC8574) ?
MII_VSC8244_IMASK_MASK :
MII_VSC8221_IMASK_MASK);
else {
@@ -178,6 +180,18 @@ static struct phy_driver vsc82xx_driver[] = {
.config_intr = &vsc82xx_config_intr,
.driver = { .owner = THIS_MODULE,},
}, {
+ .phy_id = PHY_ID_VSC8574,
+ .name = "Vitesse VSC8574",
+ .phy_id_mask = 0x000ffff0,
+ .features = PHY_GBIT_FEATURES,
+ .flags = PHY_HAS_INTERRUPT,
+ .config_init = &vsc824x_config_init,
+ .config_aneg = &genphy_config_aneg,
+ .read_status = &genphy_read_status,
+ .ack_interrupt = &vsc824x_ack_interrupt,
+ .config_intr = &vsc82xx_config_intr,
+ .driver = { .owner = THIS_MODULE,},
+}, {
/* Vitesse 8221 */
.phy_id = PHY_ID_VSC8221,
.phy_id_mask = 0x000ffff0,
@@ -223,6 +237,7 @@ module_exit(vsc82xx_exit);
static struct mdio_device_id __maybe_unused vitesse_tbl[] = {
{ PHY_ID_VSC8234, 0x000ffff0 },
{ PHY_ID_VSC8244, 0x000fffc0 },
+ { PHY_ID_VSC8574, 0x000ffff0 },
{ PHY_ID_VSC8221, 0x000ffff0 },
{ PHY_ID_VSC8211, 0x000ffff0 },
{ }
--
1.8.3.1
^ permalink raw reply related
* [PATCH v2 1/4] net/phy: Add VSC8234 support
From: Shruti Kanetkar @ 2013-11-18 19:05 UTC (permalink / raw)
To: davem, netdev; +Cc: Andy Fleming, Kumar Gala, Shruti Kanetkar
From: Andy Fleming <afleming@gmail.com>
Vitesse VSC8234 is quad port 10/100/1000BASE-T PHY
with SGMII and SERDES MAC interfaces.
Signed-off-by: Andy Fleming <afleming@gmail.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Shruti Kanetkar <Shruti@freescale.com>
---
drivers/net/phy/vitesse.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
v2: No content change. The first submission didn't get picked up by
Patchwork. Crossing our fingers and hoping this time will go better
diff --git a/drivers/net/phy/vitesse.c b/drivers/net/phy/vitesse.c
index 69b482b..59e3b58 100644
--- a/drivers/net/phy/vitesse.c
+++ b/drivers/net/phy/vitesse.c
@@ -54,6 +54,7 @@
#define MII_VSC8221_AUXCONSTAT_INIT 0x0004 /* need to set this bit? */
#define MII_VSC8221_AUXCONSTAT_RESERVED 0x0004
+#define PHY_ID_VSC8234 0x000fc620
#define PHY_ID_VSC8244 0x000fc6c0
#define PHY_ID_VSC8221 0x000fc550
#define PHY_ID_VSC8211 0x000fc4b0
@@ -118,7 +119,8 @@ static int vsc82xx_config_intr(struct phy_device *phydev)
if (phydev->interrupts == PHY_INTERRUPT_ENABLED)
err = phy_write(phydev, MII_VSC8244_IMASK,
- phydev->drv->phy_id == PHY_ID_VSC8244 ?
+ (phydev->drv->phy_id == PHY_ID_VSC8234 ||
+ phydev->drv->phy_id == PHY_ID_VSC8244) ?
MII_VSC8244_IMASK_MASK :
MII_VSC8221_IMASK_MASK);
else {
@@ -149,9 +151,21 @@ static int vsc8221_config_init(struct phy_device *phydev)
*/
}
-/* Vitesse 824x */
+/* Vitesse 82xx */
static struct phy_driver vsc82xx_driver[] = {
{
+ .phy_id = PHY_ID_VSC8234,
+ .name = "Vitesse VSC8234",
+ .phy_id_mask = 0x000ffff0,
+ .features = PHY_GBIT_FEATURES,
+ .flags = PHY_HAS_INTERRUPT,
+ .config_init = &vsc824x_config_init,
+ .config_aneg = &genphy_config_aneg,
+ .read_status = &genphy_read_status,
+ .ack_interrupt = &vsc824x_ack_interrupt,
+ .config_intr = &vsc82xx_config_intr,
+ .driver = { .owner = THIS_MODULE,},
+}, {
.phy_id = PHY_ID_VSC8244,
.name = "Vitesse VSC8244",
.phy_id_mask = 0x000fffc0,
@@ -207,6 +221,7 @@ module_init(vsc82xx_init);
module_exit(vsc82xx_exit);
static struct mdio_device_id __maybe_unused vitesse_tbl[] = {
+ { PHY_ID_VSC8234, 0x000ffff0 },
{ PHY_ID_VSC8244, 0x000fffc0 },
{ PHY_ID_VSC8221, 0x000ffff0 },
{ PHY_ID_VSC8211, 0x000ffff0 },
--
1.8.3.1
^ permalink raw reply related
* Re: [PATCH net] xen-netfront: fix missing rx_refill_timer when allocate memory failed
From: David Miller @ 2013-11-18 18:57 UTC (permalink / raw)
To: majieyue
Cc: netdev, konrad.wilk, wei.liu2, jieyue.majy, david.vrabel,
annie.li, boris.ostrovsky, xen-devel
In-Reply-To: <1384489573-16605-1-git-send-email-jieyue.majy@alibaba-inc.com>
From: Ma JieYue <majieyue@gmail.com>
Date: Fri, 15 Nov 2013 12:26:13 +0800
> From: Ma JieYue <jieyue.majy@alibaba-inc.com>
>
> There was a bug in xennet_alloc_rx_buffers, when allocating page or
> sk_buff failed, and at the same time rx_batch queue not empty,
> the rx_refill_timer timer won't be scheduled. If finally the remaining
> request buffers in rx ring less than what backend driver expected,
> the backend driver would think of rx ring as full and start dropping packets.
> In such situation, there is no way for the netfront driver to recover
> automatically, so that the device can not work properly.
>
> The patch fixes the problem by always scheduling rx_refill_timer timer when
> alloc_page or __netdev_alloc_skb fails, no matter whether rx_batch queue is
> empty or not. It ensures that the rx ring request buffers will finally meet
> the backend needs.
>
> Signed-off-by: Ma JieYue <jieyue.majy@alibaba-inc.com>
Looks good, applied, thanks!
^ permalink raw reply
* Re: linux-next: Tree for Nov 18 (netfilter: xt_PROXY)
From: Randy Dunlap @ 2013-11-18 18:54 UTC (permalink / raw)
To: Stephen Rothwell, linux-next
Cc: linux-kernel, netdev@vger.kernel.org, netfilter-devel
In-Reply-To: <20131118142938.37c3d7d1d1c8c27ba378fbeb@canb.auug.org.au>
[-- Attachment #1: Type: text/plain, Size: 526 bytes --]
On 11/17/13 19:29, Stephen Rothwell wrote:
> Hi all,
>
> Please do *not* add any v3.14 material to linux-next until after
> v3.13-rc1 is released.
>
> Changes since 20131115:
>
on x86_64:
CONFIG_IPV6=m
net/built-in.o: In function `nf_tproxy_get_sock_v6.isra.6.constprop.12':
xt_TPROXY.c:(.text+0x7c1c6): undefined reference to `udp6_lib_lookup'
net/built-in.o: In function `tproxy_tg_init':
xt_TPROXY.c:(.init.text+0x2d0b): undefined reference to `nf_defrag_ipv6_enable'
Full randconfig file is attached.
--
~Randy
[-- Attachment #2: config-r5392 --]
[-- Type: text/plain, Size: 83084 bytes --]
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86_64 3.12.0 Kernel Configuration
#
CONFIG_64BIT=y
CONFIG_X86_64=y
CONFIG_X86=y
CONFIG_INSTRUCTION_DECODER=y
CONFIG_OUTPUT_FORMAT="elf64-x86-64"
CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig"
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_MMU=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_HAS_CPU_RELAX=y
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
CONFIG_ARCH_HAS_CPU_AUTOPROBE=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y
CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
CONFIG_ZONE_DMA32=y
CONFIG_AUDIT_ARCH=y
CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_X86_64_SMP=y
CONFIG_X86_HT=y
CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11"
CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
CONFIG_CONSTRUCTORS=y
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_EXTABLE_SORT=y
#
# General setup
#
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_CROSS_COMPILE=""
CONFIG_COMPILE_TEST=y
CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_HAVE_KERNEL_GZIP=y
CONFIG_HAVE_KERNEL_BZIP2=y
CONFIG_HAVE_KERNEL_LZMA=y
CONFIG_HAVE_KERNEL_XZ=y
CONFIG_HAVE_KERNEL_LZO=y
CONFIG_HAVE_KERNEL_LZ4=y
# CONFIG_KERNEL_UNCOMPRESSED is not set
# CONFIG_KERNEL_GZIP is not set
# CONFIG_KERNEL_BZIP2 is not set
CONFIG_KERNEL_LZMA=y
# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
# CONFIG_KERNEL_LZ4 is not set
CONFIG_DEFAULT_HOSTNAME="(none)"
# CONFIG_SWAP is not set
CONFIG_SYSVIPC=y
# CONFIG_POSIX_MQUEUE is not set
# CONFIG_FHANDLE is not set
CONFIG_AUDIT=y
# CONFIG_AUDITSYSCALL is not set
#
# IRQ subsystem
#
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_GENERIC_IRQ_SHOW=y
CONFIG_GENERIC_PENDING_IRQ=y
CONFIG_GENERIC_IRQ_CHIP=y
CONFIG_IRQ_DOMAIN=y
# CONFIG_IRQ_DOMAIN_DEBUG is not set
CONFIG_IRQ_FORCED_THREADING=y
CONFIG_SPARSE_IRQ=y
CONFIG_CLOCKSOURCE_WATCHDOG=y
CONFIG_ARCH_CLOCKSOURCE_DATA=y
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
CONFIG_GENERIC_CMOS_UPDATE=y
#
# Timers subsystem
#
CONFIG_HZ_PERIODIC=y
# CONFIG_NO_HZ_IDLE is not set
# CONFIG_NO_HZ_FULL is not set
CONFIG_NO_HZ=y
# CONFIG_HIGH_RES_TIMERS is not set
#
# CPU/Task time and stats accounting
#
CONFIG_TICK_CPU_ACCOUNTING=y
# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
# CONFIG_IRQ_TIME_ACCOUNTING is not set
# CONFIG_BSD_PROCESS_ACCT is not set
# CONFIG_TASKSTATS is not set
#
# RCU Subsystem
#
CONFIG_TREE_RCU=y
# CONFIG_PREEMPT_RCU is not set
CONFIG_RCU_STALL_COMMON=y
# CONFIG_RCU_USER_QS is not set
CONFIG_RCU_FANOUT=64
CONFIG_RCU_FANOUT_LEAF=16
CONFIG_RCU_FANOUT_EXACT=y
CONFIG_TREE_RCU_TRACE=y
CONFIG_RCU_NOCB_CPU=y
# CONFIG_RCU_NOCB_CPU_NONE is not set
# CONFIG_RCU_NOCB_CPU_ZERO is not set
CONFIG_RCU_NOCB_CPU_ALL=y
# CONFIG_IKCONFIG is not set
CONFIG_LOG_BUF_SHIFT=17
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y
# CONFIG_NUMA_BALANCING is not set
CONFIG_CGROUPS=y
# CONFIG_CGROUP_DEBUG is not set
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_DEVICE=y
# CONFIG_CPUSETS is not set
# CONFIG_CGROUP_CPUACCT is not set
CONFIG_RESOURCE_COUNTERS=y
CONFIG_MEMCG=y
CONFIG_MEMCG_KMEM=y
# CONFIG_CGROUP_PERF is not set
CONFIG_CGROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
# CONFIG_RT_GROUP_SCHED is not set
# CONFIG_BLK_CGROUP is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
# CONFIG_NET_NS is not set
CONFIG_UIDGID_STRICT_TYPE_CHECKS=y
CONFIG_SCHED_AUTOGROUP=y
CONFIG_MM_OWNER=y
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_RELAY is not set
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_RD_GZIP=y
# CONFIG_RD_BZIP2 is not set
# CONFIG_RD_LZMA is not set
# CONFIG_RD_XZ is not set
# CONFIG_RD_LZO is not set
# CONFIG_RD_LZ4 is not set
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_ANON_INODES=y
CONFIG_SYSCTL_EXCEPTION_TRACE=y
CONFIG_HAVE_PCSPKR_PLATFORM=y
CONFIG_EXPERT=y
CONFIG_KALLSYMS=y
CONFIG_KALLSYMS_ALL=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_PCSPKR_PLATFORM=y
# CONFIG_BASE_FULL is not set
CONFIG_FUTEX=y
# CONFIG_EPOLL is not set
# CONFIG_SIGNALFD is not set
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
# CONFIG_SHMEM is not set
# CONFIG_AIO is not set
# CONFIG_PCI_QUIRKS is not set
# CONFIG_EMBEDDED is not set
CONFIG_HAVE_PERF_EVENTS=y
CONFIG_PERF_USE_VMALLOC=y
#
# Kernel Performance Events And Counters
#
CONFIG_PERF_EVENTS=y
CONFIG_DEBUG_PERF_USE_VMALLOC=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_SLUB_DEBUG=y
CONFIG_COMPAT_BRK=y
# CONFIG_SLAB is not set
CONFIG_SLUB=y
# CONFIG_SLOB is not set
CONFIG_SLUB_CPU_PARTIAL=y
CONFIG_PROFILING=y
CONFIG_TRACEPOINTS=y
# CONFIG_OPROFILE is not set
CONFIG_HAVE_OPROFILE=y
CONFIG_OPROFILE_NMI_TIMER=y
CONFIG_KPROBES=y
# CONFIG_JUMP_LABEL is not set
CONFIG_OPTPROBES=y
CONFIG_UPROBES=y
# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
CONFIG_ARCH_USE_BUILTIN_BSWAP=y
CONFIG_KRETPROBES=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_OPTPROBES=y
CONFIG_HAVE_KPROBES_ON_FTRACE=y
CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_GENERIC_SMP_IDLE_THREAD=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_CLK=y
CONFIG_HAVE_DMA_API_DEBUG=y
CONFIG_HAVE_HW_BREAKPOINT=y
CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
CONFIG_HAVE_USER_RETURN_NOTIFIER=y
CONFIG_HAVE_PERF_EVENTS_NMI=y
CONFIG_HAVE_PERF_REGS=y
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
CONFIG_HAVE_ARCH_JUMP_LABEL=y
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
CONFIG_HAVE_CMPXCHG_LOCAL=y
CONFIG_HAVE_CMPXCHG_DOUBLE=y
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_HAVE_CONTEXT_TRACKING=y
CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
CONFIG_HAVE_ARCH_SOFT_DIRTY=y
CONFIG_MODULES_USE_ELF_RELA=y
CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y
#
# GCOV-based kernel profiling
#
CONFIG_GCOV_KERNEL=y
CONFIG_GCOV_PROFILE_ALL=y
# CONFIG_GCOV_FORMAT_AUTODETECT is not set
# CONFIG_GCOV_FORMAT_3_4 is not set
CONFIG_GCOV_FORMAT_4_7=y
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=1
CONFIG_SYSTEM_TRUSTED_KEYRING=y
CONFIG_MODULES=y
# CONFIG_MODULE_FORCE_LOAD is not set
# CONFIG_MODULE_UNLOAD is not set
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_MODULE_SIG=y
CONFIG_MODULE_SIG_FORCE=y
CONFIG_MODULE_SIG_ALL=y
CONFIG_MODULE_SIG_SHA1=y
# CONFIG_MODULE_SIG_SHA224 is not set
# CONFIG_MODULE_SIG_SHA256 is not set
# CONFIG_MODULE_SIG_SHA384 is not set
# CONFIG_MODULE_SIG_SHA512 is not set
CONFIG_MODULE_SIG_HASH="sha1"
CONFIG_BLOCK=y
CONFIG_BLK_DEV_BSG=y
CONFIG_BLK_DEV_BSGLIB=y
# CONFIG_BLK_DEV_INTEGRITY is not set
CONFIG_BLK_CMDLINE_PARSER=y
#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not set
# CONFIG_AIX_PARTITION is not set
# CONFIG_OSF_PARTITION is not set
CONFIG_AMIGA_PARTITION=y
# CONFIG_ATARI_PARTITION is not set
CONFIG_MAC_PARTITION=y
# CONFIG_MSDOS_PARTITION is not set
CONFIG_LDM_PARTITION=y
CONFIG_LDM_DEBUG=y
CONFIG_SGI_PARTITION=y
CONFIG_ULTRIX_PARTITION=y
CONFIG_SUN_PARTITION=y
# CONFIG_KARMA_PARTITION is not set
CONFIG_EFI_PARTITION=y
CONFIG_SYSV68_PARTITION=y
# CONFIG_CMDLINE_PARTITION is not set
#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_DEADLINE is not set
CONFIG_IOSCHED_CFQ=m
CONFIG_DEFAULT_NOOP=y
CONFIG_DEFAULT_IOSCHED="noop"
CONFIG_ASN1=y
CONFIG_UNINLINE_SPIN_UNLOCK=y
CONFIG_FREEZER=y
#
# Processor type and features
#
CONFIG_ZONE_DMA=y
CONFIG_SMP=y
# CONFIG_X86_X2APIC is not set
# CONFIG_X86_MPPARSE is not set
# CONFIG_X86_EXTENDED_PLATFORM is not set
CONFIG_X86_INTEL_LPSS=y
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_HYPERVISOR_GUEST=y
# CONFIG_PARAVIRT is not set
# CONFIG_XEN_PRIVILEGED_GUEST is not set
CONFIG_NO_BOOTMEM=y
CONFIG_MEMTEST=y
# CONFIG_MK8 is not set
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
# CONFIG_MATOM is not set
CONFIG_GENERIC_CPU=y
CONFIG_X86_INTERNODE_CACHE_SHIFT=6
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_TSC=y
CONFIG_X86_CMPXCHG64=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=64
CONFIG_X86_DEBUGCTLMSR=y
CONFIG_PROCESSOR_SELECT=y
# CONFIG_CPU_SUP_INTEL is not set
CONFIG_CPU_SUP_AMD=y
# CONFIG_CPU_SUP_CENTAUR is not set
CONFIG_HPET_TIMER=y
CONFIG_DMI=y
CONFIG_GART_IOMMU=y
CONFIG_CALGARY_IOMMU=y
CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y
CONFIG_SWIOTLB=y
CONFIG_IOMMU_HELPER=y
CONFIG_MAXSMP=y
CONFIG_NR_CPUS=8192
CONFIG_SCHED_SMT=y
# CONFIG_SCHED_MC is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
# CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set
# CONFIG_X86_MCE is not set
CONFIG_I8K=m
CONFIG_MICROCODE=m
# CONFIG_MICROCODE_INTEL is not set
CONFIG_MICROCODE_AMD=y
CONFIG_MICROCODE_OLD_INTERFACE=y
# CONFIG_MICROCODE_INTEL_EARLY is not set
# CONFIG_MICROCODE_AMD_EARLY is not set
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m
CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
CONFIG_DIRECT_GBPAGES=y
CONFIG_NUMA=y
# CONFIG_AMD_NUMA is not set
CONFIG_X86_64_ACPI_NUMA=y
CONFIG_NODES_SPAN_OTHER_NODES=y
CONFIG_NUMA_EMU=y
CONFIG_NODES_SHIFT=10
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_DEFAULT=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_NEED_MULTIPLE_NODES=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y
# CONFIG_SPARSEMEM_VMEMMAP is not set
CONFIG_HAVE_MEMBLOCK=y
CONFIG_HAVE_MEMBLOCK_NODE_MAP=y
CONFIG_ARCH_DISCARD_MEMBLOCK=y
CONFIG_MEMORY_ISOLATION=y
CONFIG_MOVABLE_NODE=y
# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
# CONFIG_MEMORY_HOTPLUG is not set
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
# CONFIG_BALLOON_COMPACTION is not set
CONFIG_COMPACTION=y
CONFIG_MIGRATION=y
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
# CONFIG_BOUNCE is not set
CONFIG_VIRT_TO_BUS=y
# CONFIG_KSM is not set
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
CONFIG_CROSS_MEMORY_ATTACH=y
CONFIG_CLEANCACHE=y
CONFIG_CMA=y
# CONFIG_CMA_DEBUG is not set
# CONFIG_ZBUD is not set
# CONFIG_MEM_SOFT_DIRTY is not set
# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set
CONFIG_X86_RESERVE_LOW=64
CONFIG_MTRR=y
# CONFIG_MTRR_SANITIZER is not set
CONFIG_X86_PAT=y
CONFIG_ARCH_USES_PG_UNCACHED=y
# CONFIG_ARCH_RANDOM is not set
CONFIG_X86_SMAP=y
CONFIG_EFI=y
CONFIG_EFI_STUB=y
# CONFIG_SECCOMP is not set
# CONFIG_CC_STACKPROTECTOR is not set
CONFIG_HZ_100=y
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=100
# CONFIG_SCHED_HRTICK is not set
CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_ALIGN=0x200000
# CONFIG_HOTPLUG_CPU is not set
CONFIG_CMDLINE_BOOL=y
CONFIG_CMDLINE=""
# CONFIG_CMDLINE_OVERRIDE is not set
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y
#
# Power management and ACPI options
#
# CONFIG_SUSPEND is not set
# CONFIG_PM_RUNTIME is not set
CONFIG_ACPI=y
CONFIG_ACPI_EC_DEBUGFS=m
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
# CONFIG_ACPI_BUTTON is not set
CONFIG_ACPI_FAN=m
CONFIG_ACPI_DOCK=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
# CONFIG_ACPI_THERMAL is not set
CONFIG_ACPI_NUMA=y
# CONFIG_ACPI_CUSTOM_DSDT is not set
# CONFIG_ACPI_INITRD_TABLE_OVERRIDE is not set
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_PCI_SLOT=y
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=y
CONFIG_ACPI_SBS=y
# CONFIG_ACPI_HED is not set
# CONFIG_ACPI_CUSTOM_METHOD is not set
# CONFIG_ACPI_BGRT is not set
# CONFIG_ACPI_APEI is not set
# CONFIG_SFI is not set
#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set
#
# CPU Idle
#
CONFIG_CPU_IDLE=y
# CONFIG_CPU_IDLE_MULTIPLE_DRIVERS is not set
CONFIG_CPU_IDLE_GOV_LADDER=y
CONFIG_CPU_IDLE_GOV_MENU=y
# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set
#
# Memory power savings
#
CONFIG_I7300_IDLE_IOAT_CHANNEL=y
CONFIG_I7300_IDLE=y
#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_DOMAINS=y
# CONFIG_PCI_CNB20LE_QUIRK is not set
# CONFIG_PCIEPORTBUS is not set
CONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set
# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
CONFIG_PCI_STUB=y
# CONFIG_HT_IRQ is not set
CONFIG_PCI_ATS=y
CONFIG_PCI_IOV=y
CONFIG_PCI_PRI=y
CONFIG_PCI_PASID=y
# CONFIG_PCI_IOAPIC is not set
CONFIG_PCI_LABEL=y
#
# PCI host controller drivers
#
# CONFIG_ISA_DMA_API is not set
CONFIG_AMD_NB=y
CONFIG_PCCARD=m
# CONFIG_PCMCIA is not set
# CONFIG_CARDBUS is not set
#
# PC-card bridges
#
CONFIG_YENTA=m
# CONFIG_YENTA_O2 is not set
CONFIG_YENTA_RICOH=y
CONFIG_YENTA_TI=y
CONFIG_YENTA_TOSHIBA=y
# CONFIG_HOTPLUG_PCI is not set
CONFIG_RAPIDIO=m
CONFIG_RAPIDIO_DISC_TIMEOUT=30
CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS=y
CONFIG_RAPIDIO_DMA_ENGINE=y
# CONFIG_RAPIDIO_DEBUG is not set
CONFIG_RAPIDIO_ENUM_BASIC=m
#
# RapidIO Switch drivers
#
CONFIG_RAPIDIO_TSI57X=m
# CONFIG_RAPIDIO_CPS_XX is not set
CONFIG_RAPIDIO_TSI568=m
# CONFIG_RAPIDIO_CPS_GEN2 is not set
CONFIG_X86_SYSFB=y
#
# Executable file formats / Emulations
#
# CONFIG_BINFMT_ELF is not set
CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y
CONFIG_BINFMT_SCRIPT=m
# CONFIG_HAVE_AOUT is not set
CONFIG_BINFMT_MISC=m
# CONFIG_COREDUMP is not set
# CONFIG_IA32_EMULATION is not set
CONFIG_X86_DEV_DMA_OPS=y
CONFIG_NET=y
#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_DIAG is not set
CONFIG_UNIX=y
CONFIG_UNIX_DIAG=m
CONFIG_XFRM=y
CONFIG_XFRM_ALGO=y
CONFIG_XFRM_USER=y
# CONFIG_XFRM_SUB_POLICY is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_IPCOMP=y
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_FIB_TRIE_STATS=y
CONFIG_IP_MULTIPLE_TABLES=y
# CONFIG_IP_ROUTE_MULTIPATH is not set
# CONFIG_IP_ROUTE_VERBOSE is not set
CONFIG_IP_PNP=y
# CONFIG_IP_PNP_DHCP is not set
CONFIG_IP_PNP_BOOTP=y
# CONFIG_IP_PNP_RARP is not set
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE_DEMUX=m
CONFIG_NET_IP_TUNNEL=m
CONFIG_NET_IPGRE=m
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y
CONFIG_INET_XFRM_TUNNEL=y
CONFIG_INET_TUNNEL=y
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
CONFIG_INET_XFRM_MODE_BEET=m
CONFIG_INET_LRO=y
# CONFIG_INET_DIAG is not set
CONFIG_TCP_CONG_ADVANCED=y
CONFIG_TCP_CONG_BIC=y
CONFIG_TCP_CONG_CUBIC=y
CONFIG_TCP_CONG_WESTWOOD=y
CONFIG_TCP_CONG_HTCP=m
CONFIG_TCP_CONG_HSTCP=m
# CONFIG_TCP_CONG_HYBLA is not set
CONFIG_TCP_CONG_VEGAS=y
CONFIG_TCP_CONG_SCALABLE=y
# CONFIG_TCP_CONG_LP is not set
CONFIG_TCP_CONG_VENO=m
CONFIG_TCP_CONG_YEAH=y
CONFIG_TCP_CONG_ILLINOIS=y
# CONFIG_DEFAULT_BIC is not set
CONFIG_DEFAULT_CUBIC=y
# CONFIG_DEFAULT_VEGAS is not set
# CONFIG_DEFAULT_WESTWOOD is not set
# CONFIG_DEFAULT_RENO is not set
CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set
CONFIG_IPV6=m
# CONFIG_IPV6_ROUTER_PREF is not set
CONFIG_IPV6_OPTIMISTIC_DAD=y
CONFIG_INET6_AH=m
# CONFIG_INET6_ESP is not set
# CONFIG_INET6_IPCOMP is not set
CONFIG_IPV6_MIP6=m
# CONFIG_INET6_XFRM_TUNNEL is not set
CONFIG_INET6_TUNNEL=m
CONFIG_INET6_XFRM_MODE_TRANSPORT=m
# CONFIG_INET6_XFRM_MODE_TUNNEL is not set
# CONFIG_INET6_XFRM_MODE_BEET is not set
CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m
CONFIG_IPV6_SIT=m
# CONFIG_IPV6_SIT_6RD is not set
CONFIG_IPV6_NDISC_NODETYPE=y
CONFIG_IPV6_TUNNEL=m
# CONFIG_IPV6_GRE is not set
CONFIG_IPV6_MULTIPLE_TABLES=y
# CONFIG_IPV6_SUBTREES is not set
CONFIG_IPV6_MROUTE=y
# CONFIG_IPV6_MROUTE_MULTIPLE_TABLES is not set
# CONFIG_IPV6_PIMSM_V2 is not set
CONFIG_NETLABEL=y
CONFIG_NETWORK_SECMARK=y
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
CONFIG_NETFILTER=y
CONFIG_NETFILTER_DEBUG=y
CONFIG_NETFILTER_ADVANCED=y
#
# Core Netfilter Configuration
#
CONFIG_NETFILTER_NETLINK=y
CONFIG_NETFILTER_NETLINK_ACCT=y
CONFIG_NETFILTER_NETLINK_QUEUE=y
# CONFIG_NETFILTER_NETLINK_LOG is not set
CONFIG_NF_CONNTRACK=m
CONFIG_NF_CONNTRACK_MARK=y
# CONFIG_NF_CONNTRACK_SECMARK is not set
# CONFIG_NF_CONNTRACK_ZONES is not set
CONFIG_NF_CONNTRACK_EVENTS=y
CONFIG_NF_CONNTRACK_TIMEOUT=y
CONFIG_NF_CONNTRACK_TIMESTAMP=y
CONFIG_NF_CONNTRACK_LABELS=y
CONFIG_NF_CT_PROTO_DCCP=m
# CONFIG_NF_CT_PROTO_SCTP is not set
CONFIG_NF_CT_PROTO_UDPLITE=m
# CONFIG_NF_CONNTRACK_AMANDA is not set
CONFIG_NF_CONNTRACK_FTP=m
CONFIG_NF_CONNTRACK_H323=m
CONFIG_NF_CONNTRACK_IRC=m
CONFIG_NF_CONNTRACK_BROADCAST=m
CONFIG_NF_CONNTRACK_NETBIOS_NS=m
CONFIG_NF_CONNTRACK_SNMP=m
# CONFIG_NF_CONNTRACK_PPTP is not set
# CONFIG_NF_CONNTRACK_SANE is not set
# CONFIG_NF_CONNTRACK_SIP is not set
CONFIG_NF_CONNTRACK_TFTP=m
# CONFIG_NF_CT_NETLINK is not set
# CONFIG_NF_CT_NETLINK_TIMEOUT is not set
# CONFIG_NETFILTER_NETLINK_QUEUE_CT is not set
CONFIG_NF_TABLES=y
# CONFIG_NFT_EXTHDR is not set
CONFIG_NFT_META=m
# CONFIG_NFT_CT is not set
CONFIG_NFT_RBTREE=y
# CONFIG_NFT_HASH is not set
# CONFIG_NFT_COUNTER is not set
# CONFIG_NFT_LOG is not set
CONFIG_NFT_LIMIT=y
# CONFIG_NFT_COMPAT is not set
CONFIG_NETFILTER_XTABLES=y
#
# Xtables combined modules
#
CONFIG_NETFILTER_XT_MARK=y
# CONFIG_NETFILTER_XT_CONNMARK is not set
#
# Xtables targets
#
CONFIG_NETFILTER_XT_TARGET_AUDIT=y
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=y
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=y
# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
CONFIG_NETFILTER_XT_TARGET_CT=m
CONFIG_NETFILTER_XT_TARGET_DSCP=y
CONFIG_NETFILTER_XT_TARGET_HL=y
CONFIG_NETFILTER_XT_TARGET_HMARK=m
CONFIG_NETFILTER_XT_TARGET_IDLETIMER=y
# CONFIG_NETFILTER_XT_TARGET_LOG is not set
CONFIG_NETFILTER_XT_TARGET_MARK=y
# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=y
CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
CONFIG_NETFILTER_XT_TARGET_RATEEST=m
# CONFIG_NETFILTER_XT_TARGET_TEE is not set
CONFIG_NETFILTER_XT_TARGET_TPROXY=y
CONFIG_NETFILTER_XT_TARGET_TRACE=m
CONFIG_NETFILTER_XT_TARGET_SECMARK=y
# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set
# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
#
# Xtables matches
#
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
# CONFIG_NETFILTER_XT_MATCH_BPF is not set
CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
# CONFIG_NETFILTER_XT_MATCH_CONNMARK is not set
# CONFIG_NETFILTER_XT_MATCH_CONNTRACK is not set
CONFIG_NETFILTER_XT_MATCH_CPU=m
# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
CONFIG_NETFILTER_XT_MATCH_DSCP=y
CONFIG_NETFILTER_XT_MATCH_ECN=m
CONFIG_NETFILTER_XT_MATCH_ESP=y
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
CONFIG_NETFILTER_XT_MATCH_HELPER=m
CONFIG_NETFILTER_XT_MATCH_HL=m
# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
CONFIG_NETFILTER_XT_MATCH_IPVS=m
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
CONFIG_NETFILTER_XT_MATCH_MAC=y
CONFIG_NETFILTER_XT_MATCH_MARK=y
# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
CONFIG_NETFILTER_XT_MATCH_NFACCT=y
# CONFIG_NETFILTER_XT_MATCH_OSF is not set
CONFIG_NETFILTER_XT_MATCH_OWNER=y
# CONFIG_NETFILTER_XT_MATCH_POLICY is not set
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=y
# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
CONFIG_NETFILTER_XT_MATCH_RATEEST=m
# CONFIG_NETFILTER_XT_MATCH_REALM is not set
CONFIG_NETFILTER_XT_MATCH_RECENT=y
CONFIG_NETFILTER_XT_MATCH_SCTP=m
CONFIG_NETFILTER_XT_MATCH_SOCKET=m
CONFIG_NETFILTER_XT_MATCH_STATE=m
CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
CONFIG_NETFILTER_XT_MATCH_STRING=y
CONFIG_NETFILTER_XT_MATCH_TCPMSS=y
CONFIG_NETFILTER_XT_MATCH_TIME=y
CONFIG_NETFILTER_XT_MATCH_U32=m
# CONFIG_IP_SET is not set
CONFIG_IP_VS=m
CONFIG_IP_VS_IPV6=y
CONFIG_IP_VS_DEBUG=y
CONFIG_IP_VS_TAB_BITS=12
#
# IPVS transport protocol load balancing support
#
CONFIG_IP_VS_PROTO_TCP=y
CONFIG_IP_VS_PROTO_UDP=y
# CONFIG_IP_VS_PROTO_AH_ESP is not set
# CONFIG_IP_VS_PROTO_ESP is not set
# CONFIG_IP_VS_PROTO_AH is not set
# CONFIG_IP_VS_PROTO_SCTP is not set
#
# IPVS scheduler
#
CONFIG_IP_VS_RR=m
# CONFIG_IP_VS_WRR is not set
CONFIG_IP_VS_LC=m
# CONFIG_IP_VS_WLC is not set
CONFIG_IP_VS_LBLC=m
# CONFIG_IP_VS_LBLCR is not set
# CONFIG_IP_VS_DH is not set
CONFIG_IP_VS_SH=m
CONFIG_IP_VS_SED=m
# CONFIG_IP_VS_NQ is not set
#
# IPVS SH scheduler
#
CONFIG_IP_VS_SH_TAB_BITS=8
#
# IPVS application helper
#
# CONFIG_IP_VS_NFCT is not set
#
# IP: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV4=y
# CONFIG_NF_CONNTRACK_IPV4 is not set
CONFIG_NF_TABLES_IPV4=m
CONFIG_NFT_REJECT_IPV4=m
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
CONFIG_NF_TABLES_ARP=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_AH=y
# CONFIG_IP_NF_MATCH_ECN is not set
CONFIG_IP_NF_MATCH_RPFILTER=m
# CONFIG_IP_NF_MATCH_TTL is not set
# CONFIG_IP_NF_FILTER is not set
# CONFIG_IP_NF_TARGET_SYNPROXY is not set
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_IP_NF_MANGLE=y
# CONFIG_IP_NF_TARGET_ECN is not set
CONFIG_IP_NF_TARGET_TTL=y
# CONFIG_IP_NF_RAW is not set
CONFIG_IP_NF_SECURITY=m
CONFIG_IP_NF_ARPTABLES=y
CONFIG_IP_NF_ARPFILTER=y
# CONFIG_IP_NF_ARP_MANGLE is not set
#
# IPv6: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV6=m
# CONFIG_NF_CONNTRACK_IPV6 is not set
CONFIG_NF_TABLES_IPV6=m
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
CONFIG_IP6_NF_IPTABLES=m
# CONFIG_IP6_NF_MATCH_AH is not set
# CONFIG_IP6_NF_MATCH_EUI64 is not set
CONFIG_IP6_NF_MATCH_FRAG=m
# CONFIG_IP6_NF_MATCH_OPTS is not set
CONFIG_IP6_NF_MATCH_HL=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_IP6_NF_MATCH_MH=m
# CONFIG_IP6_NF_MATCH_RPFILTER is not set
# CONFIG_IP6_NF_MATCH_RT is not set
# CONFIG_IP6_NF_FILTER is not set
# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
# CONFIG_IP6_NF_MANGLE is not set
CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
#
# DECnet: Netfilter Configuration
#
CONFIG_DECNET_NF_GRABULATOR=m
CONFIG_NF_TABLES_BRIDGE=y
CONFIG_IP_DCCP=y
#
# DCCP CCIDs Configuration
#
CONFIG_IP_DCCP_CCID2_DEBUG=y
CONFIG_IP_DCCP_CCID3=y
# CONFIG_IP_DCCP_CCID3_DEBUG is not set
CONFIG_IP_DCCP_TFRC_LIB=y
#
# DCCP Kernel Hacking
#
CONFIG_IP_DCCP_DEBUG=y
CONFIG_IP_SCTP=m
CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
CONFIG_SCTP_COOKIE_HMAC_MD5=y
CONFIG_SCTP_COOKIE_HMAC_SHA1=y
# CONFIG_RDS is not set
CONFIG_TIPC=y
CONFIG_TIPC_PORTS=8191
CONFIG_ATM=y
CONFIG_ATM_CLIP=m
CONFIG_ATM_CLIP_NO_ICMP=y
CONFIG_ATM_LANE=m
CONFIG_ATM_MPOA=m
# CONFIG_ATM_BR2684 is not set
# CONFIG_L2TP is not set
CONFIG_STP=m
CONFIG_GARP=m
# CONFIG_BRIDGE is not set
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_GVRP=y
# CONFIG_VLAN_8021Q_MVRP is not set
CONFIG_DECNET=m
CONFIG_DECNET_ROUTER=y
CONFIG_LLC=m
CONFIG_LLC2=m
CONFIG_IPX=m
# CONFIG_IPX_INTERN is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
CONFIG_LAPB=m
CONFIG_PHONET=y
CONFIG_IEEE802154=m
CONFIG_IEEE802154_6LOWPAN=m
CONFIG_MAC802154=m
# CONFIG_NET_SCHED is not set
# CONFIG_DCB is not set
CONFIG_DNS_RESOLVER=m
# CONFIG_BATMAN_ADV is not set
CONFIG_OPENVSWITCH=m
CONFIG_OPENVSWITCH_GRE=y
CONFIG_VSOCKETS=m
# CONFIG_VMWARE_VMCI_VSOCKETS is not set
CONFIG_NETLINK_MMAP=y
CONFIG_NETLINK_DIAG=y
# CONFIG_NET_MPLS_GSO is not set
CONFIG_HSR=y
CONFIG_NETPRIO_CGROUP=y
CONFIG_NET_RX_BUSY_POLL=y
CONFIG_BQL=y
# CONFIG_BPF_JIT is not set
#
# Network testing
#
# CONFIG_NET_DROP_MONITOR is not set
# CONFIG_HAMRADIO is not set
CONFIG_CAN=m
CONFIG_CAN_RAW=m
CONFIG_CAN_BCM=m
# CONFIG_CAN_GW is not set
#
# CAN Device Drivers
#
CONFIG_CAN_VCAN=m
CONFIG_CAN_DEV=m
CONFIG_CAN_CALC_BITTIMING=y
# CONFIG_CAN_LEDS is not set
# CONFIG_CAN_MCP251X is not set
CONFIG_CAN_JANZ_ICAN3=m
CONFIG_PCH_CAN=m
# CONFIG_CAN_SJA1000 is not set
# CONFIG_CAN_C_CAN is not set
# CONFIG_CAN_CC770 is not set
#
# CAN USB interfaces
#
CONFIG_CAN_EMS_USB=m
# CONFIG_CAN_ESD_USB2 is not set
CONFIG_CAN_KVASER_USB=m
CONFIG_CAN_PEAK_USB=m
# CONFIG_CAN_8DEV_USB is not set
CONFIG_CAN_SOFTING=m
# CONFIG_CAN_DEBUG_DEVICES is not set
CONFIG_IRDA=m
#
# IrDA protocols
#
CONFIG_IRLAN=m
CONFIG_IRDA_ULTRA=y
#
# IrDA options
#
CONFIG_IRDA_CACHE_LAST_LSAP=y
# CONFIG_IRDA_FAST_RR is not set
CONFIG_IRDA_DEBUG=y
#
# Infrared-port device drivers
#
#
# SIR device drivers
#
#
# Dongle support
#
# CONFIG_KINGSUN_DONGLE is not set
CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KS959_DONGLE=m
#
# FIR device drivers
#
# CONFIG_USB_IRDA is not set
CONFIG_SIGMATEL_FIR=m
# CONFIG_VLSI_FIR is not set
CONFIG_MCS_FIR=m
# CONFIG_BT is not set
CONFIG_AF_RXRPC=m
CONFIG_AF_RXRPC_DEBUG=y
# CONFIG_RXKAD is not set
CONFIG_FIB_RULES=y
CONFIG_WIRELESS=y
CONFIG_WEXT_CORE=y
CONFIG_CFG80211=y
# CONFIG_NL80211_TESTMODE is not set
CONFIG_CFG80211_DEVELOPER_WARNINGS=y
CONFIG_CFG80211_REG_DEBUG=y
# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
# CONFIG_CFG80211_DEFAULT_PS is not set
# CONFIG_CFG80211_DEBUGFS is not set
CONFIG_CFG80211_INTERNAL_REGDB=y
CONFIG_CFG80211_WEXT=y
# CONFIG_LIB80211 is not set
CONFIG_MAC80211=y
CONFIG_MAC80211_HAS_RC=y
# CONFIG_MAC80211_RC_PID is not set
CONFIG_MAC80211_RC_MINSTREL=y
# CONFIG_MAC80211_RC_MINSTREL_HT is not set
CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
CONFIG_MAC80211_RC_DEFAULT="minstrel"
# CONFIG_MAC80211_MESH is not set
# CONFIG_MAC80211_LEDS is not set
# CONFIG_MAC80211_DEBUGFS is not set
# CONFIG_MAC80211_MESSAGE_TRACING is not set
CONFIG_MAC80211_DEBUG_MENU=y
# CONFIG_MAC80211_NOINLINE is not set
# CONFIG_MAC80211_VERBOSE_DEBUG is not set
# CONFIG_MAC80211_MLME_DEBUG is not set
# CONFIG_MAC80211_STA_DEBUG is not set
CONFIG_MAC80211_HT_DEBUG=y
CONFIG_MAC80211_IBSS_DEBUG=y
CONFIG_MAC80211_PS_DEBUG=y
CONFIG_MAC80211_TDLS_DEBUG=y
CONFIG_WIMAX=y
CONFIG_WIMAX_DEBUG_LEVEL=8
CONFIG_RFKILL=y
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL_REGULATOR=y
# CONFIG_RFKILL_GPIO is not set
CONFIG_NET_9P=m
CONFIG_NET_9P_VIRTIO=m
# CONFIG_NET_9P_DEBUG is not set
# CONFIG_CAIF is not set
CONFIG_CEPH_LIB=m
# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y
CONFIG_NFC=y
CONFIG_NFC_DIGITAL=m
# CONFIG_NFC_NCI is not set
CONFIG_NFC_HCI=m
CONFIG_NFC_SHDLC=y
#
# Near Field Communication (NFC) devices
#
CONFIG_NFC_PN533=y
# CONFIG_NFC_SIM is not set
# CONFIG_NFC_PORT100 is not set
# CONFIG_NFC_PN544 is not set
# CONFIG_NFC_MICROREAD is not set
CONFIG_HAVE_BPF_JIT=y
#
# Device Drivers
#
#
# Generic Driver Options
#
CONFIG_UEVENT_HELPER_PATH=""
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
CONFIG_FIRMWARE_IN_KERNEL=y
CONFIG_EXTRA_FIRMWARE=""
CONFIG_FW_LOADER_USER_HELPER=y
# CONFIG_DEBUG_DRIVER is not set
CONFIG_DEBUG_DEVRES=y
# CONFIG_SYS_HYPERVISOR is not set
# CONFIG_GENERIC_CPU_DEVICES is not set
CONFIG_REGMAP=y
CONFIG_REGMAP_I2C=m
CONFIG_REGMAP_SPI=y
CONFIG_REGMAP_IRQ=y
CONFIG_DMA_SHARED_BUFFER=y
#
# Bus devices
#
CONFIG_CONNECTOR=y
CONFIG_PROC_EVENTS=y
CONFIG_MTD=m
CONFIG_MTD_TESTS=m
# CONFIG_MTD_REDBOOT_PARTS is not set
CONFIG_MTD_CMDLINE_PARTS=m
CONFIG_MTD_AR7_PARTS=m
#
# User Modules And Translation Layers
#
CONFIG_MTD_BLKDEVS=m
CONFIG_MTD_BLOCK=m
CONFIG_MTD_BLOCK_RO=m
# CONFIG_FTL is not set
CONFIG_NFTL=m
CONFIG_NFTL_RW=y
CONFIG_INFTL=m
CONFIG_RFD_FTL=m
CONFIG_SSFDC=m
CONFIG_SM_FTL=m
CONFIG_MTD_OOPS=m
#
# RAM/ROM/Flash chip drivers
#
CONFIG_MTD_CFI=m
CONFIG_MTD_JEDECPROBE=m
CONFIG_MTD_GEN_PROBE=m
# CONFIG_MTD_CFI_ADV_OPTIONS is not set
CONFIG_MTD_MAP_BANK_WIDTH_1=y
CONFIG_MTD_MAP_BANK_WIDTH_2=y
CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
CONFIG_MTD_CFI_I1=y
CONFIG_MTD_CFI_I2=y
# CONFIG_MTD_CFI_I4 is not set
# CONFIG_MTD_CFI_I8 is not set
CONFIG_MTD_CFI_INTELEXT=m
CONFIG_MTD_CFI_AMDSTD=m
# CONFIG_MTD_CFI_STAA is not set
CONFIG_MTD_CFI_UTIL=m
CONFIG_MTD_RAM=m
# CONFIG_MTD_ROM is not set
CONFIG_MTD_ABSENT=m
#
# Mapping drivers for chip access
#
# CONFIG_MTD_COMPLEX_MAPPINGS is not set
CONFIG_MTD_PHYSMAP=m
CONFIG_MTD_PHYSMAP_COMPAT=y
CONFIG_MTD_PHYSMAP_START=0x8000000
CONFIG_MTD_PHYSMAP_LEN=0
CONFIG_MTD_PHYSMAP_BANKWIDTH=2
# CONFIG_MTD_SC520CDP is not set
CONFIG_MTD_NETSC520=m
CONFIG_MTD_TS5500=m
CONFIG_MTD_AMD76XROM=m
CONFIG_MTD_ICHXROM=m
CONFIG_MTD_ESB2ROM=m
CONFIG_MTD_CK804XROM=m
CONFIG_MTD_SCB2_FLASH=m
CONFIG_MTD_NETtel=m
# CONFIG_MTD_L440GX is not set
CONFIG_MTD_INTEL_VR_NOR=m
CONFIG_MTD_PLATRAM=m
#
# Self-contained MTD device drivers
#
CONFIG_MTD_PMC551=m
CONFIG_MTD_PMC551_BUGFIX=y
# CONFIG_MTD_PMC551_DEBUG is not set
CONFIG_MTD_DATAFLASH=m
# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set
CONFIG_MTD_DATAFLASH_OTP=y
CONFIG_MTD_M25P80=m
# CONFIG_MTD_SST25L is not set
CONFIG_MTD_SLRAM=m
# CONFIG_MTD_PHRAM is not set
CONFIG_MTD_MTDRAM=m
CONFIG_MTDRAM_TOTAL_SIZE=4096
CONFIG_MTDRAM_ERASE_SIZE=128
CONFIG_MTD_BLOCK2MTD=m
#
# Disk-On-Chip Device Drivers
#
CONFIG_MTD_DOCG3=m
CONFIG_BCH_CONST_M=14
CONFIG_BCH_CONST_T=4
CONFIG_MTD_NAND_ECC=m
CONFIG_MTD_NAND_ECC_SMC=y
# CONFIG_MTD_NAND is not set
CONFIG_MTD_ONENAND=m
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
CONFIG_MTD_ONENAND_GENERIC=m
# CONFIG_MTD_ONENAND_OTP is not set
# CONFIG_MTD_ONENAND_2X_PROGRAM is not set
#
# LPDDR flash memory drivers
#
# CONFIG_MTD_LPDDR is not set
CONFIG_MTD_UBI=m
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_LIMIT=20
# CONFIG_MTD_UBI_FASTMAP is not set
CONFIG_MTD_UBI_GLUEBI=m
# CONFIG_PARPORT is not set
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
CONFIG_PNP=y
# CONFIG_PNP_DEBUG_MESSAGES is not set
#
# Protocols
#
CONFIG_PNPACPI=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_NULL_BLK=y
CONFIG_BLK_DEV_PCIESSD_MTIP32XX=y
CONFIG_BLK_CPQ_CISS_DA=y
CONFIG_BLK_DEV_DAC960=m
CONFIG_BLK_DEV_UMEM=y
# CONFIG_BLK_DEV_COW_COMMON is not set
# CONFIG_BLK_DEV_LOOP is not set
#
# DRBD disabled because PROC_FS or INET not selected
#
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_NVME=m
# CONFIG_BLK_DEV_SKD is not set
# CONFIG_BLK_DEV_SX8 is not set
CONFIG_BLK_DEV_RAM=m
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_BLK_DEV_RAM_SIZE=4096
# CONFIG_BLK_DEV_XIP is not set
CONFIG_CDROM_PKTCDVD=y
CONFIG_CDROM_PKTCDVD_BUFFERS=8
CONFIG_CDROM_PKTCDVD_WCACHE=y
CONFIG_ATA_OVER_ETH=m
# CONFIG_VIRTIO_BLK is not set
CONFIG_BLK_DEV_HD=y
# CONFIG_BLK_DEV_RBD is not set
CONFIG_BLK_DEV_RSXX=m
#
# Misc devices
#
CONFIG_SENSORS_LIS3LV02D=m
CONFIG_AD525X_DPOT=y
# CONFIG_AD525X_DPOT_I2C is not set
# CONFIG_AD525X_DPOT_SPI is not set
CONFIG_ATMEL_PWM=y
CONFIG_DUMMY_IRQ=m
# CONFIG_IBM_ASM is not set
CONFIG_PHANTOM=m
# CONFIG_SGI_IOC4 is not set
CONFIG_TIFM_CORE=y
CONFIG_TIFM_7XX1=m
CONFIG_ICS932S401=m
CONFIG_ATMEL_SSC=m
CONFIG_ENCLOSURE_SERVICES=y
# CONFIG_CS5535_MFGPT is not set
CONFIG_HP_ILO=y
CONFIG_APDS9802ALS=m
CONFIG_ISL29003=m
# CONFIG_ISL29020 is not set
CONFIG_SENSORS_TSL2550=m
CONFIG_SENSORS_BH1780=m
# CONFIG_SENSORS_BH1770 is not set
CONFIG_SENSORS_APDS990X=m
CONFIG_HMC6352=m
# CONFIG_DS1682 is not set
CONFIG_TI_DAC7512=y
CONFIG_VMWARE_BALLOON=y
CONFIG_BMP085=y
# CONFIG_BMP085_I2C is not set
CONFIG_BMP085_SPI=m
CONFIG_PCH_PHUB=y
CONFIG_USB_SWITCH_FSA9480=m
CONFIG_LATTICE_ECP3_CONFIG=y
# CONFIG_SRAM is not set
CONFIG_C2PORT=m
CONFIG_C2PORT_DURAMAR_2150=m
#
# EEPROM support
#
CONFIG_EEPROM_AT24=m
CONFIG_EEPROM_AT25=m
CONFIG_EEPROM_LEGACY=m
CONFIG_EEPROM_MAX6875=m
# CONFIG_EEPROM_93CX6 is not set
CONFIG_EEPROM_93XX46=y
CONFIG_CB710_CORE=m
CONFIG_CB710_DEBUG=y
CONFIG_CB710_DEBUG_ASSUMPTIONS=y
#
# Texas Instruments shared transport line discipline
#
CONFIG_SENSORS_LIS3_I2C=m
#
# Altera FPGA firmware download module
#
CONFIG_ALTERA_STAPL=m
CONFIG_VMWARE_VMCI=y
#
# Intel MIC Host Driver
#
# CONFIG_INTEL_MIC_HOST is not set
#
# Intel MIC Card Driver
#
CONFIG_INTEL_MIC_CARD=y
CONFIG_HAVE_IDE=y
# CONFIG_IDE is not set
#
# SCSI device support
#
CONFIG_SCSI_MOD=m
# CONFIG_RAID_ATTRS is not set
CONFIG_SCSI=m
CONFIG_SCSI_DMA=y
CONFIG_SCSI_TGT=m
# CONFIG_SCSI_NETLINK is not set
#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=m
# CONFIG_CHR_DEV_ST is not set
CONFIG_CHR_DEV_OSST=m
CONFIG_BLK_DEV_SR=m
# CONFIG_BLK_DEV_SR_VENDOR is not set
# CONFIG_CHR_DEV_SG is not set
CONFIG_CHR_DEV_SCH=m
CONFIG_SCSI_ENCLOSURE=m
CONFIG_SCSI_MULTI_LUN=y
CONFIG_SCSI_CONSTANTS=y
CONFIG_SCSI_LOGGING=y
# CONFIG_SCSI_SCAN_ASYNC is not set
#
# SCSI Transports
#
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
CONFIG_SCSI_ISCSI_ATTRS=m
CONFIG_SCSI_SAS_ATTRS=m
CONFIG_SCSI_SAS_LIBSAS=m
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_SCSI_SRP_ATTRS=m
CONFIG_SCSI_SRP_TGT_ATTRS=y
# CONFIG_SCSI_LOWLEVEL is not set
# CONFIG_SCSI_DH is not set
CONFIG_SCSI_OSD_INITIATOR=m
# CONFIG_SCSI_OSD_ULD is not set
CONFIG_SCSI_OSD_DPRINT_SENSE=1
CONFIG_SCSI_OSD_DEBUG=y
CONFIG_ATA=m
# CONFIG_ATA_NONSTANDARD is not set
# CONFIG_ATA_VERBOSE_ERROR is not set
CONFIG_ATA_ACPI=y
CONFIG_SATA_ZPODD=y
# CONFIG_SATA_PMP is not set
#
# Controllers with non-SFF native interface
#
# CONFIG_SATA_AHCI is not set
# CONFIG_SATA_AHCI_PLATFORM is not set
CONFIG_SATA_INIC162X=m
CONFIG_SATA_ACARD_AHCI=m
CONFIG_SATA_SIL24=m
# CONFIG_ATA_SFF is not set
# CONFIG_MD is not set
CONFIG_TARGET_CORE=m
CONFIG_TCM_IBLOCK=m
CONFIG_TCM_FILEIO=m
CONFIG_TCM_PSCSI=m
CONFIG_LOOPBACK_TARGET=m
CONFIG_ISCSI_TARGET=m
# CONFIG_SBP_TARGET is not set
# CONFIG_FUSION is not set
#
# IEEE 1394 (FireWire) support
#
CONFIG_FIREWIRE=y
# CONFIG_FIREWIRE_OHCI is not set
# CONFIG_FIREWIRE_SBP2 is not set
CONFIG_FIREWIRE_NET=y
CONFIG_FIREWIRE_NOSY=m
CONFIG_I2O=y
# CONFIG_I2O_LCT_NOTIFY_ON_CHANGES is not set
# CONFIG_I2O_EXT_ADAPTEC is not set
CONFIG_I2O_CONFIG=y
CONFIG_I2O_CONFIG_OLD_IOCTL=y
CONFIG_I2O_BUS=m
# CONFIG_I2O_BLOCK is not set
CONFIG_I2O_SCSI=m
CONFIG_I2O_PROC=m
# CONFIG_MACINTOSH_DRIVERS is not set
# CONFIG_NETDEVICES is not set
#
# Input device support
#
CONFIG_INPUT=y
CONFIG_INPUT_FF_MEMLESS=m
CONFIG_INPUT_POLLDEV=m
CONFIG_INPUT_SPARSEKMAP=m
CONFIG_INPUT_MATRIXKMAP=y
#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_JOYDEV=m
CONFIG_INPUT_EVDEV=m
CONFIG_INPUT_EVBUG=m
#
# Input Device Drivers
#
# CONFIG_INPUT_KEYBOARD is not set
CONFIG_INPUT_MOUSE=y
# CONFIG_MOUSE_PS2 is not set
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_APPLETOUCH is not set
# CONFIG_MOUSE_BCM5974 is not set
# CONFIG_MOUSE_CYAPA is not set
CONFIG_MOUSE_VSXXXAA=y
CONFIG_MOUSE_GPIO=m
CONFIG_MOUSE_SYNAPTICS_I2C=m
# CONFIG_MOUSE_SYNAPTICS_USB is not set
CONFIG_INPUT_JOYSTICK=y
CONFIG_JOYSTICK_ANALOG=y
CONFIG_JOYSTICK_A3D=m
CONFIG_JOYSTICK_ADI=y
CONFIG_JOYSTICK_COBRA=m
CONFIG_JOYSTICK_GF2K=m
# CONFIG_JOYSTICK_GRIP is not set
CONFIG_JOYSTICK_GRIP_MP=y
CONFIG_JOYSTICK_GUILLEMOT=y
# CONFIG_JOYSTICK_INTERACT is not set
CONFIG_JOYSTICK_SIDEWINDER=y
CONFIG_JOYSTICK_TMDC=y
CONFIG_JOYSTICK_IFORCE=m
CONFIG_JOYSTICK_IFORCE_USB=y
# CONFIG_JOYSTICK_IFORCE_232 is not set
CONFIG_JOYSTICK_WARRIOR=m
# CONFIG_JOYSTICK_MAGELLAN is not set
# CONFIG_JOYSTICK_SPACEORB is not set
CONFIG_JOYSTICK_SPACEBALL=m
CONFIG_JOYSTICK_STINGER=m
CONFIG_JOYSTICK_TWIDJOY=y
CONFIG_JOYSTICK_ZHENHUA=m
# CONFIG_JOYSTICK_AS5011 is not set
CONFIG_JOYSTICK_JOYDUMP=y
CONFIG_JOYSTICK_XPAD=m
# CONFIG_JOYSTICK_XPAD_FF is not set
# CONFIG_JOYSTICK_XPAD_LEDS is not set
CONFIG_INPUT_TABLET=y
CONFIG_TABLET_USB_ACECAD=m
# CONFIG_TABLET_USB_AIPTEK is not set
CONFIG_TABLET_USB_GTCO=m
CONFIG_TABLET_USB_HANWANG=y
CONFIG_TABLET_USB_KBTAB=y
# CONFIG_TABLET_USB_WACOM is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set
#
# Hardware I/O ports
#
CONFIG_SERIO=y
CONFIG_SERIO_I8042=m
CONFIG_SERIO_CT82C710=m
CONFIG_SERIO_PCIPS2=m
CONFIG_SERIO_LIBPS2=m
CONFIG_SERIO_RAW=m
CONFIG_SERIO_ALTERA_PS2=y
CONFIG_SERIO_PS2MULT=m
CONFIG_SERIO_ARC_PS2=m
CONFIG_HYPERV_KEYBOARD=m
CONFIG_GAMEPORT=y
CONFIG_GAMEPORT_NS558=m
# CONFIG_GAMEPORT_L4 is not set
CONFIG_GAMEPORT_EMU10K1=m
CONFIG_GAMEPORT_FM801=y
#
# Character devices
#
# CONFIG_TTY is not set
# CONFIG_DEVKMEM is not set
# CONFIG_IPMI_HANDLER is not set
CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_TIMERIOMEM=m
# CONFIG_HW_RANDOM_INTEL is not set
# CONFIG_HW_RANDOM_AMD is not set
CONFIG_HW_RANDOM_ATMEL=m
CONFIG_HW_RANDOM_VIA=m
# CONFIG_HW_RANDOM_VIRTIO is not set
CONFIG_HW_RANDOM_EXYNOS=m
CONFIG_HW_RANDOM_TPM=y
CONFIG_NVRAM=m
# CONFIG_APPLICOM is not set
CONFIG_RAW_DRIVER=y
CONFIG_MAX_RAW_DEVS=256
CONFIG_HPET=y
CONFIG_HPET_MMAP=y
CONFIG_HPET_MMAP_DEFAULT=y
CONFIG_HANGCHECK_TIMER=y
CONFIG_TCG_TPM=y
CONFIG_TCG_TIS=y
# CONFIG_TCG_TIS_I2C_ATMEL is not set
CONFIG_TCG_TIS_I2C_INFINEON=m
# CONFIG_TCG_TIS_I2C_NUVOTON is not set
CONFIG_TCG_NSC=m
CONFIG_TCG_ATMEL=m
CONFIG_TCG_INFINEON=y
CONFIG_TCG_ST33_I2C=m
CONFIG_TELCLOCK=m
CONFIG_DEVPORT=y
CONFIG_I2C=m
CONFIG_I2C_BOARDINFO=y
CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=m
CONFIG_I2C_MUX=m
#
# Multiplexer I2C Chip support
#
CONFIG_I2C_MUX_GPIO=m
CONFIG_I2C_MUX_PCA9541=m
CONFIG_I2C_MUX_PCA954x=m
CONFIG_I2C_MUX_PINCTRL=m
# CONFIG_I2C_HELPER_AUTO is not set
# CONFIG_I2C_SMBUS is not set
#
# I2C Algorithms
#
CONFIG_I2C_ALGOBIT=m
# CONFIG_I2C_ALGOPCF is not set
CONFIG_I2C_ALGOPCA=m
#
# I2C Hardware Bus support
#
#
# PC SMBus host controller drivers
#
CONFIG_I2C_ALI1535=m
CONFIG_I2C_ALI1563=m
# CONFIG_I2C_ALI15X3 is not set
CONFIG_I2C_AMD756=m
CONFIG_I2C_AMD756_S4882=m
CONFIG_I2C_AMD8111=m
CONFIG_I2C_I801=m
CONFIG_I2C_ISCH=m
# CONFIG_I2C_ISMT is not set
# CONFIG_I2C_PIIX4 is not set
CONFIG_I2C_NFORCE2=m
# CONFIG_I2C_NFORCE2_S4985 is not set
CONFIG_I2C_SIS5595=m
CONFIG_I2C_SIS630=m
# CONFIG_I2C_SIS96X is not set
# CONFIG_I2C_VIA is not set
CONFIG_I2C_VIAPRO=m
#
# ACPI drivers
#
# CONFIG_I2C_SCMI is not set
#
# I2C system bus drivers (mostly embedded / system-on-chip)
#
# CONFIG_I2C_CBUS_GPIO is not set
CONFIG_I2C_DESIGNWARE_CORE=m
CONFIG_I2C_DESIGNWARE_PLATFORM=m
CONFIG_I2C_DESIGNWARE_PCI=m
CONFIG_I2C_EG20T=m
# CONFIG_I2C_GPIO is not set
# CONFIG_I2C_OCORES is not set
CONFIG_I2C_PCA_PLATFORM=m
# CONFIG_I2C_PXA_PCI is not set
CONFIG_I2C_SH_MOBILE=m
CONFIG_I2C_SIMTEC=m
CONFIG_I2C_XILINX=m
CONFIG_I2C_RCAR=m
#
# External I2C/SMBus adapter drivers
#
CONFIG_I2C_DIOLAN_U2C=m
# CONFIG_I2C_PARPORT_LIGHT is not set
CONFIG_I2C_TINY_USB=m
# CONFIG_I2C_VIPERBOARD is not set
#
# Other I2C/SMBus bus drivers
#
# CONFIG_I2C_STUB is not set
CONFIG_I2C_DEBUG_CORE=y
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
CONFIG_SPI=y
# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_MASTER=y
#
# SPI Master Controller Drivers
#
# CONFIG_SPI_ALTERA is not set
# CONFIG_SPI_ATMEL is not set
CONFIG_SPI_BCM2835=m
CONFIG_SPI_BITBANG=y
# CONFIG_SPI_EP93XX is not set
CONFIG_SPI_GPIO=y
# CONFIG_SPI_IMX is not set
# CONFIG_SPI_FSL_DSPI is not set
# CONFIG_SPI_OC_TINY is not set
CONFIG_SPI_OMAP24XX=m
CONFIG_SPI_TI_QSPI=m
CONFIG_SPI_OMAP_100K=y
# CONFIG_SPI_ORION is not set
CONFIG_SPI_PXA2XX_DMA=y
CONFIG_SPI_PXA2XX=y
CONFIG_SPI_PXA2XX_PCI=y
CONFIG_SPI_SC18IS602=m
CONFIG_SPI_SH=m
# CONFIG_SPI_SH_HSPI is not set
# CONFIG_SPI_TEGRA114 is not set
CONFIG_SPI_TEGRA20_SFLASH=m
CONFIG_SPI_TEGRA20_SLINK=m
CONFIG_SPI_TOPCLIFF_PCH=y
CONFIG_SPI_TXX9=y
CONFIG_SPI_XCOMM=m
CONFIG_SPI_XILINX=y
CONFIG_SPI_DESIGNWARE=y
# CONFIG_SPI_DW_PCI is not set
CONFIG_SPI_DW_MMIO=m
#
# SPI Protocol Masters
#
CONFIG_SPI_SPIDEV=y
CONFIG_SPI_TLE62X0=m
CONFIG_HSI=y
CONFIG_HSI_BOARDINFO=y
#
# HSI clients
#
CONFIG_HSI_CHAR=m
#
# PPS support
#
CONFIG_PPS=y
CONFIG_PPS_DEBUG=y
#
# PPS clients support
#
CONFIG_PPS_CLIENT_KTIMER=y
# CONFIG_PPS_CLIENT_GPIO is not set
#
# PPS generators support
#
#
# PTP clock support
#
CONFIG_PTP_1588_CLOCK=y
#
# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
#
CONFIG_PTP_1588_CLOCK_PCH=m
CONFIG_PINCTRL=y
#
# Pin controllers
#
CONFIG_PINMUX=y
# CONFIG_PINCONF is not set
CONFIG_DEBUG_PINCTRL=y
# CONFIG_PINCTRL_BAYTRAIL is not set
CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
CONFIG_GPIOLIB=y
CONFIG_GPIO_DEVRES=y
CONFIG_GPIO_ACPI=y
# CONFIG_DEBUG_GPIO is not set
# CONFIG_GPIO_SYSFS is not set
CONFIG_GPIO_GENERIC=m
# CONFIG_GPIO_DA9052 is not set
CONFIG_GPIO_MAX730X=m
#
# Memory mapped GPIO drivers:
#
CONFIG_GPIO_GENERIC_PLATFORM=m
CONFIG_GPIO_IT8761E=y
# CONFIG_GPIO_F7188X is not set
CONFIG_GPIO_TS5500=m
CONFIG_GPIO_SCH=m
CONFIG_GPIO_ICH=m
# CONFIG_GPIO_VX855 is not set
# CONFIG_GPIO_LYNXPOINT is not set
#
# I2C GPIO expanders:
#
CONFIG_GPIO_MAX7300=m
CONFIG_GPIO_MAX732X=m
# CONFIG_GPIO_PCA953X is not set
CONFIG_GPIO_PCF857X=m
CONFIG_GPIO_WM831X=y
CONFIG_GPIO_ADP5588=m
#
# PCI GPIO expanders:
#
# CONFIG_GPIO_CS5535 is not set
CONFIG_GPIO_BT8XX=m
CONFIG_GPIO_AMD8111=m
CONFIG_GPIO_INTEL_MID=y
CONFIG_GPIO_PCH=m
CONFIG_GPIO_ML_IOH=y
CONFIG_GPIO_TIMBERDALE=y
CONFIG_GPIO_RDC321X=y
#
# SPI GPIO expanders:
#
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_74X164 is not set
#
# AC97 GPIO expanders:
#
#
# LPC GPIO expanders:
#
#
# MODULbus GPIO expanders:
#
CONFIG_GPIO_JANZ_TTL=m
#
# USB GPIO expanders:
#
CONFIG_GPIO_VIPERBOARD=m
CONFIG_W1=y
# CONFIG_W1_CON is not set
#
# 1-wire Bus Masters
#
CONFIG_W1_MASTER_MATROX=y
CONFIG_W1_MASTER_DS2490=m
CONFIG_W1_MASTER_DS2482=m
# CONFIG_W1_MASTER_DS1WM is not set
CONFIG_W1_MASTER_GPIO=y
#
# 1-wire Slaves
#
CONFIG_W1_SLAVE_THERM=y
# CONFIG_W1_SLAVE_SMEM is not set
CONFIG_W1_SLAVE_DS2408=m
CONFIG_W1_SLAVE_DS2408_READBACK=y
CONFIG_W1_SLAVE_DS2413=y
# CONFIG_W1_SLAVE_DS2423 is not set
CONFIG_W1_SLAVE_DS2431=y
CONFIG_W1_SLAVE_DS2433=y
# CONFIG_W1_SLAVE_DS2433_CRC is not set
# CONFIG_W1_SLAVE_DS2760 is not set
CONFIG_W1_SLAVE_DS2780=y
# CONFIG_W1_SLAVE_DS2781 is not set
# CONFIG_W1_SLAVE_DS28E04 is not set
CONFIG_W1_SLAVE_BQ27000=y
CONFIG_POWER_SUPPLY=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
# CONFIG_PDA_POWER is not set
CONFIG_WM831X_BACKUP=m
CONFIG_WM831X_POWER=y
# CONFIG_TEST_POWER is not set
CONFIG_BATTERY_DS2780=y
# CONFIG_BATTERY_DS2781 is not set
# CONFIG_BATTERY_DS2782 is not set
CONFIG_BATTERY_SBS=m
CONFIG_BATTERY_BQ27x00=m
# CONFIG_BATTERY_BQ27X00_I2C is not set
# CONFIG_BATTERY_BQ27X00_PLATFORM is not set
# CONFIG_BATTERY_DA9052 is not set
CONFIG_BATTERY_MAX17040=m
CONFIG_BATTERY_MAX17042=m
CONFIG_CHARGER_PCF50633=m
CONFIG_CHARGER_ISP1704=y
# CONFIG_CHARGER_MAX8903 is not set
CONFIG_CHARGER_LP8727=m
CONFIG_CHARGER_GPIO=m
# CONFIG_CHARGER_BQ2415X is not set
CONFIG_CHARGER_BQ24190=m
# CONFIG_CHARGER_BQ24735 is not set
CONFIG_CHARGER_SMB347=m
# CONFIG_BATTERY_GOLDFISH is not set
CONFIG_POWER_RESET=y
CONFIG_POWER_AVS=y
CONFIG_HWMON=m
CONFIG_HWMON_VID=m
# CONFIG_HWMON_DEBUG_CHIP is not set
#
# Native drivers
#
CONFIG_SENSORS_ABITUGURU=m
# CONFIG_SENSORS_ABITUGURU3 is not set
CONFIG_SENSORS_AD7314=m
CONFIG_SENSORS_AD7414=m
# CONFIG_SENSORS_AD7418 is not set
CONFIG_SENSORS_ADCXX=m
# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
CONFIG_SENSORS_ADM1029=m
CONFIG_SENSORS_ADM1031=m
CONFIG_SENSORS_ADM9240=m
CONFIG_SENSORS_ADT7X10=m
CONFIG_SENSORS_ADT7310=m
CONFIG_SENSORS_ADT7410=m
# CONFIG_SENSORS_ADT7411 is not set
CONFIG_SENSORS_ADT7462=m
CONFIG_SENSORS_ADT7470=m
CONFIG_SENSORS_ADT7475=m
CONFIG_SENSORS_ASC7621=m
# CONFIG_SENSORS_K8TEMP is not set
CONFIG_SENSORS_K10TEMP=m
CONFIG_SENSORS_FAM15H_POWER=m
CONFIG_SENSORS_ASB100=m
CONFIG_SENSORS_ATXP1=m
CONFIG_SENSORS_DS620=m
CONFIG_SENSORS_DS1621=m
CONFIG_SENSORS_DA9052_ADC=m
CONFIG_SENSORS_I5K_AMB=m
CONFIG_SENSORS_F71805F=m
# CONFIG_SENSORS_F71882FG is not set
CONFIG_SENSORS_F75375S=m
CONFIG_SENSORS_FSCHMD=m
CONFIG_SENSORS_G760A=m
CONFIG_SENSORS_G762=m
CONFIG_SENSORS_GL518SM=m
CONFIG_SENSORS_GL520SM=m
CONFIG_SENSORS_GPIO_FAN=m
CONFIG_SENSORS_HIH6130=m
CONFIG_SENSORS_HTU21=m
CONFIG_SENSORS_CORETEMP=m
CONFIG_SENSORS_IT87=m
CONFIG_SENSORS_JC42=m
# CONFIG_SENSORS_LINEAGE is not set
CONFIG_SENSORS_LM63=m
CONFIG_SENSORS_LM70=m
CONFIG_SENSORS_LM73=m
CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_LM77=m
CONFIG_SENSORS_LM78=m
CONFIG_SENSORS_LM80=m
CONFIG_SENSORS_LM83=m
# CONFIG_SENSORS_LM85 is not set
CONFIG_SENSORS_LM87=m
# CONFIG_SENSORS_LM90 is not set
CONFIG_SENSORS_LM92=m
# CONFIG_SENSORS_LM93 is not set
CONFIG_SENSORS_LTC4151=m
# CONFIG_SENSORS_LTC4215 is not set
CONFIG_SENSORS_LTC4245=m
# CONFIG_SENSORS_LTC4261 is not set
CONFIG_SENSORS_LM95234=m
CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_MAX1111=m
# CONFIG_SENSORS_MAX16065 is not set
# CONFIG_SENSORS_MAX1619 is not set
CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX6639=m
# CONFIG_SENSORS_MAX6642 is not set
CONFIG_SENSORS_MAX6650=m
CONFIG_SENSORS_MAX6697=m
CONFIG_SENSORS_MCP3021=m
# CONFIG_SENSORS_NCT6775 is not set
# CONFIG_SENSORS_NTC_THERMISTOR is not set
CONFIG_SENSORS_PC87360=m
CONFIG_SENSORS_PC87427=m
CONFIG_SENSORS_PCF8591=m
CONFIG_PMBUS=m
CONFIG_SENSORS_PMBUS=m
CONFIG_SENSORS_ADM1275=m
CONFIG_SENSORS_LM25066=m
# CONFIG_SENSORS_LTC2978 is not set
CONFIG_SENSORS_MAX16064=m
CONFIG_SENSORS_MAX34440=m
CONFIG_SENSORS_MAX8688=m
# CONFIG_SENSORS_UCD9000 is not set
# CONFIG_SENSORS_UCD9200 is not set
# CONFIG_SENSORS_ZL6100 is not set
CONFIG_SENSORS_SHT15=m
CONFIG_SENSORS_SHT21=m
# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_SMM665 is not set
# CONFIG_SENSORS_DME1737 is not set
CONFIG_SENSORS_EMC1403=m
# CONFIG_SENSORS_EMC2103 is not set
# CONFIG_SENSORS_EMC6W201 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
CONFIG_SENSORS_SMSC47M192=m
CONFIG_SENSORS_SMSC47B397=m
# CONFIG_SENSORS_SCH56XX_COMMON is not set
CONFIG_SENSORS_ADS1015=m
CONFIG_SENSORS_ADS7828=m
CONFIG_SENSORS_ADS7871=m
# CONFIG_SENSORS_AMC6821 is not set
# CONFIG_SENSORS_INA209 is not set
CONFIG_SENSORS_INA2XX=m
CONFIG_SENSORS_THMC50=m
CONFIG_SENSORS_TMP102=m
CONFIG_SENSORS_TMP401=m
# CONFIG_SENSORS_TMP421 is not set
# CONFIG_SENSORS_VIA_CPUTEMP is not set
CONFIG_SENSORS_VIA686A=m
CONFIG_SENSORS_VT1211=m
# CONFIG_SENSORS_VT8231 is not set
# CONFIG_SENSORS_W83781D is not set
# CONFIG_SENSORS_W83791D is not set
CONFIG_SENSORS_W83792D=m
# CONFIG_SENSORS_W83793 is not set
# CONFIG_SENSORS_W83795 is not set
CONFIG_SENSORS_W83L785TS=m
CONFIG_SENSORS_W83L786NG=m
CONFIG_SENSORS_W83627HF=m
CONFIG_SENSORS_W83627EHF=m
CONFIG_SENSORS_WM831X=m
CONFIG_SENSORS_APPLESMC=m
# CONFIG_SENSORS_MC13783_ADC is not set
#
# ACPI drivers
#
CONFIG_SENSORS_ACPI_POWER=m
CONFIG_SENSORS_ATK0110=m
CONFIG_THERMAL=y
# CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE is not set
CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE=y
# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
CONFIG_THERMAL_GOV_FAIR_SHARE=y
CONFIG_THERMAL_GOV_STEP_WISE=y
# CONFIG_THERMAL_GOV_USER_SPACE is not set
# CONFIG_THERMAL_EMULATION is not set
#
# Texas Instruments thermal drivers
#
# CONFIG_WATCHDOG is not set
CONFIG_SSB_POSSIBLE=y
#
# Sonics Silicon Backplane
#
# CONFIG_SSB is not set
CONFIG_BCMA_POSSIBLE=y
#
# Broadcom specific AMBA
#
# CONFIG_BCMA is not set
#
# Multifunction device drivers
#
CONFIG_MFD_CORE=y
CONFIG_MFD_CS5535=m
CONFIG_MFD_CROS_EC=y
CONFIG_MFD_CROS_EC_I2C=m
CONFIG_MFD_CROS_EC_SPI=y
CONFIG_PMIC_DA9052=y
CONFIG_MFD_DA9052_SPI=y
CONFIG_MFD_MC13783=m
CONFIG_MFD_MC13XXX=m
CONFIG_MFD_MC13XXX_SPI=m
CONFIG_MFD_MC13XXX_I2C=m
# CONFIG_HTC_PASIC3 is not set
CONFIG_LPC_ICH=m
CONFIG_LPC_SCH=m
CONFIG_MFD_JANZ_CMODIO=m
# CONFIG_MFD_KEMPLD is not set
CONFIG_EZX_PCAP=y
CONFIG_MFD_VIPERBOARD=y
# CONFIG_MFD_RETU is not set
CONFIG_MFD_PCF50633=m
CONFIG_PCF50633_ADC=m
CONFIG_PCF50633_GPIO=m
CONFIG_MFD_RDC321X=y
# CONFIG_MFD_RTSX_PCI is not set
# CONFIG_MFD_SI476X_CORE is not set
CONFIG_MFD_SM501=m
# CONFIG_MFD_SM501_GPIO is not set
# CONFIG_ABX500_CORE is not set
# CONFIG_MFD_STMPE is not set
# CONFIG_MFD_SYSCON is not set
# CONFIG_MFD_TI_AM335X_TSCADC is not set
CONFIG_TPS6105X=m
# CONFIG_TPS65010 is not set
CONFIG_TPS6507X=m
CONFIG_MFD_TPS65217=m
# CONFIG_MFD_TPS65912 is not set
# CONFIG_MFD_TPS65912_SPI is not set
CONFIG_MFD_WL1273_CORE=m
CONFIG_MFD_LM3533=m
CONFIG_MFD_TIMBERDALE=m
# CONFIG_MFD_TMIO is not set
# CONFIG_MFD_VX855 is not set
# CONFIG_MFD_ARIZONA_I2C is not set
# CONFIG_MFD_ARIZONA_SPI is not set
CONFIG_MFD_WM831X=y
CONFIG_MFD_WM831X_SPI=y
CONFIG_REGULATOR=y
CONFIG_REGULATOR_DEBUG=y
CONFIG_REGULATOR_FIXED_VOLTAGE=m
CONFIG_REGULATOR_VIRTUAL_CONSUMER=y
CONFIG_REGULATOR_USERSPACE_CONSUMER=y
CONFIG_REGULATOR_AD5398=m
CONFIG_REGULATOR_DA9052=m
CONFIG_REGULATOR_DA9210=m
CONFIG_REGULATOR_FAN53555=m
# CONFIG_REGULATOR_GPIO is not set
# CONFIG_REGULATOR_ISL6271A is not set
CONFIG_REGULATOR_LP3971=m
CONFIG_REGULATOR_LP3972=m
# CONFIG_REGULATOR_LP872X is not set
CONFIG_REGULATOR_LP8755=m
CONFIG_REGULATOR_MAX1586=m
CONFIG_REGULATOR_MAX8649=m
# CONFIG_REGULATOR_MAX8660 is not set
CONFIG_REGULATOR_MAX8952=m
CONFIG_REGULATOR_MAX8973=m
CONFIG_REGULATOR_MC13XXX_CORE=m
CONFIG_REGULATOR_MC13783=m
CONFIG_REGULATOR_MC13892=m
CONFIG_REGULATOR_PCAP=y
# CONFIG_REGULATOR_PCF50633 is not set
# CONFIG_REGULATOR_PFUZE100 is not set
# CONFIG_REGULATOR_TPS51632 is not set
CONFIG_REGULATOR_TPS6105X=m
# CONFIG_REGULATOR_TPS62360 is not set
CONFIG_REGULATOR_TPS65023=m
CONFIG_REGULATOR_TPS6507X=m
CONFIG_REGULATOR_TPS65217=m
CONFIG_REGULATOR_TPS6524X=y
CONFIG_REGULATOR_WM831X=y
CONFIG_MEDIA_SUPPORT=m
#
# Multimedia core support
#
CONFIG_MEDIA_CAMERA_SUPPORT=y
CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set
# CONFIG_MEDIA_RADIO_SUPPORT is not set
# CONFIG_MEDIA_RC_SUPPORT is not set
# CONFIG_MEDIA_CONTROLLER is not set
CONFIG_VIDEO_DEV=m
CONFIG_VIDEO_V4L2=m
CONFIG_VIDEO_ADV_DEBUG=y
# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
CONFIG_VIDEO_TUNER=m
CONFIG_V4L2_MEM2MEM_DEV=m
CONFIG_VIDEOBUF_GEN=m
CONFIG_VIDEOBUF_DMA_SG=m
CONFIG_VIDEOBUF2_CORE=m
CONFIG_VIDEOBUF2_MEMOPS=m
CONFIG_VIDEOBUF2_DMA_CONTIG=m
CONFIG_VIDEOBUF2_VMALLOC=m
CONFIG_VIDEO_V4L2_INT_DEVICE=m
# CONFIG_TTPCI_EEPROM is not set
#
# Media drivers
#
# CONFIG_MEDIA_USB_SUPPORT is not set
CONFIG_MEDIA_PCI_SUPPORT=y
#
# Media capture support
#
#
# Media capture/analog TV support
#
# CONFIG_VIDEO_ZORAN is not set
# CONFIG_VIDEO_HEXIUM_GEMINI is not set
CONFIG_VIDEO_HEXIUM_ORION=m
CONFIG_VIDEO_MXB=m
#
# Media capture/analog/hybrid TV support
#
CONFIG_VIDEO_CX25821=m
CONFIG_VIDEO_SAA7134=m
# CONFIG_V4L_PLATFORM_DRIVERS is not set
# CONFIG_V4L_MEM2MEM_DRIVERS is not set
CONFIG_V4L_TEST_DRIVERS=y
CONFIG_VIDEO_VIVI=m
CONFIG_VIDEO_MEM2MEM_TESTDEV=m
#
# Supported MMC/SDIO adapters
#
CONFIG_VIDEO_BTCX=m
CONFIG_VIDEO_TVEEPROM=m
CONFIG_CYPRESS_FIRMWARE=m
CONFIG_VIDEO_SAA7146=m
CONFIG_VIDEO_SAA7146_VV=m
#
# Media ancillary drivers (tuners, sensors, i2c, frontends)
#
# CONFIG_MEDIA_SUBDRV_AUTOSELECT is not set
CONFIG_MEDIA_ATTACH=y
#
# Encoders, decoders, sensors and other helper chips
#
#
# Audio decoders, processors and mixers
#
CONFIG_VIDEO_TVAUDIO=m
# CONFIG_VIDEO_TDA7432 is not set
# CONFIG_VIDEO_TDA9840 is not set
CONFIG_VIDEO_TEA6415C=m
CONFIG_VIDEO_TEA6420=m
# CONFIG_VIDEO_MSP3400 is not set
# CONFIG_VIDEO_CS5345 is not set
CONFIG_VIDEO_CS53L32A=m
CONFIG_VIDEO_TLV320AIC23B=m
# CONFIG_VIDEO_UDA1342 is not set
# CONFIG_VIDEO_WM8775 is not set
CONFIG_VIDEO_WM8739=m
CONFIG_VIDEO_VP27SMPX=m
CONFIG_VIDEO_SONY_BTF_MPX=m
#
# RDS decoders
#
# CONFIG_VIDEO_SAA6588 is not set
#
# Video decoders
#
# CONFIG_VIDEO_ADV7180 is not set
# CONFIG_VIDEO_ADV7183 is not set
# CONFIG_VIDEO_BT819 is not set
CONFIG_VIDEO_BT856=m
# CONFIG_VIDEO_BT866 is not set
CONFIG_VIDEO_KS0127=m
# CONFIG_VIDEO_ML86V7667 is not set
CONFIG_VIDEO_SAA7110=m
CONFIG_VIDEO_SAA711X=m
# CONFIG_VIDEO_SAA7191 is not set
CONFIG_VIDEO_TVP514X=m
CONFIG_VIDEO_TVP5150=m
CONFIG_VIDEO_TVP7002=m
CONFIG_VIDEO_TW2804=m
# CONFIG_VIDEO_TW9903 is not set
CONFIG_VIDEO_TW9906=m
CONFIG_VIDEO_VPX3220=m
#
# Video and audio decoders
#
CONFIG_VIDEO_SAA717X=m
# CONFIG_VIDEO_CX25840 is not set
#
# Video encoders
#
CONFIG_VIDEO_SAA7127=m
CONFIG_VIDEO_SAA7185=m
# CONFIG_VIDEO_ADV7170 is not set
CONFIG_VIDEO_ADV7175=m
CONFIG_VIDEO_ADV7343=m
# CONFIG_VIDEO_ADV7393 is not set
CONFIG_VIDEO_AK881X=m
CONFIG_VIDEO_THS8200=m
#
# Camera sensor devices
#
CONFIG_VIDEO_OV7640=m
CONFIG_VIDEO_OV7670=m
CONFIG_VIDEO_VS6624=m
CONFIG_VIDEO_MT9V011=m
CONFIG_VIDEO_TCM825X=m
# CONFIG_VIDEO_SR030PC30 is not set
#
# Flash devices
#
#
# Video improvement chips
#
# CONFIG_VIDEO_UPD64031A is not set
CONFIG_VIDEO_UPD64083=m
#
# Miscellaneous helper chips
#
CONFIG_VIDEO_THS7303=m
CONFIG_VIDEO_M52790=m
#
# Sensors used on soc_camera driver
#
CONFIG_MEDIA_TUNER=m
#
# Customize TV tuners
#
# CONFIG_MEDIA_TUNER_SIMPLE is not set
CONFIG_MEDIA_TUNER_TDA8290=m
CONFIG_MEDIA_TUNER_TDA827X=m
CONFIG_MEDIA_TUNER_TDA18271=m
CONFIG_MEDIA_TUNER_TDA9887=m
# CONFIG_MEDIA_TUNER_TEA5761 is not set
CONFIG_MEDIA_TUNER_TEA5767=m
CONFIG_MEDIA_TUNER_MT20XX=m
CONFIG_MEDIA_TUNER_MT2060=m
# CONFIG_MEDIA_TUNER_MT2063 is not set
# CONFIG_MEDIA_TUNER_MT2266 is not set
CONFIG_MEDIA_TUNER_MT2131=m
CONFIG_MEDIA_TUNER_QT1010=m
# CONFIG_MEDIA_TUNER_XC2028 is not set
CONFIG_MEDIA_TUNER_XC5000=m
CONFIG_MEDIA_TUNER_XC4000=m
CONFIG_MEDIA_TUNER_MXL5005S=m
CONFIG_MEDIA_TUNER_MXL5007T=m
CONFIG_MEDIA_TUNER_MC44S803=m
CONFIG_MEDIA_TUNER_MAX2165=m
CONFIG_MEDIA_TUNER_TDA18218=m
# CONFIG_MEDIA_TUNER_FC0011 is not set
CONFIG_MEDIA_TUNER_FC0012=m
CONFIG_MEDIA_TUNER_FC0013=m
# CONFIG_MEDIA_TUNER_TDA18212 is not set
CONFIG_MEDIA_TUNER_E4000=m
CONFIG_MEDIA_TUNER_FC2580=m
CONFIG_MEDIA_TUNER_TUA9001=m
CONFIG_MEDIA_TUNER_IT913X=m
CONFIG_MEDIA_TUNER_R820T=m
#
# Customise DVB Frontends
#
CONFIG_DVB_AU8522=m
CONFIG_DVB_AU8522_V4L=m
CONFIG_DVB_TUNER_DIB0070=m
CONFIG_DVB_TUNER_DIB0090=m
#
# Tools to develop new frontends
#
CONFIG_DVB_DUMMY_FE=m
#
# Graphics support
#
CONFIG_AGP=m
# CONFIG_AGP_AMD64 is not set
CONFIG_AGP_INTEL=m
CONFIG_AGP_SIS=m
CONFIG_AGP_VIA=m
CONFIG_VGA_ARB=y
CONFIG_VGA_ARB_MAX_GPUS=16
CONFIG_VGA_SWITCHEROO=y
# CONFIG_DRM is not set
# CONFIG_VGASTATE is not set
CONFIG_VIDEO_OUTPUT_CONTROL=y
# CONFIG_FB is not set
# CONFIG_EXYNOS_VIDEO is not set
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE=y
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
# CONFIG_SND is not set
CONFIG_SOUND_PRIME=m
#
# HID support
#
CONFIG_HID=m
CONFIG_HIDRAW=y
# CONFIG_UHID is not set
# CONFIG_HID_GENERIC is not set
#
# Special HID drivers
#
CONFIG_HID_A4TECH=m
CONFIG_HID_ACRUX=m
CONFIG_HID_ACRUX_FF=y
CONFIG_HID_APPLE=m
CONFIG_HID_AUREAL=m
# CONFIG_HID_BELKIN is not set
# CONFIG_HID_CHERRY is not set
CONFIG_HID_CHICONY=m
# CONFIG_HID_CYPRESS is not set
CONFIG_HID_DRAGONRISE=m
# CONFIG_DRAGONRISE_FF is not set
CONFIG_HID_EMS_FF=m
# CONFIG_HID_ELECOM is not set
CONFIG_HID_EZKEY=m
CONFIG_HID_KEYTOUCH=m
CONFIG_HID_KYE=m
CONFIG_HID_UCLOGIC=m
CONFIG_HID_WALTOP=m
CONFIG_HID_GYRATION=m
CONFIG_HID_ICADE=m
CONFIG_HID_TWINHAN=m
CONFIG_HID_KENSINGTON=m
CONFIG_HID_LCPOWER=m
CONFIG_HID_LENOVO_TPKBD=m
# CONFIG_HID_LOGITECH is not set
# CONFIG_HID_MAGICMOUSE is not set
CONFIG_HID_MICROSOFT=m
CONFIG_HID_MONTEREY=m
CONFIG_HID_MULTITOUCH=m
CONFIG_HID_ORTEK=m
CONFIG_HID_PANTHERLORD=m
# CONFIG_PANTHERLORD_FF is not set
CONFIG_HID_PETALYNX=m
CONFIG_HID_PICOLCD=m
CONFIG_HID_PICOLCD_LEDS=y
# CONFIG_HID_PRIMAX is not set
CONFIG_HID_SAITEK=m
CONFIG_HID_SAMSUNG=m
CONFIG_HID_SPEEDLINK=m
CONFIG_HID_STEELSERIES=m
CONFIG_HID_SUNPLUS=m
CONFIG_HID_GREENASIA=m
CONFIG_GREENASIA_FF=y
CONFIG_HID_HYPERV_MOUSE=m
# CONFIG_HID_SMARTJOYPLUS is not set
CONFIG_HID_TIVO=m
# CONFIG_HID_TOPSEED is not set
CONFIG_HID_THINGM=m
CONFIG_HID_THRUSTMASTER=m
CONFIG_THRUSTMASTER_FF=y
CONFIG_HID_WACOM=m
CONFIG_HID_WIIMOTE=m
CONFIG_HID_XINMO=m
CONFIG_HID_ZEROPLUS=m
CONFIG_ZEROPLUS_FF=y
CONFIG_HID_ZYDACRON=m
CONFIG_HID_SENSOR_HUB=m
#
# USB HID support
#
# CONFIG_USB_HID is not set
# CONFIG_HID_PID is not set
#
# USB HID Boot Protocol drivers
#
CONFIG_USB_KBD=m
CONFIG_USB_MOUSE=y
#
# I2C HID support
#
# CONFIG_I2C_HID is not set
CONFIG_USB_OHCI_LITTLE_ENDIAN=y
CONFIG_USB_SUPPORT=y
CONFIG_USB_COMMON=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB=y
CONFIG_USB_DEBUG=y
# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
#
# Miscellaneous USB options
#
# CONFIG_USB_DEFAULT_PERSIST is not set
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_OTG_WHITELIST is not set
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
CONFIG_USB_MON=y
CONFIG_USB_WUSB=m
CONFIG_USB_WUSB_CBAF=y
# CONFIG_USB_WUSB_CBAF_DEBUG is not set
#
# USB Host Controller Drivers
#
CONFIG_USB_C67X00_HCD=y
# CONFIG_USB_XHCI_HCD is not set
# CONFIG_USB_EHCI_HCD is not set
CONFIG_USB_OXU210HP_HCD=m
CONFIG_USB_ISP116X_HCD=y
CONFIG_USB_ISP1760_HCD=y
# CONFIG_USB_ISP1362_HCD is not set
CONFIG_USB_FUSBH200_HCD=y
CONFIG_USB_FOTG210_HCD=y
CONFIG_USB_OHCI_HCD=m
CONFIG_USB_OHCI_HCD_PCI=m
CONFIG_USB_OHCI_HCD_PLATFORM=m
# CONFIG_USB_UHCI_HCD is not set
CONFIG_USB_SL811_HCD=m
CONFIG_USB_SL811_HCD_ISO=y
CONFIG_USB_R8A66597_HCD=m
CONFIG_USB_WHCI_HCD=m
# CONFIG_USB_HWA_HCD is not set
CONFIG_USB_HCD_TEST_MODE=y
#
# USB Device Class drivers
#
CONFIG_USB_PRINTER=m
# CONFIG_USB_WDM is not set
CONFIG_USB_TMC=m
#
# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
#
#
# also be needed; see USB_STORAGE Help for more info
#
CONFIG_USB_STORAGE=m
# CONFIG_USB_STORAGE_DEBUG is not set
CONFIG_USB_STORAGE_REALTEK=m
# CONFIG_USB_STORAGE_DATAFAB is not set
CONFIG_USB_STORAGE_FREECOM=m
CONFIG_USB_STORAGE_ISD200=m
CONFIG_USB_STORAGE_USBAT=m
CONFIG_USB_STORAGE_SDDR09=m
CONFIG_USB_STORAGE_SDDR55=m
# CONFIG_USB_STORAGE_JUMPSHOT is not set
CONFIG_USB_STORAGE_ALAUDA=m
CONFIG_USB_STORAGE_ONETOUCH=m
CONFIG_USB_STORAGE_KARMA=m
# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
CONFIG_USB_STORAGE_ENE_UB6250=m
#
# USB Imaging devices
#
# CONFIG_USB_MDC800 is not set
# CONFIG_USB_MICROTEK is not set
# CONFIG_USB_DWC3 is not set
#
# USB port drivers
#
#
# USB Miscellaneous drivers
#
# CONFIG_USB_EMI62 is not set
CONFIG_USB_EMI26=y
# CONFIG_USB_ADUTUX is not set
# CONFIG_USB_SEVSEG is not set
CONFIG_USB_RIO500=y
# CONFIG_USB_LEGOTOWER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_LED is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_IDMOUSE is not set
# CONFIG_USB_FTDI_ELAN is not set
# CONFIG_USB_APPLEDISPLAY is not set
CONFIG_USB_LD=m
CONFIG_USB_TRANCEVIBRATOR=y
CONFIG_USB_IOWARRIOR=y
# CONFIG_USB_TEST is not set
# CONFIG_USB_EHSET_TEST_FIXTURE is not set
CONFIG_USB_ISIGHTFW=m
CONFIG_USB_YUREX=m
CONFIG_USB_EZUSB_FX2=m
CONFIG_USB_HSIC_USB3503=m
CONFIG_USB_ATM=m
CONFIG_USB_SPEEDTOUCH=m
CONFIG_USB_CXACRU=m
# CONFIG_USB_UEAGLEATM is not set
CONFIG_USB_XUSBATM=m
#
# USB Physical Layer drivers
#
CONFIG_USB_PHY=y
CONFIG_NOP_USB_XCEIV=m
# CONFIG_OMAP_CONTROL_USB is not set
# CONFIG_OMAP_USB3 is not set
CONFIG_AM335X_CONTROL_USB=m
CONFIG_AM335X_PHY_USB=m
CONFIG_SAMSUNG_USBPHY=m
CONFIG_SAMSUNG_USB2PHY=m
# CONFIG_SAMSUNG_USB3PHY is not set
CONFIG_USB_GPIO_VBUS=m
# CONFIG_USB_ISP1301 is not set
CONFIG_USB_RCAR_PHY=y
CONFIG_USB_RCAR_GEN2_PHY=y
# CONFIG_USB_GADGET is not set
CONFIG_UWB=m
# CONFIG_UWB_HWA is not set
CONFIG_UWB_WHCI=m
CONFIG_MMC=y
CONFIG_MMC_DEBUG=y
# CONFIG_MMC_UNSAFE_RESUME is not set
# CONFIG_MMC_CLKGATE is not set
#
# MMC/SD/SDIO Card Drivers
#
# CONFIG_MMC_BLOCK is not set
CONFIG_MMC_TEST=m
#
# MMC/SD/SDIO Host Controller Drivers
#
CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_RICOH_MMC=y
CONFIG_MMC_SDHCI_ACPI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_PXAV3=m
CONFIG_MMC_SDHCI_PXAV2=m
# CONFIG_MMC_OMAP_HS is not set
CONFIG_MMC_TIFM_SD=y
# CONFIG_MMC_SPI is not set
CONFIG_MMC_CB710=m
# CONFIG_MMC_VIA_SDMMC is not set
# CONFIG_MMC_VUB300 is not set
CONFIG_MMC_USHC=y
# CONFIG_MEMSTICK is not set
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=m
#
# LED drivers
#
CONFIG_LEDS_ATMEL_PWM=m
CONFIG_LEDS_LM3530=m
CONFIG_LEDS_LM3533=m
CONFIG_LEDS_LM3642=m
# CONFIG_LEDS_PCA9532 is not set
CONFIG_LEDS_GPIO=m
CONFIG_LEDS_LP3944=m
CONFIG_LEDS_LP55XX_COMMON=m
CONFIG_LEDS_LP5521=m
# CONFIG_LEDS_LP5523 is not set
# CONFIG_LEDS_LP5562 is not set
CONFIG_LEDS_LP8501=m
CONFIG_LEDS_CLEVO_MAIL=m
CONFIG_LEDS_PCA955X=m
# CONFIG_LEDS_PCA963X is not set
CONFIG_LEDS_PCA9685=m
CONFIG_LEDS_WM831X_STATUS=m
CONFIG_LEDS_DA9052=m
CONFIG_LEDS_DAC124S085=m
CONFIG_LEDS_PWM=m
# CONFIG_LEDS_REGULATOR is not set
CONFIG_LEDS_BD2802=m
CONFIG_LEDS_INTEL_SS4200=m
# CONFIG_LEDS_LT3593 is not set
CONFIG_LEDS_MC13783=m
CONFIG_LEDS_TCA6507=m
CONFIG_LEDS_LM355x=m
CONFIG_LEDS_OT200=m
CONFIG_LEDS_BLINKM=m
#
# LED Triggers
#
# CONFIG_LEDS_TRIGGERS is not set
CONFIG_ACCESSIBILITY=y
CONFIG_INFINIBAND=y
# CONFIG_INFINIBAND_USER_MAD is not set
CONFIG_INFINIBAND_USER_ACCESS=m
CONFIG_INFINIBAND_USER_MEM=y
# CONFIG_INFINIBAND_MTHCA is not set
CONFIG_INFINIBAND_QIB=m
CONFIG_INFINIBAND_QIB_DCA=y
# CONFIG_INFINIBAND_AMSO1100 is not set
CONFIG_INFINIBAND_NES=m
CONFIG_INFINIBAND_NES_DEBUG=y
# CONFIG_INFINIBAND_SRP is not set
# CONFIG_INFINIBAND_SRPT is not set
CONFIG_EDAC=y
CONFIG_EDAC_LEGACY_SYSFS=y
CONFIG_EDAC_DEBUG=y
CONFIG_EDAC_MM_EDAC=y
# CONFIG_EDAC_E752X is not set
CONFIG_EDAC_I82975X=y
# CONFIG_EDAC_I3000 is not set
CONFIG_EDAC_I3200=m
CONFIG_EDAC_X38=m
CONFIG_EDAC_I5400=m
CONFIG_EDAC_I5000=y
# CONFIG_EDAC_I5100 is not set
# CONFIG_EDAC_I7300 is not set
CONFIG_RTC_LIB=y
# CONFIG_RTC_CLASS is not set
CONFIG_DMADEVICES=y
# CONFIG_DMADEVICES_DEBUG is not set
#
# DMA Devices
#
CONFIG_INTEL_MID_DMAC=y
CONFIG_INTEL_IOATDMA=y
CONFIG_DW_DMAC_CORE=m
CONFIG_DW_DMAC=m
CONFIG_DW_DMAC_PCI=m
# CONFIG_TIMB_DMA is not set
CONFIG_PCH_DMA=m
CONFIG_DMA_ENGINE=y
CONFIG_DMA_ACPI=y
#
# DMA Clients
#
# CONFIG_NET_DMA is not set
CONFIG_ASYNC_TX_DMA=y
CONFIG_DMATEST=y
CONFIG_DCA=y
# CONFIG_AUXDISPLAY is not set
CONFIG_UIO=m
CONFIG_UIO_CIF=m
CONFIG_UIO_PDRV_GENIRQ=m
# CONFIG_UIO_DMEM_GENIRQ is not set
CONFIG_UIO_AEC=m
CONFIG_UIO_SERCOS3=m
CONFIG_UIO_PCI_GENERIC=m
# CONFIG_UIO_NETX is not set
CONFIG_UIO_MF624=m
# CONFIG_VFIO is not set
# CONFIG_VIRT_DRIVERS is not set
CONFIG_VIRTIO=y
#
# Virtio drivers
#
CONFIG_VIRTIO_PCI=m
CONFIG_VIRTIO_BALLOON=m
CONFIG_VIRTIO_MMIO=m
CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
#
# Microsoft Hyper-V guest support
#
CONFIG_HYPERV=y
# CONFIG_HYPERV_UTILS is not set
# CONFIG_HYPERV_BALLOON is not set
CONFIG_STAGING=y
# CONFIG_SLICOSS is not set
CONFIG_USBIP_CORE=y
CONFIG_USBIP_VHCI_HCD=m
# CONFIG_USBIP_HOST is not set
CONFIG_USBIP_DEBUG=y
CONFIG_ECHO=y
CONFIG_COMEDI=m
# CONFIG_COMEDI_DEBUG is not set
CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048
CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480
# CONFIG_COMEDI_MISC_DRIVERS is not set
# CONFIG_COMEDI_ISA_DRIVERS is not set
CONFIG_COMEDI_PCI_DRIVERS=y
CONFIG_COMEDI_8255_PCI=m
CONFIG_COMEDI_ADDI_WATCHDOG=m
CONFIG_COMEDI_ADDI_APCI_035=m
CONFIG_COMEDI_ADDI_APCI_1032=m
CONFIG_COMEDI_ADDI_APCI_1500=m
CONFIG_COMEDI_ADDI_APCI_1516=m
CONFIG_COMEDI_ADDI_APCI_1564=m
CONFIG_COMEDI_ADDI_APCI_16XX=m
# CONFIG_COMEDI_ADDI_APCI_2032 is not set
CONFIG_COMEDI_ADDI_APCI_2200=m
CONFIG_COMEDI_ADDI_APCI_3120=m
# CONFIG_COMEDI_ADDI_APCI_3501 is not set
CONFIG_COMEDI_ADDI_APCI_3XXX=m
CONFIG_COMEDI_ADL_PCI6208=m
# CONFIG_COMEDI_ADL_PCI7X3X is not set
CONFIG_COMEDI_ADL_PCI8164=m
# CONFIG_COMEDI_ADL_PCI9111 is not set
CONFIG_COMEDI_ADL_PCI9118=m
CONFIG_COMEDI_ADV_PCI1710=m
CONFIG_COMEDI_ADV_PCI1723=m
CONFIG_COMEDI_ADV_PCI1724=m
CONFIG_COMEDI_ADV_PCI_DIO=m
CONFIG_COMEDI_AMPLC_DIO200_PCI=m
CONFIG_COMEDI_AMPLC_PC236_PCI=m
CONFIG_COMEDI_AMPLC_PC263_PCI=m
# CONFIG_COMEDI_AMPLC_PCI224 is not set
CONFIG_COMEDI_AMPLC_PCI230=m
CONFIG_COMEDI_CONTEC_PCI_DIO=m
# CONFIG_COMEDI_DAS08_PCI is not set
# CONFIG_COMEDI_DT3000 is not set
CONFIG_COMEDI_DYNA_PCI10XX=m
# CONFIG_COMEDI_GSC_HPDI is not set
CONFIG_COMEDI_ICP_MULTI=m
CONFIG_COMEDI_DAQBOARD2000=m
# CONFIG_COMEDI_JR3_PCI is not set
CONFIG_COMEDI_KE_COUNTER=m
# CONFIG_COMEDI_CB_PCIDAS64 is not set
CONFIG_COMEDI_CB_PCIDAS=m
# CONFIG_COMEDI_CB_PCIDDA is not set
CONFIG_COMEDI_CB_PCIMDAS=m
CONFIG_COMEDI_CB_PCIMDDA=m
# CONFIG_COMEDI_ME4000 is not set
CONFIG_COMEDI_ME_DAQ=m
# CONFIG_COMEDI_NI_6527 is not set
CONFIG_COMEDI_NI_65XX=m
CONFIG_COMEDI_NI_660X=m
# CONFIG_COMEDI_NI_670X is not set
CONFIG_COMEDI_NI_LABPC_PCI=m
# CONFIG_COMEDI_NI_PCIDIO is not set
# CONFIG_COMEDI_NI_PCIMIO is not set
CONFIG_COMEDI_RTD520=m
CONFIG_COMEDI_S626=m
CONFIG_COMEDI_MITE=m
CONFIG_COMEDI_NI_TIOCMD=m
# CONFIG_COMEDI_USB_DRIVERS is not set
CONFIG_COMEDI_8255=m
CONFIG_COMEDI_FC=m
CONFIG_COMEDI_AMPLC_DIO200=m
CONFIG_COMEDI_AMPLC_PC236=m
CONFIG_COMEDI_NI_LABPC=m
CONFIG_COMEDI_NI_TIO=m
CONFIG_RTS5139=m
# CONFIG_RTS5139_DEBUG is not set
CONFIG_TRANZPORT=m
CONFIG_DX_SEP=m
# CONFIG_ZSMALLOC is not set
CONFIG_CRYSTALHD=m
CONFIG_ACPI_QUICKSTART=y
# CONFIG_USB_ENESTORAGE is not set
CONFIG_BCM_WIMAX=m
# CONFIG_FT1000 is not set
#
# Speakup console speech
#
CONFIG_TOUCHSCREEN_CLEARPAD_TM1217=m
CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4=m
CONFIG_STAGING_MEDIA=y
CONFIG_VIDEO_DT3155=m
# CONFIG_DT3155_CCIR is not set
# CONFIG_DT3155_STREAMING is not set
# CONFIG_USB_MSI3101 is not set
#
# Android
#
CONFIG_ANDROID=y
CONFIG_ANDROID_BINDER_IPC=y
# CONFIG_ANDROID_LOGGER is not set
# CONFIG_ANDROID_TIMED_OUTPUT is not set
# CONFIG_ANDROID_LOW_MEMORY_KILLER is not set
# CONFIG_SYNC is not set
CONFIG_USB_WPAN_HCD=y
CONFIG_WIMAX_GDM72XX=m
CONFIG_WIMAX_GDM72XX_QOS=y
# CONFIG_WIMAX_GDM72XX_K_MODE is not set
# CONFIG_WIMAX_GDM72XX_WIMAX2 is not set
# CONFIG_WIMAX_GDM72XX_USB is not set
CONFIG_WIMAX_GDM72XX_SDIO=y
# CONFIG_CED1401 is not set
# CONFIG_USB_DWC2 is not set
# CONFIG_LUSTRE_FS is not set
CONFIG_XILLYBUS=m
CONFIG_XILLYBUS_PCIE=m
# CONFIG_X86_PLATFORM_DEVICES is not set
CONFIG_CLKDEV_LOOKUP=y
CONFIG_HAVE_CLK_PREPARE=y
CONFIG_COMMON_CLK=y
#
# Common Clock Framework
#
# CONFIG_COMMON_CLK_DEBUG is not set
CONFIG_COMMON_CLK_WM831X=m
CONFIG_COMMON_CLK_SI5351=m
#
# Hardware Spinlock drivers
#
CONFIG_CLKEVT_I8253=y
CONFIG_I8253_LOCK=y
CONFIG_CLKBLD_I8253=y
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
# CONFIG_MAILBOX is not set
CONFIG_IOMMU_API=y
CONFIG_IOMMU_SUPPORT=y
CONFIG_AMD_IOMMU=y
# CONFIG_AMD_IOMMU_STATS is not set
# CONFIG_AMD_IOMMU_V2 is not set
CONFIG_DMAR_TABLE=y
# CONFIG_INTEL_IOMMU is not set
CONFIG_IRQ_REMAP=y
#
# Remoteproc drivers
#
# CONFIG_STE_MODEM_RPROC is not set
#
# Rpmsg drivers
#
# CONFIG_PM_DEVFREQ is not set
# CONFIG_EXTCON is not set
CONFIG_MEMORY=y
# CONFIG_IIO is not set
# CONFIG_NTB is not set
CONFIG_VME_BUS=m
#
# VME Bridge Drivers
#
CONFIG_VME_CA91CX42=m
CONFIG_VME_TSI148=m
#
# VME Board Drivers
#
# CONFIG_VMIVME_7805 is not set
#
# VME Device Drivers
#
CONFIG_VME_USER=m
# CONFIG_VME_PIO2 is not set
CONFIG_PWM=y
CONFIG_PWM_SYSFS=y
CONFIG_IPACK_BUS=m
# CONFIG_BOARD_TPCI200 is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_FMC=y
CONFIG_FMC_FAKEDEV=y
CONFIG_FMC_TRIVIAL=m
CONFIG_FMC_WRITE_EEPROM=m
CONFIG_FMC_CHARDEV=y
#
# PHY Subsystem
#
CONFIG_GENERIC_PHY=m
# CONFIG_PHY_EXYNOS_MIPI_VIDEO is not set
CONFIG_POWERCAP=y
CONFIG_INTEL_RAPL=y
#
# Firmware Drivers
#
# CONFIG_EDD is not set
CONFIG_FIRMWARE_MEMMAP=y
# CONFIG_DELL_RBU is not set
CONFIG_DCDBAS=m
CONFIG_DMIID=y
# CONFIG_DMI_SYSFS is not set
CONFIG_ISCSI_IBFT_FIND=y
CONFIG_GOOGLE_FIRMWARE=y
#
# Google Firmware Drivers
#
CONFIG_GOOGLE_SMI=y
# CONFIG_GOOGLE_MEMCONSOLE is not set
#
# EFI (Extensible Firmware Interface) Support
#
CONFIG_EFI_VARS=y
# CONFIG_UEFI_CPER is not set
#
# File systems
#
CONFIG_DCACHE_WORD_ACCESS=y
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
# CONFIG_EXT2_FS_SECURITY is not set
CONFIG_EXT2_FS_XIP=y
# CONFIG_EXT3_FS is not set
CONFIG_EXT4_FS=m
CONFIG_EXT4_USE_FOR_EXT23=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y
CONFIG_EXT4_DEBUG=y
CONFIG_FS_XIP=y
CONFIG_JBD2=m
# CONFIG_JBD2_DEBUG is not set
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=m
CONFIG_REISERFS_CHECK=y
CONFIG_REISERFS_FS_XATTR=y
# CONFIG_REISERFS_FS_POSIX_ACL is not set
CONFIG_REISERFS_FS_SECURITY=y
CONFIG_JFS_FS=y
CONFIG_JFS_POSIX_ACL=y
# CONFIG_JFS_SECURITY is not set
# CONFIG_JFS_DEBUG is not set
CONFIG_JFS_STATISTICS=y
CONFIG_XFS_FS=m
# CONFIG_XFS_QUOTA is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_RT=y
CONFIG_XFS_DEBUG=y
CONFIG_GFS2_FS=y
CONFIG_OCFS2_FS=m
CONFIG_OCFS2_FS_O2CB=m
# CONFIG_OCFS2_FS_STATS is not set
# CONFIG_OCFS2_DEBUG_MASKLOG is not set
CONFIG_OCFS2_DEBUG_FS=y
CONFIG_BTRFS_FS=y
CONFIG_BTRFS_FS_POSIX_ACL=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BTRFS_DEBUG is not set
CONFIG_BTRFS_ASSERT=y
CONFIG_NILFS2_FS=m
CONFIG_FS_POSIX_ACL=y
CONFIG_EXPORTFS=m
CONFIG_FILE_LOCKING=y
CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y
# CONFIG_INOTIFY_USER is not set
CONFIG_FANOTIFY=y
# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
CONFIG_QUOTA=y
# CONFIG_QUOTA_NETLINK_INTERFACE is not set
# CONFIG_PRINT_QUOTA_WARNING is not set
# CONFIG_QUOTA_DEBUG is not set
CONFIG_QUOTA_TREE=m
CONFIG_QFMT_V1=m
# CONFIG_QFMT_V2 is not set
CONFIG_QUOTACTL=y
CONFIG_AUTOFS4_FS=m
CONFIG_FUSE_FS=m
CONFIG_CUSE=m
#
# Caches
#
CONFIG_FSCACHE=m
# CONFIG_FSCACHE_DEBUG is not set
# CONFIG_CACHEFILES is not set
#
# CD-ROM/DVD Filesystems
#
# CONFIG_ISO9660_FS is not set
# CONFIG_UDF_FS is not set
#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
# CONFIG_VFAT_FS is not set
CONFIG_FAT_DEFAULT_CODEPAGE=437
# CONFIG_NTFS_FS is not set
#
# Pseudo filesystems
#
# CONFIG_PROC_FS is not set
CONFIG_SYSFS=y
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_CONFIGFS_FS=m
# CONFIG_MISC_FILESYSTEMS is not set
# CONFIG_NETWORK_FILESYSTEMS is not set
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_437=m
# CONFIG_NLS_CODEPAGE_737 is not set
CONFIG_NLS_CODEPAGE_775=y
CONFIG_NLS_CODEPAGE_850=y
# CONFIG_NLS_CODEPAGE_852 is not set
CONFIG_NLS_CODEPAGE_855=y
# CONFIG_NLS_CODEPAGE_857 is not set
CONFIG_NLS_CODEPAGE_860=m
CONFIG_NLS_CODEPAGE_861=y
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
CONFIG_NLS_CODEPAGE_864=m
CONFIG_NLS_CODEPAGE_865=y
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_936 is not set
CONFIG_NLS_CODEPAGE_950=y
CONFIG_NLS_CODEPAGE_932=m
CONFIG_NLS_CODEPAGE_949=m
CONFIG_NLS_CODEPAGE_874=m
CONFIG_NLS_ISO8859_8=m
# CONFIG_NLS_CODEPAGE_1250 is not set
# CONFIG_NLS_CODEPAGE_1251 is not set
CONFIG_NLS_ASCII=y
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
# CONFIG_NLS_ISO8859_3 is not set
CONFIG_NLS_ISO8859_4=y
CONFIG_NLS_ISO8859_5=y
# CONFIG_NLS_ISO8859_6 is not set
CONFIG_NLS_ISO8859_7=m
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
CONFIG_NLS_ISO8859_14=y
# CONFIG_NLS_ISO8859_15 is not set
CONFIG_NLS_KOI8_R=m
CONFIG_NLS_KOI8_U=y
# CONFIG_NLS_MAC_ROMAN is not set
# CONFIG_NLS_MAC_CELTIC is not set
CONFIG_NLS_MAC_CENTEURO=m
CONFIG_NLS_MAC_CROATIAN=y
CONFIG_NLS_MAC_CYRILLIC=y
# CONFIG_NLS_MAC_GAELIC is not set
CONFIG_NLS_MAC_GREEK=y
CONFIG_NLS_MAC_ICELAND=y
CONFIG_NLS_MAC_INUIT=m
CONFIG_NLS_MAC_ROMANIAN=m
# CONFIG_NLS_MAC_TURKISH is not set
CONFIG_NLS_UTF8=y
# CONFIG_DLM is not set
#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
#
# printk and dmesg options
#
# CONFIG_PRINTK_TIME is not set
CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_DYNAMIC_DEBUG=y
#
# Compile-time checks and compiler options
#
# CONFIG_DEBUG_INFO is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
# CONFIG_ENABLE_MUST_CHECK is not set
CONFIG_FRAME_WARN=2048
CONFIG_STRIP_ASM_SYMS=y
CONFIG_READABLE_ASM=y
# CONFIG_UNUSED_SYMBOLS is not set
CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
# CONFIG_MAGIC_SYSRQ is not set
CONFIG_DEBUG_KERNEL=y
#
# Memory Debugging
#
# CONFIG_DEBUG_PAGEALLOC is not set
# CONFIG_DEBUG_OBJECTS is not set
CONFIG_SLUB_DEBUG_ON=y
CONFIG_SLUB_STATS=y
CONFIG_HAVE_DEBUG_KMEMLEAK=y
CONFIG_DEBUG_KMEMLEAK=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400
CONFIG_DEBUG_KMEMLEAK_TEST=m
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
# CONFIG_DEBUG_STACK_USAGE is not set
CONFIG_DEBUG_VM=y
CONFIG_DEBUG_VM_RB=y
# CONFIG_DEBUG_VIRTUAL is not set
CONFIG_DEBUG_MEMORY_INIT=y
CONFIG_DEBUG_PER_CPU_MAPS=y
CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
CONFIG_HAVE_ARCH_KMEMCHECK=y
# CONFIG_DEBUG_SHIRQ is not set
#
# Debug Lockups and Hangs
#
CONFIG_LOCKUP_DETECTOR=y
CONFIG_HARDLOCKUP_DETECTOR=y
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
CONFIG_DETECT_HUNG_TASK=y
CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y
CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=1
CONFIG_PANIC_ON_OOPS=y
CONFIG_PANIC_ON_OOPS_VALUE=1
#
# Lock Debugging (spinlocks, mutexes, etc...)
#
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_MUTEXES=y
CONFIG_DEBUG_WW_MUTEX_SLOWPATH=y
CONFIG_DEBUG_LOCK_ALLOC=y
CONFIG_PROVE_LOCKING=y
CONFIG_LOCKDEP=y
# CONFIG_LOCK_STAT is not set
CONFIG_DEBUG_LOCKDEP=y
# CONFIG_DEBUG_ATOMIC_SLEEP is not set
CONFIG_DEBUG_LOCKING_API_SELFTESTS=y
CONFIG_TRACE_IRQFLAGS=y
CONFIG_STACKTRACE=y
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_WRITECOUNT=y
# CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_SG is not set
CONFIG_DEBUG_NOTIFIERS=y
# CONFIG_DEBUG_CREDENTIALS is not set
#
# RCU Debugging
#
# CONFIG_PROVE_RCU is not set
# CONFIG_SPARSE_RCU_POINTER is not set
CONFIG_RCU_TORTURE_TEST=m
CONFIG_RCU_CPU_STALL_TIMEOUT=21
# CONFIG_RCU_CPU_STALL_INFO is not set
CONFIG_RCU_TRACE=y
CONFIG_DEBUG_BLOCK_EXT_DEVT=y
CONFIG_NOTIFIER_ERROR_INJECTION=y
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
CONFIG_HAVE_DYNAMIC_FTRACE=y
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
CONFIG_HAVE_FENTRY=y
CONFIG_HAVE_C_RECORDMCOUNT=y
CONFIG_TRACER_MAX_TRACE=y
CONFIG_TRACE_CLOCK=y
CONFIG_RING_BUFFER=y
CONFIG_EVENT_TRACING=y
CONFIG_CONTEXT_SWITCH_TRACER=y
CONFIG_TRACING=y
CONFIG_GENERIC_TRACER=y
CONFIG_TRACING_SUPPORT=y
CONFIG_FTRACE=y
# CONFIG_FUNCTION_TRACER is not set
# CONFIG_IRQSOFF_TRACER is not set
CONFIG_SCHED_TRACER=y
CONFIG_FTRACE_SYSCALLS=y
CONFIG_TRACER_SNAPSHOT=y
# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
CONFIG_TRACE_BRANCH_PROFILING=y
# CONFIG_BRANCH_PROFILE_NONE is not set
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
CONFIG_PROFILE_ALL_BRANCHES=y
CONFIG_TRACING_BRANCHES=y
CONFIG_BRANCH_TRACER=y
# CONFIG_STACK_TRACER is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
# CONFIG_KPROBE_EVENT is not set
CONFIG_UPROBE_EVENT=y
CONFIG_PROBE_EVENTS=y
# CONFIG_FTRACE_STARTUP_TEST is not set
CONFIG_MMIOTRACE=y
# CONFIG_MMIOTRACE_TEST is not set
# CONFIG_RING_BUFFER_BENCHMARK is not set
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
#
# Runtime Testing
#
# CONFIG_LKDTM is not set
# CONFIG_TEST_LIST_SORT is not set
# CONFIG_KPROBES_SANITY_TEST is not set
CONFIG_BACKTRACE_SELF_TEST=y
CONFIG_RBTREE_TEST=y
CONFIG_INTERVAL_TREE_TEST=m
CONFIG_PERCPU_TEST=m
CONFIG_ATOMIC64_SELFTEST=y
# CONFIG_TEST_STRING_HELPERS is not set
# CONFIG_TEST_KSTRTOX is not set
# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y
CONFIG_KGDB_TESTS=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
# CONFIG_KGDB_LOW_LEVEL_TRAP is not set
# CONFIG_KGDB_KDB is not set
CONFIG_STRICT_DEVMEM=y
# CONFIG_X86_VERBOSE_BOOTUP is not set
CONFIG_EARLY_PRINTK=y
CONFIG_EARLY_PRINTK_DBGP=y
CONFIG_EARLY_PRINTK_EFI=y
# CONFIG_X86_PTDUMP is not set
# CONFIG_DEBUG_RODATA is not set
CONFIG_DEBUG_SET_MODULE_RONX=y
CONFIG_DEBUG_NX_TEST=m
# CONFIG_DOUBLEFAULT is not set
# CONFIG_DEBUG_TLBFLUSH is not set
CONFIG_IOMMU_DEBUG=y
# CONFIG_IOMMU_STRESS is not set
CONFIG_HAVE_MMIOTRACE_SUPPORT=y
CONFIG_X86_DECODER_SELFTEST=y
CONFIG_IO_DELAY_TYPE_0X80=0
CONFIG_IO_DELAY_TYPE_0XED=1
CONFIG_IO_DELAY_TYPE_UDELAY=2
CONFIG_IO_DELAY_TYPE_NONE=3
# CONFIG_IO_DELAY_0X80 is not set
CONFIG_IO_DELAY_0XED=y
# CONFIG_IO_DELAY_UDELAY is not set
# CONFIG_IO_DELAY_NONE is not set
CONFIG_DEFAULT_IO_DELAY_TYPE=1
# CONFIG_DEBUG_BOOT_PARAMS is not set
# CONFIG_CPA_DEBUG is not set
CONFIG_OPTIMIZE_INLINING=y
CONFIG_DEBUG_NMI_SELFTEST=y
# CONFIG_X86_DEBUG_STATIC_CPU_HAS is not set
#
# Security options
#
CONFIG_KEYS=y
CONFIG_PERSISTENT_KEYRINGS=y
CONFIG_TRUSTED_KEYS=m
CONFIG_ENCRYPTED_KEYS=y
CONFIG_KEYS_DEBUG_PROC_KEYS=y
CONFIG_SECURITY_DMESG_RESTRICT=y
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_NETWORK_XFRM=y
CONFIG_SECURITY_PATH=y
CONFIG_LSM_MMAP_MIN_ADDR=65536
CONFIG_SECURITY_SELINUX=y
# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set
# CONFIG_SECURITY_SELINUX_DISABLE is not set
# CONFIG_SECURITY_SELINUX_DEVELOP is not set
# CONFIG_SECURITY_SELINUX_AVC_STATS is not set
CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX=y
CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX_VALUE=19
CONFIG_SECURITY_SMACK=y
CONFIG_SECURITY_TOMOYO=y
CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048
CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024
CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER=y
CONFIG_SECURITY_APPARMOR=y
CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1
# CONFIG_SECURITY_APPARMOR_HASH is not set
# CONFIG_SECURITY_YAMA is not set
CONFIG_INTEGRITY=y
# CONFIG_INTEGRITY_SIGNATURE is not set
# CONFIG_INTEGRITY_AUDIT is not set
CONFIG_IMA=y
CONFIG_IMA_MEASURE_PCR_IDX=10
CONFIG_IMA_LSM_RULES=y
# CONFIG_IMA_TEMPLATE is not set
CONFIG_IMA_NG_TEMPLATE=y
# CONFIG_IMA_SIG_TEMPLATE is not set
CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng"
CONFIG_IMA_DEFAULT_HASH_SHA1=y
# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set
# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set
CONFIG_IMA_DEFAULT_HASH="sha1"
# CONFIG_IMA_APPRAISE is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y
# CONFIG_DEFAULT_SECURITY_SMACK is not set
# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
# CONFIG_DEFAULT_SECURITY_APPARMOR is not set
# CONFIG_DEFAULT_SECURITY_DAC is not set
CONFIG_DEFAULT_SECURITY="selinux"
CONFIG_XOR_BLOCKS=y
CONFIG_CRYPTO=y
#
# Crypto core or helper
#
CONFIG_CRYPTO_FIPS=y
CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD=y
CONFIG_CRYPTO_AEAD2=y
CONFIG_CRYPTO_BLKCIPHER=y
CONFIG_CRYPTO_BLKCIPHER2=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_HASH2=y
CONFIG_CRYPTO_RNG=y
CONFIG_CRYPTO_RNG2=y
CONFIG_CRYPTO_PCOMP2=y
CONFIG_CRYPTO_MANAGER=y
CONFIG_CRYPTO_MANAGER2=y
# CONFIG_CRYPTO_USER is not set
# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
CONFIG_CRYPTO_GF128MUL=y
CONFIG_CRYPTO_NULL=y
# CONFIG_CRYPTO_PCRYPT is not set
CONFIG_CRYPTO_WORKQUEUE=y
CONFIG_CRYPTO_CRYPTD=y
CONFIG_CRYPTO_AUTHENC=y
# CONFIG_CRYPTO_TEST is not set
CONFIG_CRYPTO_ABLK_HELPER=y
CONFIG_CRYPTO_GLUE_HELPER_X86=y
#
# Authenticated Encryption with Associated Data
#
CONFIG_CRYPTO_CCM=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_SEQIV=y
#
# Block modes
#
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_CTR=y
# CONFIG_CRYPTO_CTS is not set
# CONFIG_CRYPTO_ECB is not set
CONFIG_CRYPTO_LRW=y
# CONFIG_CRYPTO_PCBC is not set
CONFIG_CRYPTO_XTS=y
#
# Hash modes
#
# CONFIG_CRYPTO_CMAC is not set
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_XCBC=y
CONFIG_CRYPTO_VMAC=m
#
# Digest
#
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_CRC32C_INTEL=y
CONFIG_CRYPTO_CRC32=y
# CONFIG_CRYPTO_CRC32_PCLMUL is not set
CONFIG_CRYPTO_CRCT10DIF=m
# CONFIG_CRYPTO_CRCT10DIF_PCLMUL is not set
CONFIG_CRYPTO_GHASH=y
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=y
# CONFIG_CRYPTO_MICHAEL_MIC is not set
# CONFIG_CRYPTO_RMD128 is not set
CONFIG_CRYPTO_RMD160=y
# CONFIG_CRYPTO_RMD256 is not set
CONFIG_CRYPTO_RMD320=m
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA1_SSSE3=y
CONFIG_CRYPTO_SHA256_SSSE3=y
CONFIG_CRYPTO_SHA512_SSSE3=m
CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_TGR192=m
# CONFIG_CRYPTO_WP512 is not set
CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
#
# Ciphers
#
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_AES_X86_64=y
CONFIG_CRYPTO_AES_NI_INTEL=y
CONFIG_CRYPTO_ANUBIS=y
CONFIG_CRYPTO_ARC4=y
CONFIG_CRYPTO_BLOWFISH=y
CONFIG_CRYPTO_BLOWFISH_COMMON=y
CONFIG_CRYPTO_BLOWFISH_X86_64=y
CONFIG_CRYPTO_CAMELLIA=m
CONFIG_CRYPTO_CAMELLIA_X86_64=y
CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=y
# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 is not set
CONFIG_CRYPTO_CAST_COMMON=y
CONFIG_CRYPTO_CAST5=y
# CONFIG_CRYPTO_CAST5_AVX_X86_64 is not set
CONFIG_CRYPTO_CAST6=y
CONFIG_CRYPTO_CAST6_AVX_X86_64=m
CONFIG_CRYPTO_DES=y
CONFIG_CRYPTO_FCRYPT=m
CONFIG_CRYPTO_KHAZAD=y
CONFIG_CRYPTO_SALSA20=y
CONFIG_CRYPTO_SALSA20_X86_64=y
CONFIG_CRYPTO_SEED=y
CONFIG_CRYPTO_SERPENT=y
CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m
CONFIG_CRYPTO_SERPENT_AVX_X86_64=y
CONFIG_CRYPTO_SERPENT_AVX2_X86_64=y
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TWOFISH=y
CONFIG_CRYPTO_TWOFISH_COMMON=y
CONFIG_CRYPTO_TWOFISH_X86_64=y
CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=y
CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m
#
# Compression
#
CONFIG_CRYPTO_DEFLATE=y
# CONFIG_CRYPTO_ZLIB is not set
# CONFIG_CRYPTO_LZO is not set
CONFIG_CRYPTO_LZ4=m
# CONFIG_CRYPTO_LZ4HC is not set
#
# Random Number Generation
#
CONFIG_CRYPTO_ANSI_CPRNG=y
CONFIG_CRYPTO_USER_API=m
CONFIG_CRYPTO_USER_API_HASH=m
# CONFIG_CRYPTO_USER_API_SKCIPHER is not set
CONFIG_CRYPTO_HASH_INFO=y
CONFIG_CRYPTO_HW=y
CONFIG_CRYPTO_DEV_PADLOCK=m
# CONFIG_CRYPTO_DEV_PADLOCK_AES is not set
# CONFIG_CRYPTO_DEV_PADLOCK_SHA is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
CONFIG_PUBLIC_KEY_ALGO_RSA=y
CONFIG_X509_CERTIFICATE_PARSER=y
CONFIG_HAVE_KVM=y
# CONFIG_VIRTUALIZATION is not set
CONFIG_BINARY_PRINTF=y
#
# Library routines
#
CONFIG_RAID6_PQ=y
CONFIG_BITREVERSE=y
CONFIG_RATIONAL=y
CONFIG_GENERIC_STRNCPY_FROM_USER=y
CONFIG_GENERIC_STRNLEN_USER=y
CONFIG_GENERIC_NET_UTILS=y
CONFIG_GENERIC_FIND_FIRST_BIT=y
CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_IO=y
CONFIG_PERCPU_RWSEM=y
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
CONFIG_CRC_CCITT=m
CONFIG_CRC16=y
CONFIG_CRC_T10DIF=m
CONFIG_CRC_ITU_T=y
CONFIG_CRC32=y
CONFIG_CRC32_SELFTEST=y
# CONFIG_CRC32_SLICEBY8 is not set
# CONFIG_CRC32_SLICEBY4 is not set
# CONFIG_CRC32_SARWATE is not set
CONFIG_CRC32_BIT=y
# CONFIG_CRC7 is not set
CONFIG_LIBCRC32C=y
# CONFIG_CRC8 is not set
CONFIG_CRC64_ECMA=y
# CONFIG_RANDOM32_SELFTEST is not set
CONFIG_ZLIB_INFLATE=y
CONFIG_ZLIB_DEFLATE=y
CONFIG_LZO_COMPRESS=y
CONFIG_LZO_DECOMPRESS=y
CONFIG_LZ4_COMPRESS=m
CONFIG_LZ4_DECOMPRESS=m
# CONFIG_XZ_DEC is not set
# CONFIG_XZ_DEC_BCJ is not set
CONFIG_DECOMPRESS_GZIP=y
CONFIG_BCH=m
CONFIG_BCH_CONST_PARAMS=y
CONFIG_TEXTSEARCH=y
CONFIG_TEXTSEARCH_KMP=y
CONFIG_TEXTSEARCH_BM=y
CONFIG_TEXTSEARCH_FSM=y
CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_DMA=y
CONFIG_CHECK_SIGNATURE=y
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_DQL=y
CONFIG_NLATTR=y
CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y
CONFIG_AVERAGE=y
CONFIG_CLZ_TAB=y
CONFIG_CORDIC=y
CONFIG_DDR=y
CONFIG_MPILIB=y
CONFIG_OID_REGISTRY=y
CONFIG_UCS2_STRING=y
CONFIG_FONT_SUPPORT=y
CONFIG_FONT_8x16=y
CONFIG_FONT_AUTOSELECT=y
^ permalink raw reply
* Re: Kernel 3.4.57: "tg3 0000:01:00.0: eth0: transmit timed out, resetting"
From: Nithin Nayak Sujir @ 2013-11-18 18:18 UTC (permalink / raw)
To: Bjorn Helgaas, Urban Loesch
Cc: linux-kernel@vger.kernel.org, Michael Chan, netdev
In-Reply-To: <CAErSpo7Yh-srLvGQzR6Zn52nY0Pv9-o_dnFF_dCirRQ6BaNNng@mail.gmail.com>
Can you try the latest stable kernel? There is a dma fix for 5720 that went into
3.10 for the tx timeout issue.
commit 9bc297ea0622bb2a6b3abfa2fa84f0a3b86ef8c8
Author: Nithin Sujir <nsujir@broadcom.com>
Date: Mon Jun 3 09:19:34 2013 +0000
tg3: Add read dma workaround for 5720
Commit 091f0ea30074bc43f9250961b3247af713024bc6 "tg3: Add New 5719 Read
DMA workaround" added a workaround for TX DMA stall on the 5719. This
workaround needs to be applied to the 5720 as well.
Nithin.
On 11/16/2013 07:09 AM, Bjorn Helgaas wrote:
> [+cc Nithin, Michael, netdev]
>
> On Sat, Nov 16, 2013 at 7:01 AM, Urban Loesch <bind@enas.net> wrote:
>> Hi,
>>
>> I'm running a DELL PER620 with kernel 3.4.57 an Broadcom quad-port gbit
>> adapter BCM5720. 15min load-average is about 4-8.
>>
>> After 13 days of uptime today the machine becomes unresponsible. But after a
>> couple of minutes it becomes responsible again and was rebooted (sysctl
>> paremter for kernel.panic = 1) automatically. the machine is acting a
>> webserver fo about 3000 virtualhosts.
>>
>> After searching the lofiles on remote my syslog server I found the following
>> messages regarding eth0:
>>
>> 2013-11-16 11:43:38 [1505491.196172] tg3 0000:01:00.0: eth0: transmit timed
>> out, resetting
>> 2013-11-16 11:43:38 [1505491.815002] INFO: rcu_bh detected stalls on
>> CPUs/tasks:
>> 2013-11-16 11:43:38 [1505491.815009] 16: (1 GPs behind)
>> idle=1fd/140000000000000/0
>> 2013-11-16 11:43:38 [1505491.815012] (detected by 6, t=6002 jiffies)
>> 2013-11-16 11:43:38 [1505491.815014] INFO: Stall ended before state dump
>> start
>> 2013-11-16 11:43:38 [1505492.450611] tg3 0000:01:00.0: eth0: 0x00000000:
>> 0x165f14e4, 0x00100406, 0x02000000, 0x00800010
>> 2013-11-16 11:43:38 [1505492.450614] tg3 0000:01:00.0: eth0: 0x00000010:
>> 0xd57a000c, 0x00000000, 0xd57b000c, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450615] tg3 0000:01:00.0: eth0: 0x00000020:
>> 0xd57c000c, 0x00000000, 0x00000000, 0x1f5b1028
>> 2013-11-16 11:43:38 [1505492.450617] tg3 0000:01:00.0: eth0: 0x00000030:
>> 0xd8800000, 0x00000048, 0x00000000, 0x0000010f
>> 2013-11-16 11:43:38 [1505492.450619] tg3 0000:01:00.0: eth0: 0x00000040:
>> 0x00000000, 0x3f000000, 0xc8035001, 0x64002008
>> 2013-11-16 11:43:38 [1505492.450621] tg3 0000:01:00.0: eth0: 0x00000050:
>> 0x818c5803, 0x78000000, 0x0086a005, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450623] tg3 0000:01:00.0: eth0: 0x00000060:
>> 0x00000000, 0x00000000, 0xf0000298, 0x00380081
>> 2013-11-16 11:43:38 [1505492.450624] tg3 0000:01:00.0: eth0: 0x00000070:
>> 0x000710b0, 0xffcb28fa, 0x0001421c, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450626] tg3 0000:01:00.0: eth0: 0x00000080:
>> 0x00000001, 0x00000002, 0x00000000, 0x000001d2
>> 2013-11-16 11:43:38 [1505492.450628] tg3 0000:01:00.0: eth0: 0x00000090:
>> 0x00000000, 0x00000000, 0x00000000, 0x000006a1
>> 2013-11-16 11:43:38 [1505492.450629] tg3 0000:01:00.0: eth0: 0x000000a0:
>> 0x8010ac11, 0x00000004, 0x00001004, 0x00020010
>> 2013-11-16 11:43:38 [1505492.450631] tg3 0000:01:00.0: eth0: 0x000000b0:
>> 0x10008d81, 0x0010242e, 0x0004cc22, 0x10120040
>> 2013-11-16 11:43:38 [1505492.450633] tg3 0000:01:00.0: eth0: 0x000000d0:
>> 0x0000001f, 0x00000006, 0x00000000, 0x00000001
>> 2013-11-16 11:43:38 [1505492.450635] tg3 0000:01:00.0: eth0: 0x000000f0:
>> 0x00000000, 0x05720000, 0x00000000, 0xbec733be
>> 2013-11-16 11:43:38 [1505492.450637] tg3 0000:01:00.0: eth0: 0x00000100:
>> 0x13c10001, 0x00000000, 0x00018000, 0x000e7030
>> 2013-11-16 11:43:38 [1505492.450638] tg3 0000:01:00.0: eth0: 0x00000110:
>> 0x00002000, 0x000031c0, 0x000000a0, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450640] tg3 0000:01:00.0: eth0: 0x00000130:
>> 0x00000000, 0x00000000, 0x00000000, 0x15010003
>> 2013-11-16 11:43:38 [1505492.450642] tg3 0000:01:00.0: eth0: 0x00000140:
>> 0x1c3f67fa, 0x000090b1, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450643] tg3 0000:01:00.0: eth0: 0x00000150:
>> 0x16010004, 0x00000000, 0x0007811b, 0x00000001
>> 2013-11-16 11:43:38 [1505492.450645] tg3 0000:01:00.0: eth0: 0x00000160:
>> 0x00010002, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450647] tg3 0000:01:00.0: eth0: 0x00000170:
>> 0x00000000, 0x800000ff, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450648] tg3 0000:01:00.0: eth0: 0x00000200:
>> 0x00000000, 0x3f000000, 0x00000000, 0xfb000000
>> 2013-11-16 11:43:38 [1505492.450650] tg3 0000:01:00.0: eth0: 0x00000210:
>> 0x00000000, 0x0d000000, 0x00000000, 0xa7000000
>> 2013-11-16 11:43:38 [1505492.450652] tg3 0000:01:00.0: eth0: 0x00000220:
>> 0x00000000, 0x00000001, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450653] tg3 0000:01:00.0: eth0: 0x00000260:
>> 0x00000000, 0x00000000, 0x00000000, 0x000006a1
>> 2013-11-16 11:43:38 [1505492.450655] tg3 0000:01:00.0: eth0: 0x00000280:
>> 0x00000000, 0x000001d2, 0x00000000, 0x00000d73
>> 2013-11-16 11:43:38 [1505492.450657] tg3 0000:01:00.0: eth0: 0x00000290:
>> 0x00000000, 0x000004df, 0x00000000, 0x000001b5
>> 2013-11-16 11:43:38 [1505492.450659] tg3 0000:01:00.0: eth0: 0x00000300:
>> 0x0000010d, 0x000001df, 0x000000bb, 0x00000035
>> 2013-11-16 11:43:38 [1505492.450660] tg3 0000:01:00.0: eth0: 0x00000400:
>> 0x18e04808, 0x00400000, 0x00001000, 0x00000880
>> 2013-11-16 11:43:38 [1505492.450662] tg3 0000:01:00.0: eth0: 0x00000410:
>> 0x000090b1, 0x1c3f67fa, 0x000090b1, 0x1c3f67fa
>> 2013-11-16 11:43:38 [1505492.450664] tg3 0000:01:00.0: eth0: 0x00000420:
>> 0x000090b1, 0x1c3f67fa, 0x000090b1, 0x1c3f67fa
>> 2013-11-16 11:43:38 [1505492.450666] tg3 0000:01:00.0: eth0: 0x00000430:
>> 0x00000400, 0x00000000, 0x000002f4, 0x000005f2
>> 2013-11-16 11:43:38 [1505492.450667] tg3 0000:01:00.0: eth0: 0x00000440:
>> 0x00000000, 0x00000000, 0x00000000, 0x04384400
>> 2013-11-16 11:43:38 [1505492.450669] tg3 0000:01:00.0: eth0: 0x00000450:
>> 0x00000001, 0x00008000, 0x00000000, 0x00000102
>> 2013-11-16 11:43:38 [1505492.450671] tg3 0000:01:00.0: eth0: 0x00000460:
>> 0x00000008, 0x00002620, 0x01ff0002, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450672] tg3 0000:01:00.0: eth0: 0x00000470:
>> 0x80000200, 0x00c10000, 0x01000000, 0xc0000000
>> 2013-11-16 11:43:38 [1505492.450674] tg3 0000:01:00.0: eth0: 0x00000480:
>> 0x42000000, 0x7fffffff, 0x06000004, 0x7fffffff
>> 2013-11-16 11:43:38 [1505492.450676] tg3 0000:01:00.0: eth0: 0x00000500:
>> 0x00000008, 0x00000002, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450677] tg3 0000:01:00.0: eth0: 0x00000540:
>> 0x0000e0db, 0x551fe086, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450679] tg3 0000:01:00.0: eth0: 0x00000590:
>> 0x00e00000, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450681] tg3 0000:01:00.0: eth0: 0x000005b0:
>> 0x00000000, 0x00000008, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450682] tg3 0000:01:00.0: eth0: 0x000005c0:
>> 0x52ad2878, 0x40ae6aee, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450684] tg3 0000:01:00.0: eth0: 0x00000600:
>> 0xffffffff, 0x00f80011, 0x00000000, 0x00001f04
>> 2013-11-16 11:43:38 [1505492.450686] tg3 0000:01:00.0: eth0: 0x00000610:
>> 0xffffffff, 0x00000000, 0x07c00004, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450687] tg3 0000:01:00.0: eth0: 0x00000620:
>> 0x00000040, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450689] tg3 0000:01:00.0: eth0: 0x00000630:
>> 0x01230123, 0x01230123, 0x01230123, 0x01230123
>> 2013-11-16 11:43:38 [1505492.450691] tg3 0000:01:00.0: eth0: 0x00000640:
>> 0x01230123, 0x01230123, 0x01230123, 0x01230123
>> 2013-11-16 11:43:38 [1505492.450693] tg3 0000:01:00.0: eth0: 0x00000650:
>> 0x01230123, 0x01230123, 0x01230123, 0x01230123
>> 2013-11-16 11:43:38 [1505492.450694] tg3 0000:01:00.0: eth0: 0x00000660:
>> 0x01230123, 0x01230123, 0x01230123, 0x01230123
>> 2013-11-16 11:43:38 [1505492.450696] tg3 0000:01:00.0: eth0: 0x00000670:
>> 0x5f865437, 0xe4ac62cc, 0x50103a45, 0x36621985
>> 2013-11-16 11:43:38 [1505492.450698] tg3 0000:01:00.0: eth0: 0x00000680:
>> 0xbf14c0e8, 0x1bc27a1e, 0x84f4b556, 0x094ea6fe
>> 2013-11-16 11:43:38 [1505492.450699] tg3 0000:01:00.0: eth0: 0x00000690:
>> 0x7dda01e7, 0xc04d7481, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450701] tg3 0000:01:00.0: eth0: 0x000006c0:
>> 0x00000000, 0x00000000, 0x04000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450703] tg3 0000:01:00.0: eth0: 0x000006d0:
>> 0x00000001, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450705] tg3 0000:01:00.0: eth0: 0x00000800:
>> 0x000008a6, 0xffffffff, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450706] tg3 0000:01:00.0: eth0: 0x00000810:
>> 0x00000000, 0xffffffff, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450708] tg3 0000:01:00.0: eth0: 0x00000820:
>> 0x00000000, 0x00000000, 0xffffffff, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450710] tg3 0000:01:00.0: eth0: 0x00000830:
>> 0x00000000, 0xffffffff, 0xffffffff, 0xffffffff
>> 2013-11-16 11:43:38 [1505492.450711] tg3 0000:01:00.0: eth0: 0x00000840:
>> 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
>> 2013-11-16 11:43:38 [1505492.450713] tg3 0000:01:00.0: eth0: 0x00000850:
>> 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
>> 2013-11-16 11:43:38 [1505492.450715] tg3 0000:01:00.0: eth0: 0x00000860:
>> 0xffffffff, 0xffffffff, 0xffffffff, 0x00000009
>> 2013-11-16 11:43:38 [1505492.450716] tg3 0000:01:00.0: eth0: 0x00000880:
>> 0x00000963, 0x019454f2, 0x00000000, 0x0000000a
>> 2013-11-16 11:43:38 [1505492.450718] tg3 0000:01:00.0: eth0: 0x000008f0:
>> 0x00000001, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450720] tg3 0000:01:00.0: eth0: 0x00000900:
>> 0x00006c19, 0xffffffff, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450721] tg3 0000:01:00.0: eth0: 0x00000910:
>> 0x00000000, 0xffffffff, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450723] tg3 0000:01:00.0: eth0: 0x00000920:
>> 0x00000000, 0x00000000, 0xffffffff, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450725] tg3 0000:01:00.0: eth0: 0x00000930:
>> 0x00000000, 0xffffffff, 0xffffffff, 0xffffffff
>> 2013-11-16 11:43:38 [1505492.450726] tg3 0000:01:00.0: eth0: 0x00000940:
>> 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
>> 2013-11-16 11:43:38 [1505492.450728] tg3 0000:01:00.0: eth0: 0x00000950:
>> 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
>> 2013-11-16 11:43:38 [1505492.450730] tg3 0000:01:00.0: eth0: 0x00000960:
>> 0xffffffff, 0xffffffff, 0xffffffff, 0x00000071
>> 2013-11-16 11:43:38 [1505492.450732] tg3 0000:01:00.0: eth0: 0x00000980:
>> 0x00005e7f, 0x00000000, 0x00000000, 0x00000097
>> 2013-11-16 11:43:38 [1505492.450733] tg3 0000:01:00.0: eth0: 0x00000990:
>> 0x00000003, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450735] tg3 0000:01:00.0: eth0: 0x00000a00:
>> 0xf428f606, 0x1613e7b3, 0x00000004, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450737] tg3 0000:01:00.0: eth0: 0x00000a20:
>> 0x51b3edd8, 0x13a2f3e5, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450738] tg3 0000:01:00.0: eth0: 0x00000a40:
>> 0x1bb17940, 0x1353913e, 0x00000002, 0x000000bb
>> 2013-11-16 11:43:38 [1505492.450740] tg3 0000:01:00.0: eth0: 0x00000a60:
>> 0xb79007bb, 0x13f86e55, 0x00000006, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450742] tg3 0000:01:00.0: eth0: 0x00000c00:
>> 0x0000000a, 0x00000000, 0x00000003, 0x00000001
>> 2013-11-16 11:43:38 [1505492.450743] tg3 0000:01:00.0: eth0: 0x00000c10:
>> 0x00000000, 0x00000000, 0x00000000, 0x00f20000
>> 2013-11-16 11:43:38 [1505492.450745] tg3 0000:01:00.0: eth0: 0x00000c80:
>> 0x50438596, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450747] tg3 0000:01:00.0: eth0: 0x00000ce0:
>> 0xf2cfb402, 0x0000000b, 0x000000f2, 0x00040028
>> 2013-11-16 11:43:38 [1505492.450748] tg3 0000:01:00.0: eth0: 0x00000cf0:
>> 0x00000000, 0x5000005f, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450750] tg3 0000:01:00.0: eth0: 0x00001000:
>> 0x00000002, 0x00000000, 0xa000c4c6, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450752] tg3 0000:01:00.0: eth0: 0x00001010:
>> 0x01df1df1, 0x0000c4c6, 0x00000000, 0x00000000
>> 2013-11-16 11:43:38 [1505492.450754] tg3 0000:01:00.0: eth0: 0x00001400:
>> 0x00000006, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450755] tg3 0000:01:00.0: eth0: 0x00001440:
>> 0x000001df, 0x0000010d, 0x00000035, 0x000000bb
>> 2013-11-16 11:43:39 [1505492.450757] tg3 0000:01:00.0: eth0: 0x00001480:
>> 0x00002211, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450759] tg3 0000:01:00.0: eth0: 0x00001800:
>> 0x00000036, 0x00000000, 0x000001df, 0x0000010d
>> 2013-11-16 11:43:39 [1505492.450760] tg3 0000:01:00.0: eth0: 0x00001810:
>> 0x00000035, 0x000000bb, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450762] tg3 0000:01:00.0: eth0: 0x00001830:
>> 0x00000000, 0x00000000, 0x00000000, 0xf8354000
>> 2013-11-16 11:43:39 [1505492.450764] tg3 0000:01:00.0: eth0: 0x00001840:
>> 0xf82f8000, 0x00000017, 0x00000202, 0xc0000000
>> 2013-11-16 11:43:39 [1505492.450766] tg3 0000:01:00.0: eth0: 0x00001850:
>> 0x0000001f, 0x00000000, 0x000041e0, 0x010d01df
>> 2013-11-16 11:43:39 [1505492.450767] tg3 0000:01:00.0: eth0: 0x00001860:
>> 0x0100d200, 0x00000000, 0xf8355de0, 0x00000017
>> 2013-11-16 11:43:39 [1505492.450769] tg3 0000:01:00.0: eth0: 0x00001c00:
>> 0x00000002, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450771] tg3 0000:01:00.0: eth0: 0x00002000:
>> 0x00000002, 0x00000010, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450773] tg3 0000:01:00.0: eth0: 0x00002010:
>> 0x00000181, 0x00000001, 0x00780003, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450775] tg3 0000:01:00.0: eth0: 0x00002100:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450776] tg3 0000:01:00.0: eth0: 0x00002110:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450778] tg3 0000:01:00.0: eth0: 0x00002120:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450780] tg3 0000:01:00.0: eth0: 0x00002130:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450781] tg3 0000:01:00.0: eth0: 0x00002140:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450783] tg3 0000:01:00.0: eth0: 0x00002150:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450784] tg3 0000:01:00.0: eth0: 0x00002160:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450786] tg3 0000:01:00.0: eth0: 0x00002170:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450788] tg3 0000:01:00.0: eth0: 0x00002180:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450789] tg3 0000:01:00.0: eth0: 0x00002190:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450791] tg3 0000:01:00.0: eth0: 0x000021a0:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450793] tg3 0000:01:00.0: eth0: 0x000021b0:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450794] tg3 0000:01:00.0: eth0: 0x000021c0:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450796] tg3 0000:01:00.0: eth0: 0x000021d0:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450798] tg3 0000:01:00.0: eth0: 0x000021e0:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450799] tg3 0000:01:00.0: eth0: 0x000021f0:
>> 0x000e1710, 0x000e1710, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450801] tg3 0000:01:00.0: eth0: 0x00002200:
>> 0x3d943ab4, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450803] tg3 0000:01:00.0: eth0: 0x00002250:
>> 0x00004e57, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450804] tg3 0000:01:00.0: eth0: 0x00002400:
>> 0x00010012, 0x00000000, 0x00240001, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450806] tg3 0000:01:00.0: eth0: 0x00002410:
>> 0x0000000f, 0x00005d00, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450808] tg3 0000:01:00.0: eth0: 0x00002440:
>> 0x00000000, 0x00000000, 0x00000002, 0x00044400
>> 2013-11-16 11:43:39 [1505492.450809] tg3 0000:01:00.0: eth0: 0x00002450:
>> 0x00000017, 0xf6bb0000, 0x08001800, 0x00040000
>> 2013-11-16 11:43:39 [1505492.450811] tg3 0000:01:00.0: eth0: 0x00002470:
>> 0x00000000, 0x00000684, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450813] tg3 0000:01:00.0: eth0: 0x00002500:
>> 0x00000000, 0x00000000, 0x00000002, 0x00044800
>> 2013-11-16 11:43:39 [1505492.450815] tg3 0000:01:00.0: eth0: 0x00002510:
>> 0x00000000, 0x00000000, 0x00000002, 0x00040400
>> 2013-11-16 11:43:39 [1505492.450816] tg3 0000:01:00.0: eth0: 0x00002520:
>> 0x00000000, 0x00000000, 0x00000002, 0x00044c00
>> 2013-11-16 11:43:39 [1505492.450818] tg3 0000:01:00.0: eth0: 0x00002530:
>> 0x00000000, 0x00000000, 0x00000002, 0x00040800
>> 2013-11-16 11:43:39 [1505492.450819] tg3 0000:01:00.0: eth0: 0x00002540:
>> 0x00000000, 0x00000000, 0x00000002, 0x00045000
>> 2013-11-16 11:43:39 [1505492.450821] tg3 0000:01:00.0: eth0: 0x00002550:
>> 0x00000000, 0x00000000, 0x00000002, 0x00040c00
>> 2013-11-16 11:43:39 [1505492.450823] tg3 0000:01:00.0: eth0: 0x00002560:
>> 0x00000000, 0x00000000, 0x00000002, 0x00045400
>> 2013-11-16 11:43:39 [1505492.450824] tg3 0000:01:00.0: eth0: 0x00002570:
>> 0x00000000, 0x00000000, 0x00000002, 0x00041000
>> 2013-11-16 11:43:39 [1505492.450826] tg3 0000:01:00.0: eth0: 0x00002580:
>> 0x00000000, 0x00000000, 0x00000002, 0x00045800
>> 2013-11-16 11:43:39 [1505492.450828] tg3 0000:01:00.0: eth0: 0x00002590:
>> 0x00000000, 0x00000000, 0x00000002, 0x00041400
>> 2013-11-16 11:43:39 [1505492.450829] tg3 0000:01:00.0: eth0: 0x000025a0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00045c00
>> 2013-11-16 11:43:39 [1505492.450831] tg3 0000:01:00.0: eth0: 0x000025b0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00041800
>> 2013-11-16 11:43:39 [1505492.450833] tg3 0000:01:00.0: eth0: 0x000025c0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00046000
>> 2013-11-16 11:43:39 [1505492.450834] tg3 0000:01:00.0: eth0: 0x000025d0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00041c00
>> 2013-11-16 11:43:39 [1505492.450836] tg3 0000:01:00.0: eth0: 0x000025e0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00046400
>> 2013-11-16 11:43:39 [1505492.450838] tg3 0000:01:00.0: eth0: 0x000025f0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00042000
>> 2013-11-16 11:43:39 [1505492.450839] tg3 0000:01:00.0: eth0: 0x00002600:
>> 0x00000000, 0x00000000, 0x00000002, 0x00046800
>> 2013-11-16 11:43:39 [1505492.450841] tg3 0000:01:00.0: eth0: 0x00002610:
>> 0x00000000, 0x00000000, 0x00000002, 0x00042400
>> 2013-11-16 11:43:39 [1505492.450843] tg3 0000:01:00.0: eth0: 0x00002620:
>> 0x00000000, 0x00000000, 0x00000002, 0x00046c00
>> 2013-11-16 11:43:39 [1505492.450844] tg3 0000:01:00.0: eth0: 0x00002630:
>> 0x00000000, 0x00000000, 0x00000002, 0x00042800
>> 2013-11-16 11:43:39 [1505492.450846] tg3 0000:01:00.0: eth0: 0x00002640:
>> 0x00000000, 0x00000000, 0x00000002, 0x00047000
>> 2013-11-16 11:43:39 [1505492.450848] tg3 0000:01:00.0: eth0: 0x00002650:
>> 0x00000000, 0x00000000, 0x00000002, 0x00042c00
>> 2013-11-16 11:43:39 [1505492.450849] tg3 0000:01:00.0: eth0: 0x00002660:
>> 0x00000000, 0x00000000, 0x00000002, 0x00047400
>> 2013-11-16 11:43:39 [1505492.450851] tg3 0000:01:00.0: eth0: 0x00002670:
>> 0x00000000, 0x00000000, 0x00000002, 0x00043000
>> 2013-11-16 11:43:39 [1505492.450852] tg3 0000:01:00.0: eth0: 0x00002680:
>> 0x00000000, 0x00000000, 0x00000002, 0x00047800
>> 2013-11-16 11:43:39 [1505492.450854] tg3 0000:01:00.0: eth0: 0x00002690:
>> 0x00000000, 0x00000000, 0x00000002, 0x00043400
>> 2013-11-16 11:43:39 [1505492.450856] tg3 0000:01:00.0: eth0: 0x000026a0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00047c00
>> 2013-11-16 11:43:39 [1505492.450857] tg3 0000:01:00.0: eth0: 0x000026b0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00043800
>> 2013-11-16 11:43:39 [1505492.450859] tg3 0000:01:00.0: eth0: 0x000026c0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00048000
>> 2013-11-16 11:43:39 [1505492.450861] tg3 0000:01:00.0: eth0: 0x000026d0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00043c00
>> 2013-11-16 11:43:39 [1505492.450862] tg3 0000:01:00.0: eth0: 0x000026e0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00048400
>> 2013-11-16 11:43:39 [1505492.450864] tg3 0000:01:00.0: eth0: 0x000026f0:
>> 0x00000000, 0x00000000, 0x00000002, 0x00044000
>> 2013-11-16 11:43:39 [1505492.450866] tg3 0000:01:00.0: eth0: 0x00002800:
>> 0x00000006, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450868] tg3 0000:01:00.0: eth0: 0x00002c00:
>> 0x00000006, 0x00000000, 0x00000000, 0x00000699
>> 2013-11-16 11:43:39 [1505492.450869] tg3 0000:01:00.0: eth0: 0x00002c10:
>> 0x00000000, 0x00000000, 0x00000019, 0x0000000c
>> 2013-11-16 11:43:39 [1505492.450871] tg3 0000:01:00.0: eth0: 0x00002c20:
>> 0x00000002, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450873] tg3 0000:01:00.0: eth0: 0x00002d00:
>> 0x00000080, 0x00000040, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450874] tg3 0000:01:00.0: eth0: 0x00003000:
>> 0x00000006, 0x00000000, 0x00000000, 0x00000699
>> 2013-11-16 11:43:39 [1505492.450876] tg3 0000:01:00.0: eth0: 0x00003400:
>> 0x00000004, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450878] tg3 0000:01:00.0: eth0: 0x00003600:
>> 0x00004600, 0x00170000, 0x00110000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450880] tg3 0000:01:00.0: eth0: 0x00003610:
>> 0x00170000, 0x00000000, 0x00130000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450881] tg3 0000:01:00.0: eth0: 0x00003620:
>> 0x00110011, 0x00000000, 0x00000000, 0x00032080
>> 2013-11-16 11:43:39 [1505492.450883] tg3 0000:01:00.0: eth0: 0x00003630:
>> 0x00800000, 0x87748774, 0x02c01000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450885] tg3 0000:01:00.0: eth0: 0x00003640:
>> 0x00000000, 0x00000000, 0x00000020, 0x00000019
>> 2013-11-16 11:43:39 [1505492.450886] tg3 0000:01:00.0: eth0: 0x00003650:
>> 0x00000171, 0x000f03ff, 0x05720000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450888] tg3 0000:01:00.0: eth0: 0x00003660:
>> 0x00000000, 0x00000000, 0x02000000, 0x00000202
>> 2013-11-16 11:43:39 [1505492.450890] tg3 0000:01:00.0: eth0: 0x00003670:
>> 0x00000000, 0xfeffffe3, 0x00000000, 0x00000020
>> 2013-11-16 11:43:39 [1505492.450891] tg3 0000:01:00.0: eth0: 0x00003680:
>> 0x30018010, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450893] tg3 0000:01:00.0: eth0: 0x000036a0:
>> 0x000001a0, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450895] tg3 0000:01:00.0: eth0: 0x000036b0:
>> 0x0010034c, 0x07ff07ff, 0x07ff07ff, 0x01000004
>> 2013-11-16 11:43:39 [1505492.450896] tg3 0000:01:00.0: eth0: 0x000036c0:
>> 0xffffffff, 0x00000000, 0x00000000, 0x8c58c9dc
>> 2013-11-16 11:43:39 [1505492.450898] tg3 0000:01:00.0: eth0: 0x000036d0:
>> 0x0000019d, 0x00000000, 0x00000000, 0x000048ef
>> 2013-11-16 11:43:39 [1505492.450900] tg3 0000:01:00.0: eth0: 0x000036f0:
>> 0x00000000, 0x00000000, 0x00000000, 0x00010801
>> 2013-11-16 11:43:39 [1505492.450902] tg3 0000:01:00.0: eth0: 0x00003800:
>> 0x00000001, 0x00000000, 0x0000000e, 0x0516028b
>> 2013-11-16 11:43:39 [1505492.450903] tg3 0000:01:00.0: eth0: 0x00003810:
>> 0x0000002f, 0x000000ba, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450905] tg3 0000:01:00.0: eth0: 0x00003c00:
>> 0x00000306, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450907] tg3 0000:01:00.0: eth0: 0x00003c30:
>> 0x00000000, 0x00000000, 0x00000017, 0xfa561000
>> 2013-11-16 11:43:39 [1505492.450908] tg3 0000:01:00.0: eth0: 0x00003c40:
>> 0x00000000, 0x00000b00, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450910] tg3 0000:01:00.0: eth0: 0x00003c50:
>> 0x00000000, 0x00000699, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450912] tg3 0000:01:00.0: eth0: 0x00003c80:
>> 0x000001d6, 0x00000d76, 0x000004e6, 0x00000267
>> 2013-11-16 11:43:39 [1505492.450913] tg3 0000:01:00.0: eth0: 0x00003cc0:
>> 0x000001ea, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450915] tg3 0000:01:00.0: eth0: 0x00003cd0:
>> 0x00000000, 0x0000000f, 0x00000000, 0x00000000
>> 2013-11-16 11:43:39 [1505492.450917] tg3 0000:01:00.0: eth0: 0x00003d00:
>> 0x00000017, 0xf7fe1000, 0x00000017, 0xf73b8000
>> 2013-11-16 11:43:39 [1505492.450918] tg3 0000:01:00.0: eth0: 0x00003d10:
>> 0x00000017, 0xf7079000, 0x00000017, 0xf900c000
>> 2013-11-16 11:43:39 [1505492.450920] tg3 0000:01:00.0: eth0: 0x00003d80:
>> 0x00000014, 0x00000048, 0x00000005, 0x00000035
>> 2013-11-16 11:43:39 [1505492.450922] tg3 0000:01:00.0: eth0: 0x00003d90:
>> 0x00000005, 0x00000005, 0x00000014, 0x00000048
>> 2013-11-16 11:43:39 [1505492.450924] tg3 0000:01:00.0: eth0: 0x00003da0:
>> 0x00000005, 0x00000035, 0x00000005, 0x00000005
>> 2013-11-16 11:43:40 [1505492.450925] tg3 0000:01:00.0: eth0: 0x00003db0:
>> 0x00000014, 0x00000048, 0x00000005, 0x00000035
>> 2013-11-16 11:43:40 [1505492.450927] tg3 0000:01:00.0: eth0: 0x00003dc0:
>> 0x00000005, 0x00000005, 0x00000014, 0x00000048
>> 2013-11-16 11:43:40 [1505492.450929] tg3 0000:01:00.0: eth0: 0x00003dd0:
>> 0x00000005, 0x00000035, 0x00000005, 0x00000005
>> 2013-11-16 11:43:40 [1505492.450930] tg3 0000:01:00.0: eth0: 0x00003f00:
>> 0x00000000, 0x0000010d, 0x00000035, 0x000000bb
>> 2013-11-16 11:43:40 [1505492.450932] tg3 0000:01:00.0: eth0: 0x00003fc0:
>> 0x001e87b9, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450934] tg3 0000:01:00.0: eth0: 0x00004000:
>> 0x00000002, 0x00000000, 0x0012140b, 0x00143a42
>> 2013-11-16 11:43:40 [1505492.450936] tg3 0000:01:00.0: eth0: 0x00004010:
>> 0x00000000, 0x00201012, 0x00000490, 0x02005422
>> 2013-11-16 11:43:40 [1505492.450937] tg3 0000:01:00.0: eth0: 0x00004020:
>> 0x00000000, 0x00000000, 0x00000010, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450939] tg3 0000:01:00.0: eth0: 0x00004030:
>> 0x00000010, 0x00806510, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450940] tg3 0000:01:00.0: eth0: 0x00004040:
>> 0x00000000, 0x00000000, 0x01085220, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450942] tg3 0000:01:00.0: eth0: 0x00004050:
>> 0x00000000, 0x00000000, 0x0033a010, 0x004d7002
>> 2013-11-16 11:43:40 [1505492.450944] tg3 0000:01:00.0: eth0: 0x00004060:
>> 0x004e3000, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450946] tg3 0000:01:00.0: eth0: 0x00004400:
>> 0x00000016, 0x00000000, 0x00010000, 0x0000a000
>> 2013-11-16 11:43:40 [1505492.450947] tg3 0000:01:00.0: eth0: 0x00004410:
>> 0x00000000, 0x0000002a, 0x000000a0, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450949] tg3 0000:01:00.0: eth0: 0x00004420:
>> 0x0000003d, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450951] tg3 0000:01:00.0: eth0: 0x00004440:
>> 0x00000000, 0x00000000, 0x00000000, 0x00000804
>> 2013-11-16 11:43:40 [1505492.450952] tg3 0000:01:00.0: eth0: 0x00004450:
>> 0x00100538, 0x013b0003, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450954] tg3 0000:01:00.0: eth0: 0x00004800:
>> 0x380303fe, 0x00000000, 0x00000000, 0x00000120
>> 2013-11-16 11:43:40 [1505492.450956] tg3 0000:01:00.0: eth0: 0x00004810:
>> 0x00000000, 0x0000000a, 0x00689c74, 0x00001514
>> 2013-11-16 11:43:40 [1505492.450958] tg3 0000:01:00.0: eth0: 0x00004820:
>> 0x000000e3, 0x00000000, 0xf0330000, 0x22ee9ae8
>> 2013-11-16 11:43:40 [1505492.450959] tg3 0000:01:00.0: eth0: 0x00004830:
>> 0x00000000, 0x000002b4, 0x000002b4, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450961] tg3 0000:01:00.0: eth0: 0x00004840:
>> 0x00e18278, 0x00e18278, 0x000e2200, 0xe3426024
>> 2013-11-16 11:43:40 [1505492.450963] tg3 0000:01:00.0: eth0: 0x00004850:
>> 0x21cb6453, 0x702305ea, 0xd7d6d7d6, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450964] tg3 0000:01:00.0: eth0: 0x00004860:
>> 0x000000e3, 0x11283020, 0x00100800, 0xf3000008
>> 2013-11-16 11:43:40 [1505492.450966] tg3 0000:01:00.0: eth0: 0x00004870:
>> 0x05ea0080, 0x003e1820, 0x003e1820, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450968] tg3 0000:01:00.0: eth0: 0x00004880:
>> 0x0000e0db, 0x551fe086, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450970] tg3 0000:01:00.0: eth0: 0x00004900:
>> 0x28190404, 0x00305407, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450971] tg3 0000:01:00.0: eth0: 0x00004910:
>> 0x000f001c, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450973] tg3 0000:01:00.0: eth0: 0x00004a00:
>> 0x180303fe, 0x00100000, 0x00100010, 0x963b0000
>> 2013-11-16 11:43:40 [1505492.450975] tg3 0000:01:00.0: eth0: 0x00004a10:
>> 0xf8355e60, 0x008ca924, 0x00100012, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450976] tg3 0000:01:00.0: eth0: 0x00004a20:
>> 0x00000000, 0x00000010, 0xf02c0000, 0xf8355ea0
>> 2013-11-16 11:43:40 [1505492.450978] tg3 0000:01:00.0: eth0: 0x00004a30:
>> 0x00000000, 0x00000032, 0x00000032, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450980] tg3 0000:01:00.0: eth0: 0x00004a40:
>> 0xf8355e50, 0xf8355e60, 0xf8355e70, 0xf8355e40
>> 2013-11-16 11:43:40 [1505492.450981] tg3 0000:01:00.0: eth0: 0x00004a50:
>> 0x00100010, 0x00100010, 0x00100010, 0x00100010
>> 2013-11-16 11:43:40 [1505492.450983] tg3 0000:01:00.0: eth0: 0x00004a70:
>> 0x28190404, 0x00305407, 0x000f001c, 0x00000000
>> 2013-11-16 11:43:40 [1505492.450985] tg3 0000:01:00.0: eth0: 0x00004b00:
>> 0x180303fe, 0x00f30003, 0x30000000, 0x00f30120
>> 2013-11-16 11:43:40 [1505492.450987] tg3 0000:01:00.0: eth0: 0x00004b10:
>> 0x00f20040, 0x00f00003, 0x00f3dc78, 0x00000010
>> 2013-11-16 11:43:40 [1505492.450988] tg3 0000:01:00.0: eth0: 0x00004b20:
>> 0x00000003, 0x02000000, 0xd6aa1001, 0x0ff300f8
>> 2013-11-16 11:43:40 [1505492.450990] tg3 0000:01:00.0: eth0: 0x00004b30:
>> 0xd6aa1401, 0x0ff300f8, 0xd6aa0801, 0x0ff200f8
>> 2013-11-16 11:43:40 [1505492.450992] tg3 0000:01:00.0: eth0: 0x00004b40:
>> 0xd6aa0c01, 0x0ff000f8, 0x0101d7d7, 0x60603535
>> 2013-11-16 11:43:40 [1505492.450994] tg3 0000:01:00.0: eth0: 0x00004b50:
>> 0xf0330000, 0xd6aa10f8, 0xaf100000, 0x03000002
>> 2013-11-16 11:43:40 [1505492.450996] tg3 0000:01:00.0: eth0: 0x00004b60:
>> 0xf0330000, 0xd6aa14f8, 0xaf100000, 0x400001ea
>> 2013-11-16 11:43:40 [1505492.450997] tg3 0000:01:00.0: eth0: 0x00004b70:
>> 0xf0330000, 0xd6aa08f8, 0xaf100000, 0x000000ff
>> 2013-11-16 11:43:40 [1505492.450999] tg3 0000:01:00.0: eth0: 0x00004b80:
>> 0x00000003, 0x11283020, 0x00100800, 0xf3000008
>> 2013-11-16 11:43:40 [1505492.451001] tg3 0000:01:00.0: eth0: 0x00004b90:
>> 0x05ea0080, 0x28190404, 0x00305407, 0x000f001c
>> 2013-11-16 11:43:40 [1505492.451003] tg3 0000:01:00.0: eth0: 0x00004ba0:
>> 0x00f00092, 0x00000003, 0x11283020, 0x000f001c
>> 2013-11-16 11:43:40 [1505492.451004] tg3 0000:01:00.0: eth0: 0x00004bb0:
>> 0xd6aa0001, 0xd6aa0401, 0xf2cfd001, 0xf2cfb401
>> 2013-11-16 11:43:40 [1505492.451006] tg3 0000:01:00.0: eth0: 0x00004bc0:
>> 0xd6aa1002, 0xd6aa1402, 0xd6aa0802, 0xd6aa0c02
>> 2013-11-16 11:43:40 [1505492.451008] tg3 0000:01:00.0: eth0: 0x00004bd0:
>> 0xd6aa0002, 0xd6aa0402, 0xf2cfd002, 0xf2cfb402
>> 2013-11-16 11:43:40 [1505492.451009] tg3 0000:01:00.0: eth0: 0x00004be0:
>> 0x00f300f3, 0x00f000f2, 0x00f300f2, 0x00f000f1
>> 2013-11-16 11:43:40 [1505492.451011] tg3 0000:01:00.0: eth0: 0x00004bf0:
>> 0xf0330000, 0xd6aa0cf8, 0xaf0f0000, 0x0000ffff
>> 2013-11-16 11:43:40 [1505492.451013] tg3 0000:01:00.0: eth0: 0x00004c00:
>> 0x200003fe, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451014] tg3 0000:01:00.0: eth0: 0x00004c10:
>> 0x0000003f, 0x00000000, 0x00000006, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451016] tg3 0000:01:00.0: eth0: 0x00004c20:
>> 0x00000000, 0x00000000, 0x00000000, 0x00000006
>> 2013-11-16 11:43:40 [1505492.451018] tg3 0000:01:00.0: eth0: 0x00004c30:
>> 0x00000000, 0x035d8000, 0x00108000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451020] tg3 0000:01:00.0: eth0: 0x00004c40:
>> 0x00000020, 0x00000000, 0x001d0020, 0x00140020
>> 2013-11-16 11:43:40 [1505492.451021] tg3 0000:01:00.0: eth0: 0x00004c50:
>> 0xe5d751d5, 0x001d5266, 0x674e6d76, 0x63193f3f
>> 2013-11-16 11:43:40 [1505492.451023] tg3 0000:01:00.0: eth0: 0x00004c60:
>> 0x00000020, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451025] tg3 0000:01:00.0: eth0: 0x00005000:
>> 0x00009800, 0x80004000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451026] tg3 0000:01:00.0: eth0: 0x00005010:
>> 0x00000000, 0x00000000, 0x00000000, 0x08001fc0
>> 2013-11-16 11:43:40 [1505492.451028] tg3 0000:01:00.0: eth0: 0x00005020:
>> 0x00021f02, 0x00000000, 0x00000000, 0x40000020
>> 2013-11-16 11:43:40 [1505492.451030] tg3 0000:01:00.0: eth0: 0x00005030:
>> 0x00000000, 0x0000001d, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451031] tg3 0000:01:00.0: eth0: 0x00005040:
>> 0x00000000, 0x00000000, 0x080019d2, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451033] tg3 0000:01:00.0: eth0: 0x00005080:
>> 0x00009800, 0x80004000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451035] tg3 0000:01:00.0: eth0: 0x00005090:
>> 0x00000000, 0x00000000, 0x00000000, 0x0800185c
>> 2013-11-16 11:43:40 [1505492.451036] tg3 0000:01:00.0: eth0: 0x000050a0:
>> 0xafa40014, 0x00000000, 0x00000000, 0x40000020
>> 2013-11-16 11:43:40 [1505492.451038] tg3 0000:01:00.0: eth0: 0x000050b0:
>> 0x00000000, 0x0000001d, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451040] tg3 0000:01:00.0: eth0: 0x000050c0:
>> 0x00000000, 0x00000000, 0x08000088, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451042] tg3 0000:01:00.0: eth0: 0x00005100:
>> 0x00009800, 0x80000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451043] tg3 0000:01:00.0: eth0: 0x00005110:
>> 0x00000000, 0x00000000, 0x00000000, 0x08002ca0
>> 2013-11-16 11:43:40 [1505492.451045] tg3 0000:01:00.0: eth0: 0x00005120:
>> 0x30420001, 0x00000000, 0x00000000, 0x40000020
>> 2013-11-16 11:43:40 [1505492.451047] tg3 0000:01:00.0: eth0: 0x00005130:
>> 0x00000000, 0x0000001d, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451048] tg3 0000:01:00.0: eth0: 0x00005140:
>> 0x00000000, 0x00000000, 0x0800203c, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451050] tg3 0000:01:00.0: eth0: 0x00005180:
>> 0x00009800, 0x80004000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451052] tg3 0000:01:00.0: eth0: 0x00005190:
>> 0x00000000, 0x00000000, 0x00000000, 0x08001fac
>> 2013-11-16 11:43:40 [1505492.451053] tg3 0000:01:00.0: eth0: 0x000051a0:
>> 0x2404000f, 0x00000000, 0x00000000, 0x40000020
>> 2013-11-16 11:43:40 [1505492.451055] tg3 0000:01:00.0: eth0: 0x000051b0:
>> 0x00000000, 0x0000001d, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451057] tg3 0000:01:00.0: eth0: 0x000051c0:
>> 0x00000000, 0x00000000, 0x080019d2, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451058] tg3 0000:01:00.0: eth0: 0x00005200:
>> 0x00000000, 0x0b9604fa, 0x06000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451060] tg3 0000:01:00.0: eth0: 0x00005210:
>> 0xc0000000, 0xc0000000, 0x00000000, 0x0b9604fa
>> 2013-11-16 11:43:40 [1505492.451062] tg3 0000:01:00.0: eth0: 0x00005220:
>> 0x06000000, 0x00000000, 0x00000000, 0xc0000000
>> 2013-11-16 11:43:40 [1505492.451064] tg3 0000:01:00.0: eth0: 0x00005230:
>> 0x00000000, 0x0b9604fa, 0x06000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451066] tg3 0000:01:00.0: eth0: 0x00005240:
>> 0x00000000, 0x00000000, 0x00000000, 0x0b9604fa
>> 2013-11-16 11:43:40 [1505492.451067] tg3 0000:01:00.0: eth0: 0x00005250:
>> 0x06000000, 0x00000000, 0xc0000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451069] tg3 0000:01:00.0: eth0: 0x00005260:
>> 0x00000000, 0x0b9604fa, 0x06000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451071] tg3 0000:01:00.0: eth0: 0x00005270:
>> 0xc0000000, 0xc0000000, 0x00000000, 0x0b9604fa
>> 2013-11-16 11:43:40 [1505492.451073] tg3 0000:01:00.0: eth0: 0x00005280:
>> 0x00009800, 0x80000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451074] tg3 0000:01:00.0: eth0: 0x00005290:
>> 0x00000000, 0x00000000, 0x00000000, 0x08002ca0
>> 2013-11-16 11:43:40 [1505492.451076] tg3 0000:01:00.0: eth0: 0x000052a0:
>> 0x30420001, 0x00000000, 0x00000000, 0x40000020
>> 2013-11-16 11:43:40 [1505492.451078] tg3 0000:01:00.0: eth0: 0x000052b0:
>> 0x00000000, 0x0000001d, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451079] tg3 0000:01:00.0: eth0: 0x000052c0:
>> 0x00000000, 0x00000000, 0x0800203c, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451081] tg3 0000:01:00.0: eth0: 0x00005300:
>> 0x00009800, 0x80004000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451083] tg3 0000:01:00.0: eth0: 0x00005310:
>> 0x00000000, 0x00000000, 0x00000000, 0x08001fac
>> 2013-11-16 11:43:40 [1505492.451084] tg3 0000:01:00.0: eth0: 0x00005320:
>> 0x2404000f, 0x00000000, 0x00000000, 0x40000020
>> 2013-11-16 11:43:40 [1505492.451086] tg3 0000:01:00.0: eth0: 0x00005330:
>> 0x00000000, 0x0000001d, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451088] tg3 0000:01:00.0: eth0: 0x00005340:
>> 0x00000000, 0x00000000, 0x080019d2, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451089] tg3 0000:01:00.0: eth0: 0x00005380:
>> 0x00009800, 0x80004000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451091] tg3 0000:01:00.0: eth0: 0x00005390:
>> 0x00000000, 0x00000000, 0x00000000, 0x0800185c
>> 2013-11-16 11:43:40 [1505492.451093] tg3 0000:01:00.0: eth0: 0x000053a0:
>> 0xafa40014, 0x00000000, 0x00000000, 0x40000020
>> 2013-11-16 11:43:40 [1505492.451094] tg3 0000:01:00.0: eth0: 0x000053b0:
>> 0x00000000, 0x0000001d, 0x00000000, 0x00000000
>> 2013-11-16 11:43:40 [1505492.451096] tg3 0000:01:00.0: eth0: 0x000053c0:
>> 0x00000000, 0x00000000, 0x08000088, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451098] tg3 0000:01:00.0: eth0: 0x00005800:
>> 0x3f000000, 0x3f000000, 0x00000001, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451099] tg3 0000:01:00.0: eth0: 0x00005810:
>> 0x10000000, 0x00000000, 0xae000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451101] tg3 0000:01:00.0: eth0: 0x00005820:
>> 0x00000001, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451103] tg3 0000:01:00.0: eth0: 0x00005860:
>> 0x00000000, 0x00000000, 0x000006a1, 0x000006a1
>> 2013-11-16 11:43:41 [1505492.451104] tg3 0000:01:00.0: eth0: 0x00005880:
>> 0x000001d2, 0x000001d2, 0x00000d76, 0x00000d76
>> 2013-11-16 11:43:41 [1505492.451106] tg3 0000:01:00.0: eth0: 0x00005890:
>> 0x000004e6, 0x000004e6, 0x000001b5, 0x000001b5
>> 2013-11-16 11:43:41 [1505492.451108] tg3 0000:01:00.0: eth0: 0x00005900:
>> 0x000001ea, 0x000001ea, 0x0000010d, 0x00000035
>> 2013-11-16 11:43:41 [1505492.451110] tg3 0000:01:00.0: eth0: 0x00005910:
>> 0x000000bb, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451111] tg3 0000:01:00.0: eth0: 0x00005980:
>> 0x000001ea, 0x0000010d, 0x00000035, 0x000000bb
>> 2013-11-16 11:43:41 [1505492.451113] tg3 0000:01:00.0: eth0: 0x00005a00:
>> 0x000f601f, 0x00000000, 0x00010000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451115] tg3 0000:01:00.0: eth0: 0x00006000:
>> 0x00010082, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451117] tg3 0000:01:00.0: eth0: 0x00006400:
>> 0x00000000, 0x00000000, 0x00010891, 0xc0000000
>> 2013-11-16 11:43:41 [1505492.451118] tg3 0000:01:00.0: eth0: 0x00006410:
>> 0x0a000064, 0x0a000064, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451120] tg3 0000:01:00.0: eth0: 0x00006420:
>> 0x00000000, 0x00000000, 0x00000000, 0x818c0000
>> 2013-11-16 11:43:41 [1505492.451122] tg3 0000:01:00.0: eth0: 0x00006430:
>> 0x78000000, 0x14e4165f, 0x1f5b1028, 0x00020000
>> 2013-11-16 11:43:41 [1505492.451123] tg3 0000:01:00.0: eth0: 0x00006440:
>> 0x0000304f, 0x000002e4, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451125] tg3 0000:01:00.0: eth0: 0x000064c0:
>> 0x00000010, 0x00000004, 0x00001004, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451127] tg3 0000:01:00.0: eth0: 0x000064d0:
>> 0x00000000, 0x10008d81, 0x00000000, 0x00315e22
>> 2013-11-16 11:43:41 [1505492.451129] tg3 0000:01:00.0: eth0: 0x000064e0:
>> 0x00000031, 0x0000001f, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451130] tg3 0000:01:00.0: eth0: 0x000064f0:
>> 0x00000002, 0x00000031, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451132] tg3 0000:01:00.0: eth0: 0x00006500:
>> 0x01e10003, 0x1c3f67fa, 0x000090b1, 0x00000003
>> 2013-11-16 11:43:41 [1505492.451134] tg3 0000:01:00.0: eth0: 0x00006510:
>> 0x0007811b, 0x00058116, 0x00046113, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451136] tg3 0000:01:00.0: eth0: 0x00006550:
>> 0x00000001, 0x02800000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451138] tg3 0000:01:00.0: eth0: 0x000065f0:
>> 0x00000000, 0x00000109, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451139] tg3 0000:01:00.0: eth0: 0x00006800:
>> 0x14130034, 0x20099082, 0x01029208, 0xfade98a5
>> 2013-11-16 11:43:41 [1505492.451141] tg3 0000:01:00.0: eth0: 0x00006810:
>> 0x21020000, 0xffffffff, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451143] tg3 0000:01:00.0: eth0: 0x00006830:
>> 0xffffffff, 0xffffffff, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451144] tg3 0000:01:00.0: eth0: 0x00006840:
>> 0x00000000, 0x00000001, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451146] tg3 0000:01:00.0: eth0: 0x00006890:
>> 0x00000000, 0x88003800, 0x00000000, 0x04102040
>> 2013-11-16 11:43:41 [1505492.451148] tg3 0000:01:00.0: eth0: 0x000068a0:
>> 0x00000020, 0x00000001, 0x03ff03ff, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451149] tg3 0000:01:00.0: eth0: 0x000068b0:
>> 0xe0011514, 0x00000000, 0x00000000, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451151] tg3 0000:01:00.0: eth0: 0x000068e0:
>> 0x00000000, 0x00000000, 0x00000000, 0x00050b08
>> 2013-11-16 11:43:41 [1505492.451153] tg3 0000:01:00.0: eth0: 0x000068f0:
>> 0x00ff000e, 0x00ff0000, 0x00000000, 0x04444444
>> 2013-11-16 11:43:41 [1505492.451154] tg3 0000:01:00.0: eth0: 0x00006920:
>> 0x00000000, 0x00000000, 0x00000001, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451156] tg3 0000:01:00.0: eth0: 0x00007000:
>> 0x00000008, 0x00000000, 0x00000000, 0x00004868
>> 2013-11-16 11:43:41 [1505492.451158] tg3 0000:01:00.0: eth0: 0x00007010:
>> 0x1a5876c2, 0x01c08073, 0x00d70081, 0x03008200
>> 2013-11-16 11:43:41 [1505492.451160] tg3 0000:01:00.0: eth0: 0x00007020:
>> 0x00000000, 0x00000000, 0x00000406, 0x10004000
>> 2013-11-16 11:43:41 [1505492.451161] tg3 0000:01:00.0: eth0: 0x00007030:
>> 0x000e0000, 0x0000486c, 0x00170030, 0x00000000
>> 2013-11-16 11:43:41 [1505492.451165] tg3 0000:01:00.0: eth0: 0: Host status
>> block [00000004:0000003f:(0000:02e5:0000):(0000:0000)]
>> 2013-11-16 11:43:41 [1505492.451167] tg3 0000:01:00.0: eth0: 0: NAPI info
>> [0000003f:0000003f:(0000:0000:01ff):0000:(06a1:0000:0000:0000)]
>> 2013-11-16 11:43:41 [1505492.451169] tg3 0000:01:00.0: eth0: 1: Host status
>> block [00000001:00000033:(0000:0000:0000):(01d6:0013)]
>> 2013-11-16 11:43:41 [1505492.451171] tg3 0000:01:00.0: eth0: 1: NAPI info
>> [000000fb:000000fb:(0013:01df:01ff):01d2:(01d2:01d2:0000:0000)]
>> 2013-11-16 11:43:41 [1505492.451173] tg3 0000:01:00.0: eth0: 2: Host status
>> block [00000001:00000010:(0d76:0000:0000):(0000:010d)]
>> 2013-11-16 11:43:41 [1505492.451176] tg3 0000:01:00.0: eth0: 2: NAPI info
>> [00000010:00000010:(010d:010d:01ff):0d76:(0576:0573:0000:0000)]
>> 2013-11-16 11:43:41 [1505492.451178] tg3 0000:01:00.0: eth0: 3: Host status
>> block [00000001:000000ae:(0000:0000:0000):(0000:0035)]
>> 2013-11-16 11:43:41 [1505492.451180] tg3 0000:01:00.0: eth0: 3: NAPI info
>> [000000ae:000000ae:(0035:0035:01ff):04e6:(04e6:04df:0000:0000)]
>> 2013-11-16 11:43:41 [1505492.451182] tg3 0000:01:00.0: eth0: 4: Host status
>> block [00000001:000000b2:(0000:0000:0267):(0000:00bb)]
>> 2013-11-16 11:43:41 [1505492.451184] tg3 0000:01:00.0: eth0: 4: NAPI info
>> [000000cd:000000cd:(00bb:0062:01ff):01b5:(01b5:01b5:0000:0000)]
>> 2013-11-16 11:43:41 [1505492.457748] tg3 0000:01:00.0: eth0: The system may
>> be re-ordering memory-mapped I/O cycles to the network device, attempting to
>> recover. Please report the problem to the driver maintainer and include
>> system chipset information.
>> 2013-11-16 11:43:41 [1505492.490118] tg3 0000:01:00.0: eth0: Link is down
>> 2013-11-16 11:43:41 [1505498.044676] tg3 0000:01:00.0: eth0: Link is up at
>> 1000 Mbps, full duplex
>> 2013-11-16 11:43:41 [1505498.044678] tg3 0000:01:00.0: eth0: Flow control
>> is off for TX and off for RX
>> 2013-11-16 11:43:41 [1505498.044680] tg3 0000:01:00.0: eth0: EEE is
>> disabled
>>
>> Further information:
>> Current output of "ethtool -k eth0":
>> rx-checksumming: on
>> tx-checksumming: on
>> tx-checksum-ipv4: on
>> tx-checksum-ip-generic: off [fixed]
>> tx-checksum-ipv6: on
>> tx-checksum-fcoe-crc: off [fixed]
>> tx-checksum-sctp: off [fixed]
>> scatter-gather: on
>> tx-scatter-gather: on
>> tx-scatter-gather-fraglist: off [fixed]
>> tcp-segmentation-offload: off
>> tx-tcp-segmentation: off
>> tx-tcp-ecn-segmentation: off
>> tx-tcp6-segmentation: off
>> udp-fragmentation-offload: off [fixed]
>> generic-segmentation-offload: on
>> generic-receive-offload: on
>> large-receive-offload: off [fixed]
>> rx-vlan-offload: on
>> tx-vlan-offload: on
>> ntuple-filters: off [fixed]
>> receive-hashing: off [fixed]
>> highdma: on
>> rx-vlan-filter: off [fixed]
>> vlan-challenged: off [fixed]
>> tx-lockless: off [fixed]
>> netns-local: off [fixed]
>> tx-gso-robust: off [fixed]
>> tx-fcoe-segmentation: off [fixed]
>> fcoe-mtu: off [fixed]
>> tx-nocache-copy: on
>> loopback: off [fixed]
>> rx-fcs: off [fixed]
>> rx-all: off [fixed]
>>
>> Current output of "lscpi -vvvv" for eth0:
>> 01:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5720 Gigabit
>> Ethernet PCIe
>> Subsystem: Dell Device 1f5b
>> Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
>> Stepping- SERR- FastB2B- DisINTx+
>> Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
>> <TAbort- <MAbort- >SERR- <PERR- INTx-
>> Latency: 0, Cache Line Size: 64 bytes
>> Interrupt: pin B routed to IRQ 38
>> Region 0: Memory at d57d0000 (64-bit, prefetchable) [size=64K]
>> Region 2: Memory at d57e0000 (64-bit, prefetchable) [size=64K]
>> Region 4: Memory at d57f0000 (64-bit, prefetchable) [size=64K]
>> Expansion ROM at d5700000 [disabled] [size=256K]
>> Capabilities: [48] Power Management version 3
>> Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA
>> PME(D0+,D1-,D2-,D3hot+,D3cold+)
>> Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=1 PME-
>> Capabilities: [50] Vital Product Data
>> Product Name: Broadcom NetXtreme Gigabit Ethernet
>> Read-only fields:
>> [PN] Part number: BCM95720
>> [MN] Manufacture ID: 31 30 32 38
>> [V0] Vendor specific: FFV7.4.8
>> [V1] Vendor specific: DSV1028VPDR.VER1.0
>> [V2] Vendor specific: NPY2
>> [V3] Vendor specific: PMT1
>> [V4] Vendor specific: NMVBroadcom Corp
>> [V5] Vendor specific: DTINIC
>> [V6] Vendor specific: DCM1001008d452101008d45
>> [RV] Reserved: checksum good, 235 byte(s) reserved
>> End
>> Capabilities: [58] MSI: Enable- Count=1/8 Maskable- 64bit+
>> Address: 0000000000000000 Data: 0000
>> Capabilities: [a0] MSI-X: Enable+ Count=17 Masked-
>> Vector table: BAR=4 offset=00000000
>> PBA: BAR=4 offset=00001000
>> Capabilities: [ac] Express (v2) Endpoint, MSI 00
>> DevCap: MaxPayload 256 bytes, PhantFunc 0, Latency L0s <4us,
>> L1 <64us
>> ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset+
>> DevCtl: Report errors: Correctable- Non-Fatal+ Fatal+
>> Unsupported+
>> RlxdOrd- ExtTag- PhantFunc- AuxPwr+ NoSnoop-
>> FLReset-
>> MaxPayload 256 bytes, MaxReadReq 512 bytes
>> DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+
>> TransPend-
>> LnkCap: Port #0, Speed 5GT/s, Width x2, ASPM L0s L1, Latency
>> L0 <1us, L1 <2us
>> ClockPM+ Surprise- LLActRep- BwNot-
>> LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain-
>> CommClk+
>> ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
>> LnkSta: Speed 5GT/s, Width x1, TrErr- Train- SlotClk+
>> DLActive- BWMgmt- ABWMgmt-
>> DevCap2: Completion Timeout: Range ABCD, TimeoutDis+
>> DevCtl2: Completion Timeout: 65ms to 210ms, TimeoutDis-
>> LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance-
>> SpeedDis-, Selectable De-emphasis: -6dB
>> Transmit Margin: Normal Operating Range,
>> EnterModifiedCompliance- ComplianceSOS-
>> Compliance De-emphasis: -6dB
>> LnkSta2: Current De-emphasis Level: -6dB,
>> EqualizationComplete-, EqualizationPhase1-
>> EqualizationPhase2-, EqualizationPhase3-,
>> LinkEqualizationRequest-
>> Capabilities: [100 v1] Advanced Error Reporting
>> UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt-
>> RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
>> UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt+ UnxCmplt+
>> RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
>> UESvrt: DLP+ SDES+ TLP+ FCP+ CmpltTO+ CmpltAbrt- UnxCmplt-
>> RxOF+ MalfTLP+ ECRC+ UnsupReq- ACSViol-
>> CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout-
>> NonFatalErr+
>> CEMsk: RxErr- BadTLP+ BadDLLP+ Rollover+ Timeout+
>> NonFatalErr+
>> AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+
>> ChkEn-
>> Capabilities: [13c v1] Device Serial Number 00-00-90-b1-1c-3f-67-fb
>> Capabilities: [150 v1] Power Budgeting <?>
>> Capabilities: [160 v1] Virtual Channel
>> Caps: LPEVC=0 RefClk=100ns PATEntryBits=1
>> Arb: Fixed- WRR32- WRR64- WRR128-
>> Ctrl: ArbSelect=Fixed
>> Status: InProgress-
>> VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
>> Arb: Fixed- WRR32- WRR64- WRR128- TWRR128-
>> WRR256-
>> Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
>> Status: NegoPending- InProgress-
>> Kernel driver in use: tg3
>>
>>
>> Can you please get me some help how to solve the problem?
>> If you need more information please let me know.
>>
>> For answer please Cc me, as I'm not a member of lkml.
>>
>> Many thanks and regards
>> Urban Loesch
>>
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at http://www.tux.org/lkml/
>
^ permalink raw reply
* Re: [PATCH 1/1] Revert "af-packet: Use existing netdev reference for bound sockets"
From: David Miller @ 2013-11-18 18:03 UTC (permalink / raw)
To: dborkman; +Cc: noureddine, willemb, phil, edumazet, netdev, greearb
In-Reply-To: <5289D745.5020200@redhat.com>
From: Daniel Borkmann <dborkman@redhat.com>
Date: Mon, 18 Nov 2013 10:00:53 +0100
> On 11/18/2013 08:40 AM, Salam Noureddine wrote:
>> This reverts commit 827d978037d7d0bf0860481948c6d26ead10042f
>> ("af-packet: Use existing netdev reference for bound sockets")
>>
>> The patch introduced a race condition between packet_snd and
>> packet_notifier when a net_device is being unregistered. In the case
>> of
>> a bound socket, packet_notifier can drop the last reference to the
>> net_device and packet_snd might end up sending a packet over a freed
>> net_device.
>
> So there's no other workaround possible like e.g. setting a flag in
> struct packet_sock so that in case our netdevice goes down, we just
> set the flag and if set, we return with -ENXIO in send path?
> Reverting this would decrease performance for everyone as we would
> then do the lookup every time we send a packet again.
Agreed, we should try first to find a reasonable fix instead of just
doing a knee-jerk revert of this change.
Thanks.
^ permalink raw reply
* Re: [BUG,REGRESSION?] 3.11.6+,3.12: GbE iface rate drops to few KB/s
From: Florian Fainelli @ 2013-11-18 17:58 UTC (permalink / raw)
To: Willy Tarreau
Cc: Thomas Petazzoni, simon.guinot, netdev, Arnaud Ebalard, edumazet,
Cong Wang, linux-arm-kernel@lists.infradead.org
In-Reply-To: <20131118105150.GA26398@1wt.eu>
Hello Willy, Thomas,
2013/11/18 Willy Tarreau <w@1wt.eu>:
> Hi Thomas,
>
> On Mon, Nov 18, 2013 at 11:26:01AM +0100, Thomas Petazzoni wrote:
>> I haven't read the entire discussion yet, but do you guys have
>> http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/clk/mvebu?id=1022c75f5abd3a3b25e679bc8793d21bedd009b4
>> applied? It got merged recently, and it fixes a number of networking
>> problems on Armada 370.
>
> No, because my version was even older than the code which introduced this
> issue :-)
>
> The main issue is related to something we discussed once ago which surprized
> both of us, the use of a Tx timer to release the Tx descriptors. I remember
> I considered that it was not a big issue because the flush was also done in
> the Rx path (thus on ACKs) but I can't find trace of this code so my analysis
> was wrong. Thus we can hit some situations where we fill the descriptors
> before filling the link.
So long as you are using TCP this works because the ACKs will somehow
create an artificial "forced" completion of your transmitted SKBs, how
about an UDP streamer use case? In that case you will quickly fill up
all of your descriptors and have to wait for the descriptors to be
freed by the 10ms timer. I do not think this is desirable at all, and
this will requite very large UDP sender socket buffers. I remember
asking Thomas what was the reason for not using the TX completion IRQ
during the first incarnation of the driver, but I do not quite
remember what was the answer.
If the original mvneta driver authors fears where that TX completion
could generate too many IRQs, they should use netif_stop_queue() /
netif_wake_queue() and mask off/on interrupts appropriately to slow
down the pace of TX interrupts.
>
> Ideally we should have a Tx IRQ. At the very least we should call the tx
> refill function in mvneta_poll() I believe. I can try to do it but I'd
> rather have the Tx IRQ working instead.
Right, actually you should do both, free transmitted SKBs from your
NAPI poll callback and from the TX completion IRQ to ensure SKBs are
freed up in time no matter what workload/use case is being used.
--
Florian
^ permalink raw reply
* Re: [PATCH net-next] veth: extend features to support tunneling
From: David Stevens @ 2013-11-18 17:55 UTC (permalink / raw)
To: Alexei Starovoitov
Cc: David Miller, Eric Dumazet, Eric Dumazet, John Fastabend,
Michael S. Tsirkin, netdev@vger.kernel.org, netdev-owner,
Or Gerlitz, Stephen Hemminger
In-Reply-To: <CAMEtUuzkwVSetLKb0AK7U=iB5ArhAhs-0vx9cX+WeZ2Fz04kqg@mail.gmail.com>
netdev-owner@vger.kernel.org wrote on 11/17/2013 02:31:08 AM:
> From: Alexei Starovoitov <ast@plumgrid.com>
> when host mtu doesn't account for overhead of tunnel, the neat trick
> we can do is to decrease gso_size while adding tunnel header.
Won't this possibly result in ip_id collision if you generate more
segments
than the VM thinks you did? Not an issue of DF is set, I suppose.
> This way when skb_gso_segment() kicks in during tx the packets will be
> segmented into host mtu sized packets.
I've been looking at something like this, but going the other way.
In the VXLAN case, other VXLAN VMs are reachable via the virtual L2
network
so we *ought* to use large packets in the whole path if the underlay
network can do that. PMTUD should not apply within the virtual L2 network,
but the code as-is will segment to the VM gso_size (say 1500) even if the
underlay network can send jumbo frames (say 9K).
I think what we want for best performance is to send GSO packets
from
the VM and use underlay network MTU minus VXLAN headers as the gso_size
for
those.
One complication there is that we would actually want to use the
VM
gso_size if the destination is a router taking us off of the VXLAN
network,
but we can tell that from the fdb entry when route-short-circuiting is
enabled.
> Receiving vm on the other side will be seeing packets of size
> guest_mtu - tunnel_header_size,
> but imo that's much better than sending ip fragments over vxlan fabric.
> It will work for guests sending tcp/udp, but there is no good solution
> for icmp other than ip frags.
My idea for solving this ICMP issue is to forge an ICMP2BIG with the
source address of the destination and send it back to the originating VM
directly. It's complicated a bit because we don't want to use icmp_send()
on the host, which will go through host routing tables when we don't
necessarily have an IP address or routing for the bridged domain. So, to
do this, we really should just have a stand-alone icmp sender for use by
tunnel endpoints. But if we do this, the VM can get the correct gso_size
accounting for the tunnel overhead too, although it's abusing PMTUD a bit
since it doesn't ordinarily apply to hosts on the same L2 network.
I haven't gotten working patches for either of these extensions yet--
if your work overlaps before I do, I'd be happy to see these two things
incorporated in it:
1) ICMP2BIG reflected from the tunnel endpoint without host routing and
using the destination IP as the forged source address, thus
appropriate
for bridge-only hosting.
2) Allowing larger-than-gso_size segmentation as well as smaller when the
final destination is on the virtual L2 network.
+-DLS
^ permalink raw reply
* Re: Fw: [Bug 65131] New: kernel panic (BUG_ON raised) in SCTP function sctp_cmd_interpreter
From: Vlad Yasevich @ 2013-11-18 17:46 UTC (permalink / raw)
To: Stephen Hemminger, netdev
In-Reply-To: <20131118091428.6360d82a@samsung-9>
On 11/18/2013 12:14 PM, Stephen Hemminger wrote:
>
>
> Begin forwarded message:
>
> Date: Sun, 17 Nov 2013 19:38:56 -0800
> From: "bugzilla-daemon@bugzilla.kernel.org" <bugzilla-daemon@bugzilla.kernel.org>
> To: "stephen@networkplumber.org" <stephen@networkplumber.org>
> Subject: [Bug 65131] New: kernel panic (BUG_ON raised) in SCTP function sctp_cmd_interpreter
>
>
> https://bugzilla.kernel.org/show_bug.cgi?id=65131
>
> Bug ID: 65131
> Summary: kernel panic (BUG_ON raised) in SCTP function
> sctp_cmd_interpreter
> Product: Networking
> Version: 2.5
> Kernel Version: 3.11.8 custom build, repeated on 3.11.2
> Hardware: All
> OS: Linux
> Tree: Mainline
> Status: NEW
> Severity: blocking
> Priority: P1
> Component: IPV4
> Assignee: shemminger@linux-foundation.org
> Reporter: yuras@uch.net
> Regression: No
>
> Created attachment 114991
> --> https://bugzilla.kernel.org/attachment.cgi?id=114991&action=edit
> Screenshot of panic
>
> Two-node cluster configured using latest corosync (also DRBD 8.4.4, LVM2, and
> GFS2 but this is unessential).
> Steps to reproduce:
> 1. Start corosync on both nodes.
> 2. Start dlm_controld (version 4.0.2) on both nodes (used SCTP protocol as TCP
> cannot be used on multi-homed hosts). Adds such lines to kern.log:
> kernel: [ 580.428664] sctp: Hash tables configured (established 65536 bind
> 65536)
> kernel: [ 580.441779] DLM installed
> 3. Start clvmd on either node. Adds such lines to kern.log:
> kernel: [ 1345.259502] dlm: Using SCTP for communications
> kernel: [ 1345.260699] dlm: clvmd: joining the lockspace group...
> kernel: [ 1345.262962] dlm: clvmd: dlm_recover 1
> kernel: [ 1345.262968] dlm: clvmd: group event done 0 0
> kernel: [ 1345.262992] dlm: clvmd: add member 1024
> kernel: [ 1345.262995] dlm: clvmd: dlm_recover_members 1 nodes
> kernel: [ 1345.262996] dlm: clvmd: join complete
> kernel: [ 1345.262998] dlm: clvmd: generation 1 slots 1 1:1024
> kernel: [ 1345.262999] dlm: clvmd: dlm_recover_directory
> kernel: [ 1345.263000] dlm: clvmd: dlm_recover_directory 0 in 0 new
> kernel: [ 1345.263002] dlm: clvmd: dlm_recover_directory 0 out 0 messages
> kernel: [ 1345.263019] dlm: clvmd: dlm_recover 1 generation 1 done: 0 ms
> 4. Start clvmd on second node. With high probability one node or both nodes
> panic in the similar way. Screenshot in attachment.
>
> Stack trace can differ slightly above EOI line, but RIP was always the same. I
> suppose provided CPU codes correspond to one of BUG_ON macro inside
> sctp_cmd_interpreter. So, this is a bug.
>
> Now this bug totally prevents me from using my cluster as DLM rejects to use
> TCP for multi-homed hosts.
>
Should be fixed by:
commit 7926c1d5be0b7cbe5b8d5c788d7d39237e7b212c
Author: Daniel Borkmann <dborkman@redhat.com>
Date: Thu Oct 31 09:13:32 2013 +0100
net: sctp: do not trigger BUG_ON in sctp_cmd_delete_tcb
-vlad
^ permalink raw reply
* Re: [PATCH net RESEND] bonding: don't change to 802.3ad mode while ARP monitoring is running
From: Dan Williams @ 2013-11-18 17:44 UTC (permalink / raw)
To: Ding Tianhong
Cc: Jay Vosburgh, Andy Gospodarek, David S. Miller,
Nikolay Aleksandrov, Veaceslav Falico, Netdev
In-Reply-To: <528710F7.7050207@huawei.com>
On Sat, 2013-11-16 at 14:30 +0800, Ding Tianhong wrote:
> Because the ARP monitoring is not support for 802.3ad, but I still
> could change the mode to 802.3ad from ab mode while ARP monitoring
> is running, it is incorrect.
>
> So add a check for 802.3ad in bonding_store_mode to fix the problem,
> and make a new macro BOND_NO_USES_ARP() to simplify the code.
Instead of failing, couldn't the code stop ARP monitoring and allow the
mode change? This is similar to setting miimon, which disables ARP
monitoring, or setting ARP monitoring, which disables miimon.
if (new_value && bond->params.arp_interval) {
pr_info("%s: MII monitoring cannot be used with ARP monitoring. Disabling ARP monitoring...\n",
bond->dev->name);
bond->params.arp_interval = 0;
if (bond->params.arp_validate)
bond->params.arp_validate = BOND_ARP_VALIDATE_NONE;
}
Bond mode is the most important bond option, so it seems like it should
override any of the other sub-options. I know the code doesn't do this
now, but maybe instead of the patch you propose, it would be nicer to
allow the mode change instead?
Dan
> Signed-off-by: Ding Tianhong <dingtianhong@huawei.com>
> ---
> drivers/net/bonding/bond_options.c | 2 +-
> drivers/net/bonding/bonding.h | 4 ++++
> 2 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/bonding/bond_options.c b/drivers/net/bonding/bond_options.c
> index 9a5223c..abb4218 100644
> --- a/drivers/net/bonding/bond_options.c
> +++ b/drivers/net/bonding/bond_options.c
> @@ -45,7 +45,7 @@ int bond_option_mode_set(struct bonding *bond, int mode)
> return -EPERM;
> }
>
> - if (BOND_MODE_IS_LB(mode) && bond->params.arp_interval) {
> + if (BOND_NO_USES_ARP(mode) && bond->params.arp_interval) {
> pr_err("%s: %s mode is incompatible with arp monitoring.\n",
> bond->dev->name, bond_mode_tbl[mode].modename);
> return -EINVAL;
> diff --git a/drivers/net/bonding/bonding.h b/drivers/net/bonding/bonding.h
> index 046a605..e2c11cb 100644
> --- a/drivers/net/bonding/bonding.h
> +++ b/drivers/net/bonding/bonding.h
> @@ -63,6 +63,10 @@
> (((mode) == BOND_MODE_TLB) || \
> ((mode) == BOND_MODE_ALB))
>
> +#define BOND_NO_USES_ARP(mode) \
> + (((mode) == BOND_MODE_8023AD) || \
> + ((mode) == BOND_MODE_TLB) || \
> + ((mode) == BOND_MODE_ALB))
> /*
> * Less bad way to call ioctl from within the kernel; this needs to be
> * done some other way to get the call out of interrupt context.
^ permalink raw reply
* Re: [PATCH v3] net: Do not include padding in TCP GRO checksum
From: Alexander Duyck @ 2013-11-18 17:43 UTC (permalink / raw)
To: Herbert Xu, Alexander Duyck; +Cc: davem, netdev, edumazet
In-Reply-To: <20131116064611.GA12146@gondor.apana.org.au>
On 11/15/2013 10:46 PM, Herbert Xu wrote:
> On Fri, Nov 15, 2013 at 08:10:00PM -0800, Alexander Duyck wrote:
>>
>> The case I am addressing is padding added by the remote side.
>> Specifically in my case I was seeing TCP frames without options that
>> were padded up to 60 bytes from a netperf TCP_RR test. I messed up the
>> padding/checksum logic so it was making the same mistake in the Tx
>> checksum logic in the driver that I caught here in GRO. As a result I
>> was seeing checksum errors errors in wireshark, but noticed they were
>> being accepted by the stack as valid.
>
> OK great. So this isn't normal data that we expect to aggregate.
>
> In that case the simplest solution is to skip the checksum check
> altogether. We only require it if the packet is going to be merged.
>
> So how about something like this?
>
> gro: Only verify TCP checksums for candidates
>
> In some cases we may receive IP packets that are longer than
> their stated lengths. Such packets are never merged in GRO.
> However, we may end up computing their checksums incorrectly
> and end up allowing packets with a bogus checksum enter our
> stack with the checksum status set as verified.
>
> Since such packets are rare and not performance-critical, this
> patch simply skips the checksum verification for them.
>
> Reported-by: Alexander Duyck <alexander.h.duyck@intel.com>
> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
>
> diff --git a/net/ipv4/tcp_offload.c b/net/ipv4/tcp_offload.c
> index a2b68a1..55aeec9 100644
> --- a/net/ipv4/tcp_offload.c
> +++ b/net/ipv4/tcp_offload.c
> @@ -276,6 +276,10 @@ static struct sk_buff **tcp4_gro_receive(struct sk_buff **head, struct sk_buff *
> __wsum wsum;
> __sum16 sum;
>
> + /* Don't bother verifying checksum if we're going to flush anyway. */
> + if (NAPI_GRO_CB(skb)->flush)
> + goto skip_csum;
> +
> switch (skb->ip_summed) {
> case CHECKSUM_COMPLETE:
> if (!tcp_v4_check(skb_gro_len(skb), iph->saddr, iph->daddr,
> @@ -301,6 +305,7 @@ flush:
> break;
> }
>
> +skip_csum:
> return tcp_gro_receive(head, skb);
> }
>
> diff --git a/net/ipv6/tcpv6_offload.c b/net/ipv6/tcpv6_offload.c
> index c1097c7..71923d1 100644
> --- a/net/ipv6/tcpv6_offload.c
> +++ b/net/ipv6/tcpv6_offload.c
> @@ -39,6 +39,10 @@ static struct sk_buff **tcp6_gro_receive(struct sk_buff **head,
> __wsum wsum;
> __sum16 sum;
>
> + /* Don't bother verifying checksum if we're going to flush anyway. */
> + if (NAPI_GRO_CB(skb)->flush)
> + goto skip_csum;
> +
> switch (skb->ip_summed) {
> case CHECKSUM_COMPLETE:
> if (!tcp_v6_check(skb_gro_len(skb), &iph->saddr, &iph->daddr,
> @@ -65,6 +69,7 @@ flush:
> break;
> }
>
> +skip_csum:
> return tcp_gro_receive(head, skb);
> }
>
> Thanks,
>
I'm not going to have a chance to test this today, but on review it
should fix the issue.
Acked-by: Alexander Duyck <alexander.h.duyck@intel.com>
^ permalink raw reply
* Fw: [Bug 65131] New: kernel panic (BUG_ON raised) in SCTP function sctp_cmd_interpreter
From: Stephen Hemminger @ 2013-11-18 17:14 UTC (permalink / raw)
To: netdev
Begin forwarded message:
Date: Sun, 17 Nov 2013 19:38:56 -0800
From: "bugzilla-daemon@bugzilla.kernel.org" <bugzilla-daemon@bugzilla.kernel.org>
To: "stephen@networkplumber.org" <stephen@networkplumber.org>
Subject: [Bug 65131] New: kernel panic (BUG_ON raised) in SCTP function sctp_cmd_interpreter
https://bugzilla.kernel.org/show_bug.cgi?id=65131
Bug ID: 65131
Summary: kernel panic (BUG_ON raised) in SCTP function
sctp_cmd_interpreter
Product: Networking
Version: 2.5
Kernel Version: 3.11.8 custom build, repeated on 3.11.2
Hardware: All
OS: Linux
Tree: Mainline
Status: NEW
Severity: blocking
Priority: P1
Component: IPV4
Assignee: shemminger@linux-foundation.org
Reporter: yuras@uch.net
Regression: No
Created attachment 114991
--> https://bugzilla.kernel.org/attachment.cgi?id=114991&action=edit
Screenshot of panic
Two-node cluster configured using latest corosync (also DRBD 8.4.4, LVM2, and
GFS2 but this is unessential).
Steps to reproduce:
1. Start corosync on both nodes.
2. Start dlm_controld (version 4.0.2) on both nodes (used SCTP protocol as TCP
cannot be used on multi-homed hosts). Adds such lines to kern.log:
kernel: [ 580.428664] sctp: Hash tables configured (established 65536 bind
65536)
kernel: [ 580.441779] DLM installed
3. Start clvmd on either node. Adds such lines to kern.log:
kernel: [ 1345.259502] dlm: Using SCTP for communications
kernel: [ 1345.260699] dlm: clvmd: joining the lockspace group...
kernel: [ 1345.262962] dlm: clvmd: dlm_recover 1
kernel: [ 1345.262968] dlm: clvmd: group event done 0 0
kernel: [ 1345.262992] dlm: clvmd: add member 1024
kernel: [ 1345.262995] dlm: clvmd: dlm_recover_members 1 nodes
kernel: [ 1345.262996] dlm: clvmd: join complete
kernel: [ 1345.262998] dlm: clvmd: generation 1 slots 1 1:1024
kernel: [ 1345.262999] dlm: clvmd: dlm_recover_directory
kernel: [ 1345.263000] dlm: clvmd: dlm_recover_directory 0 in 0 new
kernel: [ 1345.263002] dlm: clvmd: dlm_recover_directory 0 out 0 messages
kernel: [ 1345.263019] dlm: clvmd: dlm_recover 1 generation 1 done: 0 ms
4. Start clvmd on second node. With high probability one node or both nodes
panic in the similar way. Screenshot in attachment.
Stack trace can differ slightly above EOI line, but RIP was always the same. I
suppose provided CPU codes correspond to one of BUG_ON macro inside
sctp_cmd_interpreter. So, this is a bug.
Now this bug totally prevents me from using my cluster as DLM rejects to use
TCP for multi-homed hosts.
--
You are receiving this mail because:
You are the assignee for the bug.
^ permalink raw reply
* Re: [BUG,REGRESSION?] 3.11.6+,3.12: GbE iface rate drops to few KB/s
From: Eric Dumazet @ 2013-11-18 17:13 UTC (permalink / raw)
To: Stephen Hemminger
Cc: Simon Guinot, Thomas Petazzoni, Willy Tarreau, Arnaud Ebalard,
Cong Wang, edumazet, linux-arm-kernel, netdev, Vincent Donnefort
In-Reply-To: <20131118085407.25dadcaf@samsung-9>
On Mon, 2013-11-18 at 08:54 -0800, Stephen Hemminger wrote:
> On Mon, 18 Nov 2013 11:44:48 +0100
> Simon Guinot <simon.guinot@sequanux.org> wrote:
> > c9eeec26 tcp: TSQ can use a dynamic limit
> >
>
> But without that patch there was a performance regression for high speed
> interfaces whihc was caused by TSQ. 10G performance dropped to 8G
Yes, this made sure we could feed more than 2 TSO packets on TX ring.
But decreasing minimal amount of queuing from 128KB to ~1ms of the
current rate did not please NIC which can have a big delay between
ndo_start_xmit() and actual skb freeing (TX completion)
So
http://git.kernel.org/cgit/linux/kernel/git/davem/net.git/commit/?id=98e09386c0ef4dfd48af7ba60ff908f0d525cdee
restored this minimal amount of buffering, and let the bigger amount for
40Gb NICs ;)
^ permalink raw reply
* [PATCH 00/12] Fix various problems with the rtl8192cu driver
From: Larry Finger @ 2013-11-18 17:11 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, Larry Finger, netdev
Driver rtl8192cu has not had very high throughput, and it has not maintained
a stable connection. This set of patches improve the gain control routines,
which helps solve both problems.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Larry Finger (12):
rtlwifi: rtl8192c: Prevent reconnect attempts if not connected
rtlwifi: rtl8192cu: Add new firmware
rtlwifi: Redo register save locations
rtlwifi: Set the link state
rtlwifi: rtl8192c: Add new definitions in the dm_common header
rtlwifi: Increase the RX queue length for USB drivers
rtlwifi: Update beacon statistics for USB driver
rtlwifi: rtl8192c: Add routines to save/restore power index registers
rtlwifi: rtl8192cu: Update the power index registers
rtlwifi: rtl8192cu: Fix some code in RF handling
rtlwifi: Add missing code to PWDB statics routine
rtlwifi: rtl8192c: Update dynamic gain calculations
drivers/net/wireless/rtlwifi/base.c | 3 +-
drivers/net/wireless/rtlwifi/core.c | 11 +
drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c | 318 +++++++++++++++-------
drivers/net/wireless/rtlwifi/rtl8192c/dm_common.h | 14 +
drivers/net/wireless/rtlwifi/rtl8192cu/dm.c | 6 +
drivers/net/wireless/rtlwifi/rtl8192cu/dm.h | 3 +
drivers/net/wireless/rtlwifi/rtl8192cu/rf.c | 27 +-
drivers/net/wireless/rtlwifi/rtl8192cu/sw.c | 16 +-
drivers/net/wireless/rtlwifi/stats.c | 14 +
drivers/net/wireless/rtlwifi/usb.c | 4 +-
drivers/net/wireless/rtlwifi/wifi.h | 33 +--
11 files changed, 317 insertions(+), 132 deletions(-)
--
1.8.4
^ permalink raw reply
* [PATCH 12/12 NEXT] rtlwifi: rtl8192c: Update dynamic gain calculations
From: Larry Finger @ 2013-11-18 17:11 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, Larry Finger, netdev, Stable
In-Reply-To: <1384794696-20314-1-git-send-email-Larry.Finger@lwfinger.net>
The vendor driver contained a number of improvements in the gain settings
for the rtl8192c{e,u} devices. This patch implements them in the kernel
driver.
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@vger.kernel.org>
---
drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c | 282 ++++++++++++++--------
1 file changed, 184 insertions(+), 98 deletions(-)
Index: wireless-testing/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
===================================================================
--- wireless-testing.orig/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
+++ wireless-testing/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c
@@ -216,7 +216,12 @@ static void rtl92c_dm_diginit(struct iee
dm_digtable->back_range_max = DM_DIG_BACKOFF_MAX;
dm_digtable->back_range_min = DM_DIG_BACKOFF_MIN;
dm_digtable->pre_cck_pd_state = CCK_PD_STAGE_MAX;
- dm_digtable->cur_cck_pd_state = CCK_PD_STAGE_MAX;
+ dm_digtable->cur_cck_pd_state = CCK_PD_STAGE_LowRssi;
+
+ dm_digtable->forbidden_igi = DM_DIG_MIN;
+ dm_digtable->large_fa_hit = 0;
+ dm_digtable->recover_cnt = 0;
+ dm_digtable->dig_dynamic_min = 0x25;
}
static u8 rtl92c_dm_initial_gain_min_pwdb(struct ieee80211_hw *hw)
@@ -242,7 +247,9 @@ static u8 rtl92c_dm_initial_gain_min_pwd
rssi_val_min = rtlpriv->dm.entry_min_undec_sm_pwdb;
}
- return (u8) rssi_val_min;
+ if (rssi_val_min > 100)
+ rssi_val_min = 100;
+ return (u8)rssi_val_min;
}
static void rtl92c_dm_false_alarm_counter_statistics(struct ieee80211_hw *hw)
@@ -260,9 +267,17 @@ static void rtl92c_dm_false_alarm_counte
ret_value = rtl_get_bbreg(hw, ROFDM_PHYCOUNTER3, MASKDWORD);
falsealm_cnt->cnt_mcs_fail = (ret_value & 0xffff);
+
+ ret_value = rtl_get_bbreg(hw, ROFDM0_FRAMESYNC, MASKDWORD);
+ falsealm_cnt->cnt_fast_fsync_fail = (ret_value & 0xffff);
+ falsealm_cnt->cnt_sb_search_fail = ((ret_value & 0xffff0000) >> 16);
+
falsealm_cnt->cnt_ofdm_fail = falsealm_cnt->cnt_parity_fail +
- falsealm_cnt->cnt_rate_illegal +
- falsealm_cnt->cnt_crc8_fail + falsealm_cnt->cnt_mcs_fail;
+ falsealm_cnt->cnt_rate_illegal +
+ falsealm_cnt->cnt_crc8_fail +
+ falsealm_cnt->cnt_mcs_fail +
+ falsealm_cnt->cnt_fast_fsync_fail +
+ falsealm_cnt->cnt_sb_search_fail;
rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(14), 1);
ret_value = rtl_get_bbreg(hw, RCCK0_FACOUNTERLOWER, MASKBYTE0);
@@ -307,12 +322,14 @@ static void rtl92c_dm_ctrl_initgain_by_f
value_igi++;
else if (rtlpriv->falsealm_cnt.cnt_all >= DM_DIG_FA_TH2)
value_igi += 2;
+
if (value_igi > DM_DIG_FA_UPPER)
value_igi = DM_DIG_FA_UPPER;
else if (value_igi < DM_DIG_FA_LOWER)
value_igi = DM_DIG_FA_LOWER;
+
if (rtlpriv->falsealm_cnt.cnt_all > 10000)
- value_igi = 0x32;
+ value_igi = DM_DIG_FA_UPPER;
dm_digtable->cur_igvalue = value_igi;
rtl92c_dm_write_dig(hw);
@@ -322,32 +339,80 @@ static void rtl92c_dm_ctrl_initgain_by_r
{
struct rtl_priv *rtlpriv = rtl_priv(hw);
struct dig_t *digtable = &rtlpriv->dm_digtable;
+ u32 isbt;
- if (rtlpriv->falsealm_cnt.cnt_all > digtable->fa_highthresh) {
- if ((digtable->back_val - 2) < digtable->back_range_min)
- digtable->back_val = digtable->back_range_min;
- else
- digtable->back_val -= 2;
- } else if (rtlpriv->falsealm_cnt.cnt_all < digtable->fa_lowthresh) {
- if ((digtable->back_val + 2) > digtable->back_range_max)
- digtable->back_val = digtable->back_range_max;
- else
- digtable->back_val += 2;
+ /* modify DIG lower bound, deal with abnorally large false alarm */
+ if (rtlpriv->falsealm_cnt.cnt_all > 10000) {
+ digtable->large_fa_hit++;
+ if (digtable->forbidden_igi < digtable->cur_igvalue) {
+ digtable->forbidden_igi = digtable->cur_igvalue;
+ digtable->large_fa_hit = 1;
+ }
+
+ if (digtable->large_fa_hit >= 3) {
+ if ((digtable->forbidden_igi + 1) >
+ digtable->rx_gain_max)
+ digtable->rx_gain_min = digtable->rx_gain_max;
+ else
+ digtable->rx_gain_min = (digtable->forbidden_igi + 1);
+ digtable->recover_cnt = 3600; /* 3600=2hr */
+ }
+ } else {
+ /* Recovery mechanism for IGI lower bound */
+ if (digtable->recover_cnt != 0) {
+ digtable->recover_cnt--;
+ } else {
+ if (digtable->large_fa_hit == 0) {
+ if ((digtable->forbidden_igi-1) < DM_DIG_MIN) {
+ digtable->forbidden_igi = DM_DIG_MIN;
+ digtable->rx_gain_min = DM_DIG_MIN;
+ } else {
+ digtable->forbidden_igi--;
+ digtable->rx_gain_min = digtable->forbidden_igi + 1;
+ }
+ } else if (digtable->large_fa_hit == 3) {
+ digtable->large_fa_hit = 0;
+ }
+ }
}
+ if (rtlpriv->falsealm_cnt.cnt_all < 250) {
+ isbt = rtl_read_byte(rtlpriv, 0x4fd) & 0x01;
- if ((digtable->rssi_val_min + 10 - digtable->back_val) >
- digtable->rx_gain_max)
+ if (!isbt) {
+ if (rtlpriv->falsealm_cnt.cnt_all >
+ digtable->fa_lowthresh) {
+ if ((digtable->back_val - 2) <
+ digtable->back_range_min)
+ digtable->back_val = digtable->back_range_min;
+ else
+ digtable->back_val -= 2;
+ } else if (rtlpriv->falsealm_cnt.cnt_all <
+ digtable->fa_lowthresh) {
+ if ((digtable->back_val + 2) >
+ digtable->back_range_max)
+ digtable->back_val = digtable->back_range_max;
+ else
+ digtable->back_val += 2;
+ }
+ } else {
+ digtable->back_val = DM_DIG_BACKOFF_DEFAULT;
+ }
+ } else {
+ /* Adjust initial gain by false alarm */
+ if (rtlpriv->falsealm_cnt.cnt_all > 1000)
+ digtable->cur_igvalue = digtable->pre_igvalue + 2;
+ else if (rtlpriv->falsealm_cnt.cnt_all > 750)
+ digtable->cur_igvalue = digtable->pre_igvalue + 1;
+ else if (rtlpriv->falsealm_cnt.cnt_all < 500)
+ digtable->cur_igvalue = digtable->pre_igvalue - 1;
+ }
+
+ /* Check initial gain by upper/lower bound */
+ if (digtable->cur_igvalue > digtable->rx_gain_max)
digtable->cur_igvalue = digtable->rx_gain_max;
- else if ((digtable->rssi_val_min + 10 -
- digtable->back_val) < digtable->rx_gain_min)
- digtable->cur_igvalue = digtable->rx_gain_min;
- else
- digtable->cur_igvalue = digtable->rssi_val_min + 10 -
- digtable->back_val;
- RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE,
- "rssi_val_min = %x back_val %x\n",
- digtable->rssi_val_min, digtable->back_val);
+ if (digtable->cur_igvalue < digtable->rx_gain_min)
+ digtable->cur_igvalue = digtable->rx_gain_min;
rtl92c_dm_write_dig(hw);
}
@@ -365,7 +430,7 @@ static void rtl92c_dm_initial_gain_multi
multi_sta = true;
if (!multi_sta ||
- dm_digtable->cursta_cstate != DIG_STA_DISCONNECT) {
+ dm_digtable->cursta_cstate == DIG_STA_DISCONNECT) {
initialized = false;
dm_digtable->dig_ext_port_stage = DIG_EXT_PORT_STAGE_MAX;
return;
@@ -411,7 +476,6 @@ static void rtl92c_dm_initial_gain_sta(s
RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE,
"presta_cstate = %x, cursta_cstate = %x\n",
dm_digtable->presta_cstate, dm_digtable->cursta_cstate);
-
if (dm_digtable->presta_cstate == dm_digtable->cursta_cstate ||
dm_digtable->cursta_cstate == DIG_STA_BEFORE_CONNECT ||
dm_digtable->cursta_cstate == DIG_STA_CONNECT) {
@@ -419,6 +483,8 @@ static void rtl92c_dm_initial_gain_sta(s
if (dm_digtable->cursta_cstate != DIG_STA_DISCONNECT) {
dm_digtable->rssi_val_min =
rtl92c_dm_initial_gain_min_pwdb(hw);
+ if (dm_digtable->rssi_val_min > 100)
+ dm_digtable->rssi_val_min = 100;
rtl92c_dm_ctrl_initgain_by_rssi(hw);
}
} else {
@@ -434,11 +500,12 @@ static void rtl92c_dm_initial_gain_sta(s
static void rtl92c_dm_cck_packet_detection_thresh(struct ieee80211_hw *hw)
{
struct rtl_priv *rtlpriv = rtl_priv(hw);
- struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));
struct dig_t *dm_digtable = &rtlpriv->dm_digtable;
if (dm_digtable->cursta_cstate == DIG_STA_CONNECT) {
dm_digtable->rssi_val_min = rtl92c_dm_initial_gain_min_pwdb(hw);
+ if (dm_digtable->rssi_val_min > 100)
+ dm_digtable->rssi_val_min = 100;
if (dm_digtable->pre_cck_pd_state == CCK_PD_STAGE_LowRssi) {
if (dm_digtable->rssi_val_min <= 25)
@@ -460,48 +527,14 @@ static void rtl92c_dm_cck_packet_detecti
}
if (dm_digtable->pre_cck_pd_state != dm_digtable->cur_cck_pd_state) {
- if (dm_digtable->cur_cck_pd_state == CCK_PD_STAGE_LowRssi) {
- if (rtlpriv->falsealm_cnt.cnt_cck_fail > 800)
- dm_digtable->cur_cck_fa_state =
- CCK_FA_STAGE_High;
- else
- dm_digtable->cur_cck_fa_state = CCK_FA_STAGE_Low;
-
- if (dm_digtable->pre_cck_fa_state !=
- dm_digtable->cur_cck_fa_state) {
- if (dm_digtable->cur_cck_fa_state ==
- CCK_FA_STAGE_Low)
- rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2,
- 0x83);
- else
- rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2,
- 0xcd);
-
- dm_digtable->pre_cck_fa_state =
- dm_digtable->cur_cck_fa_state;
- }
-
- rtl_set_bbreg(hw, RCCK0_SYSTEM, MASKBYTE1, 0x40);
-
- if (IS_92C_SERIAL(rtlhal->version))
- rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT,
- MASKBYTE2, 0xd7);
- } else {
+ if ((dm_digtable->cur_cck_pd_state == CCK_PD_STAGE_LowRssi) ||
+ (dm_digtable->cur_cck_pd_state == CCK_PD_STAGE_MAX))
+ rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, 0x83);
+ else
rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, 0xcd);
- rtl_set_bbreg(hw, RCCK0_SYSTEM, MASKBYTE1, 0x47);
- if (IS_92C_SERIAL(rtlhal->version))
- rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT,
- MASKBYTE2, 0xd3);
- }
dm_digtable->pre_cck_pd_state = dm_digtable->cur_cck_pd_state;
}
-
- RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, "CCKPDStage=%x\n",
- dm_digtable->cur_cck_pd_state);
-
- RT_TRACE(rtlpriv, COMP_DIG, DBG_TRACE, "is92C=%x\n",
- IS_92C_SERIAL(rtlhal->version));
}
static void rtl92c_dm_ctrl_initgain_by_twoport(struct ieee80211_hw *hw)
@@ -518,6 +551,8 @@ static void rtl92c_dm_ctrl_initgain_by_t
else
dm_digtable->cursta_cstate = DIG_STA_DISCONNECT;
+ dm_digtable->curmultista_cstate = DIG_MULTISTA_DISCONNECT;
+
rtl92c_dm_initial_gain_sta(hw);
rtl92c_dm_initial_gain_multi_sta(hw);
rtl92c_dm_cck_packet_detection_thresh(hw);
@@ -529,23 +564,26 @@ static void rtl92c_dm_ctrl_initgain_by_t
static void rtl92c_dm_dig(struct ieee80211_hw *hw)
{
struct rtl_priv *rtlpriv = rtl_priv(hw);
- struct dig_t *dm_digtable = &rtlpriv->dm_digtable;
if (rtlpriv->dm.dm_initialgain_enable == false)
return;
- if (dm_digtable->dig_enable_flag == false)
+ if (!rtlpriv->dm.dm_flag & DYNAMIC_FUNC_DIG)
return;
rtl92c_dm_ctrl_initgain_by_twoport(hw);
-
}
static void rtl92c_dm_init_dynamic_txpower(struct ieee80211_hw *hw)
{
struct rtl_priv *rtlpriv = rtl_priv(hw);
- rtlpriv->dm.dynamic_txpower_enable = false;
-
+ if (rtlpriv->rtlhal.interface == INTF_USB &&
+ rtlpriv->rtlhal.board_type & 0x1) {
+ dm_savepowerindex(hw);
+ rtlpriv->dm.dynamic_txpower_enable = true;
+ } else {
+ rtlpriv->dm.dynamic_txpower_enable = false;
+ }
rtlpriv->dm.last_dtp_lvl = TXHIGHPWRLEVEL_NORMAL;
rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_NORMAL;
}
@@ -560,9 +598,14 @@ void rtl92c_dm_write_dig(struct ieee8021
dm_digtable->cur_igvalue, dm_digtable->pre_igvalue,
dm_digtable->back_val);
- dm_digtable->cur_igvalue += 2;
- if (dm_digtable->cur_igvalue > 0x3f)
- dm_digtable->cur_igvalue = 0x3f;
+ if (rtlpriv->rtlhal.interface == INTF_USB &&
+ !dm_digtable->dig_enable_flag) {
+ dm_digtable->pre_igvalue = 0x17;
+ return;
+ }
+ dm_digtable->cur_igvalue -= 1;
+ if (dm_digtable->cur_igvalue < DM_DIG_MIN)
+ dm_digtable->cur_igvalue = DM_DIG_MIN;
if (dm_digtable->pre_igvalue != dm_digtable->cur_igvalue) {
rtl_set_bbreg(hw, ROFDM0_XAAGCCORE1, 0x7f,
@@ -572,11 +615,47 @@ void rtl92c_dm_write_dig(struct ieee8021
dm_digtable->pre_igvalue = dm_digtable->cur_igvalue;
}
+ RT_TRACE(rtlpriv, COMP_DIG, DBG_WARNING,
+ "dig values 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x\n",
+ dm_digtable->cur_igvalue, dm_digtable->pre_igvalue,
+ dm_digtable->rssi_val_min, dm_digtable->back_val,
+ dm_digtable->rx_gain_max, dm_digtable->rx_gain_min,
+ dm_digtable->large_fa_hit, dm_digtable->forbidden_igi);
}
EXPORT_SYMBOL(rtl92c_dm_write_dig);
static void rtl92c_dm_pwdb_monitor(struct ieee80211_hw *hw)
{
+ struct rtl_priv *rtlpriv = rtl_priv(hw);
+ struct rtl_mac *mac = rtl_mac(rtl_priv(hw));
+ long tmpentry_max_pwdb = 0, tmpentry_min_pwdb = 0xff;
+
+ if (mac->link_state != MAC80211_LINKED)
+ return;
+
+ if (mac->opmode == NL80211_IFTYPE_ADHOC ||
+ mac->opmode == NL80211_IFTYPE_AP) {
+ /* TODO: Handle ADHOC and AP Mode */
+ }
+
+ if (tmpentry_max_pwdb != 0)
+ rtlpriv->dm.entry_max_undec_sm_pwdb = tmpentry_max_pwdb;
+ else
+ rtlpriv->dm.entry_max_undec_sm_pwdb = 0;
+
+ if (tmpentry_min_pwdb != 0xff)
+ rtlpriv->dm.entry_min_undec_sm_pwdb = tmpentry_min_pwdb;
+ else
+ rtlpriv->dm.entry_min_undec_sm_pwdb = 0;
+
+/* TODO:
+ * if (mac->opmode == NL80211_IFTYPE_STATION) {
+ * if (rtlpriv->rtlhal.fw_ready) {
+ * u32 param = (u32)(rtlpriv->dm.undec_sm_pwdb << 16);
+ * rtl8192c_set_rssi_cmd(hw, param);
+ * }
+ * }
+ */
}
void rtl92c_dm_init_edca_turbo(struct ieee80211_hw *hw)
@@ -786,6 +865,7 @@ static void rtl92c_dm_txpower_tracking_c
rtlpriv->dm.ofdm_index[i] = ofdm_index_old[i];
rtlpriv->dm.cck_index = cck_index_old;
}
+ /* Handle USB High PA boards */
delta = (thermalvalue > rtlpriv->dm.thermalvalue) ?
(thermalvalue - rtlpriv->dm.thermalvalue) :
@@ -1176,22 +1256,22 @@ void rtl92c_dm_rf_saving(struct ieee8021
{
struct rtl_priv *rtlpriv = rtl_priv(hw);
struct ps_t *dm_pstable = &rtlpriv->dm_pstable;
- static u8 initialize;
- static u32 reg_874, reg_c70, reg_85c, reg_a74;
- if (initialize == 0) {
- reg_874 = (rtl_get_bbreg(hw, RFPGA0_XCD_RFINTERFACESW,
- MASKDWORD) & 0x1CC000) >> 14;
+ if (!rtlpriv->reg_init) {
+ rtlpriv->reg_874 = (rtl_get_bbreg(hw,
+ RFPGA0_XCD_RFINTERFACESW,
+ MASKDWORD) & 0x1CC000) >> 14;
- reg_c70 = (rtl_get_bbreg(hw, ROFDM0_AGCPARAMETER1,
- MASKDWORD) & BIT(3)) >> 3;
+ rtlpriv->reg_c70 = (rtl_get_bbreg(hw, ROFDM0_AGCPARAMETER1,
+ MASKDWORD) & BIT(3)) >> 3;
- reg_85c = (rtl_get_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL,
- MASKDWORD) & 0xFF000000) >> 24;
+ rtlpriv->reg_85c = (rtl_get_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL,
+ MASKDWORD) & 0xFF000000) >> 24;
- reg_a74 = (rtl_get_bbreg(hw, 0xa74, MASKDWORD) & 0xF000) >> 12;
+ rtlpriv->reg_a74 = (rtl_get_bbreg(hw, 0xa74, MASKDWORD) &
+ 0xF000) >> 12;
- initialize = 1;
+ rtlpriv->reg_init = true;
}
if (!bforce_in_normal) {
@@ -1228,12 +1308,12 @@ void rtl92c_dm_rf_saving(struct ieee8021
rtl_set_bbreg(hw, 0x818, BIT(28), 0x1);
} else {
rtl_set_bbreg(hw, RFPGA0_XCD_RFINTERFACESW,
- 0x1CC000, reg_874);
+ 0x1CC000, rtlpriv->reg_874);
rtl_set_bbreg(hw, ROFDM0_AGCPARAMETER1, BIT(3),
- reg_c70);
+ rtlpriv->reg_c70);
rtl_set_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL, 0xFF000000,
- reg_85c);
- rtl_set_bbreg(hw, 0xa74, 0xF000, reg_a74);
+ rtlpriv->reg_85c);
+ rtl_set_bbreg(hw, 0xa74, 0xF000, rtlpriv->reg_a74);
rtl_set_bbreg(hw, 0x818, BIT(28), 0x0);
}
@@ -1249,6 +1329,7 @@ static void rtl92c_dm_dynamic_bb_powersa
struct rtl_mac *mac = rtl_mac(rtl_priv(hw));
struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));
+ /* Determine the minimum RSSI */
if (((mac->link_state == MAC80211_NOLINK)) &&
(rtlpriv->dm.entry_min_undec_sm_pwdb == 0)) {
dm_pstable->rssi_val_min = 0;
@@ -1277,6 +1358,7 @@ static void rtl92c_dm_dynamic_bb_powersa
dm_pstable->rssi_val_min);
}
+ /* Power Saving for 92C */
if (IS_92C_SERIAL(rtlhal->version))
;/* rtl92c_dm_1r_cca(hw); */
else
@@ -1288,12 +1370,23 @@ void rtl92c_dm_init(struct ieee80211_hw
struct rtl_priv *rtlpriv = rtl_priv(hw);
rtlpriv->dm.dm_type = DM_TYPE_BYDRIVER;
+ rtlpriv->dm.dm_flag = DYNAMIC_FUNC_DISABLE | DYNAMIC_FUNC_DIG;
+ rtlpriv->dm.undec_sm_pwdb = -1;
+ rtlpriv->dm.undec_sm_cck = -1;
+ rtlpriv->dm.dm_initialgain_enable = true;
rtl92c_dm_diginit(hw);
+
+ rtlpriv->dm.dm_flag |= HAL_DM_HIPWR_DISABLE;
rtl92c_dm_init_dynamic_txpower(hw);
+
rtl92c_dm_init_edca_turbo(hw);
rtl92c_dm_init_rate_adaptive_mask(hw);
+ rtlpriv->dm.dm_flag |= DYNAMIC_FUNC_SS;
rtl92c_dm_initialize_txpower_tracking(hw);
rtl92c_dm_init_dynamic_bb_powersaving(hw);
+
+ rtlpriv->dm.ofdm_pkt_cnt = 0;
+ rtlpriv->dm.dm_rssi_sel = RSSI_DEFAULT;
}
EXPORT_SYMBOL(rtl92c_dm_init);
@@ -1344,7 +1437,7 @@ void rtl92c_dm_dynamic_txpower(struct ie
}
if (undec_sm_pwdb >= TX_POWER_NEAR_FIELD_THRESH_LVL2) {
- rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_LEVEL1;
+ rtlpriv->dm.dynamic_txhighpower_lvl = TXHIGHPWRLEVEL_LEVEL2;
RT_TRACE(rtlpriv, COMP_POWER, DBG_LOUD,
"TXHIGHPWRLEVEL_LEVEL1 (TxPwr=0x0)\n");
} else if ((undec_sm_pwdb < (TX_POWER_NEAR_FIELD_THRESH_LVL2 - 3)) &&
@@ -1364,8 +1457,16 @@ void rtl92c_dm_dynamic_txpower(struct ie
"PHY_SetTxPowerLevel8192S() Channel = %d\n",
rtlphy->current_channel);
rtl92c_phy_set_txpower_level(hw, rtlphy->current_channel);
+ if (rtlpriv->dm.dynamic_txhighpower_lvl ==
+ TXHIGHPWRLEVEL_NORMAL)
+ dm_restorepowerindex(hw);
+ else if (rtlpriv->dm.dynamic_txhighpower_lvl ==
+ TXHIGHPWRLEVEL_LEVEL1)
+ dm_writepowerindex(hw, 0x14);
+ else if (rtlpriv->dm.dynamic_txhighpower_lvl ==
+ TXHIGHPWRLEVEL_LEVEL2)
+ dm_writepowerindex(hw, 0x10);
}
-
rtlpriv->dm.last_dtp_lvl = rtlpriv->dm.dynamic_txhighpower_lvl;
}
@@ -1436,12 +1537,6 @@ u8 rtl92c_bt_rssi_state_change(struct ie
else
curr_bt_rssi_state &= (~BT_RSSI_STATE_SPECIAL_LOW);
- /* Set Tx Power according to BT status. */
- if (undec_sm_pwdb >= 30)
- curr_bt_rssi_state |= BT_RSSI_STATE_TXPOWER_LOW;
- else if (undec_sm_pwdb < 25)
- curr_bt_rssi_state &= (~BT_RSSI_STATE_TXPOWER_LOW);
-
/* Check BT state related to BT_Idle in B/G mode. */
if (undec_sm_pwdb < 15)
curr_bt_rssi_state |= BT_RSSI_STATE_BG_EDCA_LOW;
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox