summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* NFC: st21nfcb: Add support for secure elementChristophe Ricard2015-02-025-2/+746
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The st21nfcb chipset has 3 SWP (Single Wire Protocol) lines and supports up to 3 secure elements (UICC/eSE and µSD in the future). Some st21nfcb firmware does not support the nci command nci_nfcee_mode_set(NCI_NFCEE_DISABLE). For this reason, we assume 2 secures elements are always present (UICC and eSE). They will be added to the SE list once successfully activated and they will be available only after running through enable_se handler or when the poll in listen mode is started. During initialization, the white_list will be always set assuming both UICC & eSE are present. On eSE activation, the ATR bytes are fetched to build the command exchange timeout. The se_io hook will allow to transfer data over SWP. 2 kind of events may appear data is sent over: - ST21NFCB_EVT_TRANSMIT_DATA when receiving an apdu answer - ST21NFCB_EVT_WTX_REQUEST when the secure element needs more time than expected to process a command. If this timeout expires, we send a software reset, and then a hardware one if it still fails. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* NFC: nci: Add HCI over NCI protocol supportChristophe Ricard2015-02-025-18/+815
| | | | | | | | | | | | | | | According to the NCI specification, one can use HCI over NCI to talk with specific NFCEE. The HCI network is viewed as one logical NFCEE. This is needed to support secure element running HCI only firmwares embedded on an NCI capable chipset, like e.g. the st21nfcb. There is some duplication between this piece of code and the HCI core code, but the latter would need to be abstracted even more to be able to use NCI as a logical transport for HCP packets. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* NFC: nci: Support logical connections managementChristophe Ricard2015-02-024-0/+118
| | | | | | | | | | In order to communicate with an NFCEE, we need to open a logical connection to it, by sending the NCI_OP_CORE_CONN_CREATE_CMD command to the NFCC. It's left up to the drivers to decide when to close an already opened logical connection. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* NFC: nci: Add NFCEE enabling and disabling supportChristophe Ricard2015-02-024-0/+44
| | | | | | | | | | NFCEEs can be enabled or disabled by sending the NCI_OP_NFCEE_MODE_SET_CMD command to the NFCC. This patch provides an API for drivers to enable and disable e.g. their NCI discoveredd secure elements. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* NFC: nci: Add NFCEE discover supportChristophe Ricard2015-02-024-0/+72
| | | | | | | | | | | | | | NFCEEs (NFC Execution Environment) have to be explicitly discovered by sending the NCI_OP_NFCEE_DISCOVER_CMD command. The NFCC will respond to this command by telling us how many NFCEEs are connected to it. Then the NFCC sends a notification command for each and every NFCEE connected. Here we implement support for sending NCI_OP_NFCEE_DISCOVER_CMD command, receiving the response and the potential notifications. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* NFC: nci: Add NCI NFCEE constantsChristophe Ricard2015-02-021-0/+48
| | | | | | | | | | | Add NFCEE NCI constant for: - NFCEE Interface/Protocols - Destination type - Destination-specific parameters type - NFCEE Discovery Action Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* NFC: nci: Add dynamic logical connections supportChristophe Ricard2015-02-025-40/+152
| | | | | | | | | | | | | The current NCI core only support the RF static connection. For other NFC features such as Secure Element communication, we may need to create logical connections to the NFCEE (Execution Environment. In order to track each logical connection ID dynamically, we add a linked list of connection info pointers to the nci_dev structure. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* pkt_sched: fq: remove useless TIME_WAIT checkEric Dumazet2015-01-291-2/+2
| | | | | | | | | | | | | | | TIME_WAIT sockets are not owning any skb. ip_send_unicast_reply() and tcp_v6_send_response() both use regular sockets. We can safely remove a test in sch_fq and save one cache line miss, as sk_state is far away from sk_pacing_rate. Tested at Google for about one year. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* act_connmark: fix dependencies betterArnd Bergmann2015-01-291-1/+1
| | | | | | | | | | | | | | NET_ACT_CONNMARK fails to build if NF_CONNTRACK_MARK is disabled, and d7924450e14ea4 ("act_connmark: Add missing dependency on NF_CONNTRACK_MARK") fixed that case, but missed the cased where NF_CONNTRACK is a loadable module. This adds the second dependency to ensure that NET_ACT_CONNMARK can only be built-in if NF_CONNTRACK is also part of the kernel rather than a loadable module. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David S. Miller <davem@davemloft.net>
* net: remove sock_iocbChristoph Hellwig2015-01-294-126/+43
| | | | | | | | | | | The sock_iocb structure is allocate on stack for each read/write-like operation on sockets, and contains various fields of which only the embedded msghdr and sometimes a pointer to the scm_cookie is ever used. Get rid of the sock_iocb and put a msghdr directly on the stack and pass the scm_cookie explicitly to netlink_mmap_sendmsg. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: David S. Miller <davem@davemloft.net>
* hisilicon: add some missing curly bracesDan Carpenter2015-01-291-1/+2
| | | | | | | | The if block was supposed to have curly braces. In the current code we complain about dropped rx packets when we shouldn't. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* openvswitch: Add support for checksums on UDP tunnels.Jesse Gross2015-01-294-7/+10
| | | | | | | | | | Currently, it isn't possible to request checksums on the outer UDP header of tunnels - the TUNNEL_CSUM flag is ignored. This adds support for requesting that UDP checksums be computed on transmit and properly reported if they are present on receive. Signed-off-by: Jesse Gross <jesse@nicira.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge tag 'nfc-next-3.20-1' of ↵David S. Miller2015-01-2921-149/+886
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/sameo/nfc-next NFC: 3.20 first pull request This is the first NFC pull request for 3.20. With this one we have: - Secure element support for the ST Micro st21nfca driver. This depends on a few HCI internal changes in order for example to support more than one secure element per controller. - ACPI support for NXP's pn544 HCI driver. This controller is found on many x86 SoCs and is typically enumerated on the ACPI bus there. - A few st21nfca and st21nfcb fixes. Signed-off-by: David S. Miller <davem@davemloft.net>
| * NFC: Add ACPI support for NXP PN544Robert Dolca2015-01-281-2/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently there is no support for ACPI. This patch uses the following configuration: - Device id: NXP5440 - Pin mapping: - 0 IRQ pin - 1 enable pin - 2 firmware pin Signed-off-by: Robert Dolca <robert.dolca@intel.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: PN544: GPIO access that may sleepRobert Dolca2015-01-281-10/+12
| | | | | | | | | | | | | | | | | | gpio_set_value was replaced with gpio_set_value_cansleep in order to allow GPIO access that may sleep. This is particularelly useful when GPIO is accessed using busses like I2C, SPI, USB Signed-off-by: Robert Dolca <robert.dolca@intel.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: dts: st21nfca: Document ese-present & uicc-present DTS propertyChristophe Ricard2015-01-281-0/+7
| | | | | | | | | | | | | | | | | | | | On st21nfca, the mechanism to enable a secure element needs to add 2 properties in order manage the SWP line correctly. Document ese-present and uicc-present properties. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfca: Adding support for secure elementChristophe Ricard2015-01-287-21/+608
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | st21nfca has 1 physical SWP line and can support up to 2 secure elements (UICC & eSE) thanks to an external switch managed with a gpio. The platform integrator needs to specify thanks to 2 initialization properties, uicc-present and ese-present, if it is suppose to have uicc and/or ese. Of course if the platform does not have an external switch, only one kind of secure element can be supported. Those parameters are under platform integrator responsibilities. During initialization, the white_list will be set according to those parameters. The discovery_se function will assume a secure element is physically present according to uicc-present and ese-present values and will add it to the secure element list. On ese activation, the atr is retrieved to calculate a command exchange timeout based on the first atr(TB) value. The se_io will allow to transfer data over SWP. 2 kind of events may appear after a data is sent over: - ST21NFCA_EVT_TRANSMIT_DATA when receiving an apdu answer - ST21NFCA_EVT_WTX_REQUEST when the secure element needs more time than expected to compute a command. If this timeout expired, a first recovery tentative consist to send a simple software reset proprietary command. If this tentative still fail, a second recovery tentative consist to send a hardware reset proprietary command. This function is only relevant for eSE like secure element. This patch also change the way a pipe is referenced. There can be different pipe connected to the same gate with different host destination (ex: CONNECTIVITY). In order to keep host information every pipe are reference with a tuple (gate, host). In order to reduce changes, we are keeping unchanged the way a gate is addressed on the Terminal Host. However, this is working because we consider the apdu reader gate is only present on the eSE slot also the connectivity gate cannot give a reliable value; it will give the latest stored pipe value. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: hci: Remove nfc_hci_pipe2gate functionChristophe Ricard2015-01-282-13/+0
| | | | | | | | | | | | | | | | With the newly introduced pipes table hci_dev fields, the nfc_hci_pipe2gate routine is no longer needed. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: microread: Change event_received gate parameter to pipeChristophe Ricard2015-01-281-1/+2
| | | | | | | | | | | | The below event_received hci handler has change the gate parameter to pipe. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
| * NFC: pn544: Change event_received gate parameter to pipeChristophe Ricard2015-01-281-1/+2
| | | | | | | | | | | | The below event_received hci handler has change the gate parameter to pipe. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
| * NFC: hci: Add cmd_received handlerChristophe Ricard2015-01-282-0/+11
| | | | | | | | | | | | | | | | When a command is received, it is sometime needed to let the CLF driver do some additional operations. (ex: count remaining pipe notification...) Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: hci: Reference every pipe information according to notificationChristophe Ricard2015-01-282-22/+44
| | | | | | | | | | | | | | | | | | We update the tracked pipes status when receiving HCI commands. Also we forward HCI errors and we reply to any HCI command, even though we don't support it. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: hci: Change nfc_hci_send_response gate parameter to pipeChristophe Ricard2015-01-273-23/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | As there can be several pipes connected to the same gate, we need to know which pipe ID to use when sending an HCI response. A gate ID is not enough. Instead of changing the nfc_hci_send_response() API to something not aligned with the rest of the HCI API, we call nfc_hci_hcp_message_tx directly. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: hci: Add pipes table to reference them with a tuple {gate, host}Christophe Ricard2015-01-273-8/+47
| | | | | | | | | | | | | | | | | | | | In order to keep host source information on specific hci event (such as evt_connectivity or evt_transaction) and because 2 pipes can be connected to the same gate, it is necessary to add a table referencing every pipe with a {gate, host} tuple. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: hci: Change event_received handler gate parameter to pipeChristophe Ricard2015-01-272-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Several pipes may point to the same CLF gate, so getting the gate ID as an input is not enough. For example dual secure element may have 2 pipes (1 for uicc and 1 for eSE) pointing to the connectivity gate. As resolving gate and host IDs can be done from a pipe, we now pass the pipe ID to the event received handler. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfcb: Fix copy/paste error in commentChristophe Ricard2015-01-261-1/+1
| | | | | | | | | | | | | | | | | | | | include/linux/platform_data/st21nfcb.h is based on include/linux/platform_data/st21nfca.h. The endif comment is inacurrate for st21nfcb. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfcb: Remove useless includeChristophe Ricard2015-01-261-2/+0
| | | | | | | | | | | | | | | | include/linux/platform_data/st21nfcb.h is phy generic. There is no need to include linux/i2c.h Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfcb: Fix "NULL pointer dereference" possible errorChristophe Ricard2015-01-261-7/+11
| | | | | | | | | | | | | | | | | | | | When the platform with CONFIG_ST21NFCB_I2C=y without any st21nfcb component physically connected a: "Unable to handle kernel NULL pointer dereference at virtual address" may show up at driver initialization phase. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfca: Fix some skb memory leaksChristophe Ricard2015-01-261-16/+21
| | | | | | | | | | | | | | Fix some memory leaks after some nfc_hci_get_param calls. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfca: Remove checkpatch.pl warning Possible unnecessary 'out of ↵Christophe Ricard2015-01-261-4/+1
| | | | | | | | | | | | | | | | | | | | memory' message Remove unnecessary memory allocation message already shown by devm_kzalloc. This remove a warning when running scripts/checkpatch. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfca: Remove skb_pipe_list and skb_pipe_info useless allocationChristophe Ricard2015-01-261-13/+0
| | | | | | | | | | | | | | | | skb_pipe_list and skb_pipe_info are allocated in nfc_hci_send_cmd. alloc_skb on those buffer are then useless. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: nfc_disable_se Remove useless blank line at beginning of functionChristophe Ricard2015-01-261-1/+0
| | | | | | | | | | | | | | Remove one useless blank line at beginning of nfc_disable_se function. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: nfc_enable_se Remove useless blank line at beginning of functionChristophe Ricard2015-01-261-1/+0
| | | | | | | | | | | | | | Remove one useless blank line at beginning of nfc_enable_se function. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfcb: Avoid use of skb after freeChristophe Ricard2015-01-261-1/+1
| | | | | | | | | | | | | | | | | | Do not insert in send queue the skb that contains unknown Packet Control Byte Acked-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Anda-Maria Nicolae <anda-maria.nicolae@intel.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfca: Remove unreachable codeChristophe Ricard2015-01-261-2/+0
| | | | | | | | | | | | | | | | kfree_skb(skb) in st21nfca_hci_event_received is never reach. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: st21nfcb: Fix "WARNING: invalid free of devm_ allocated data"Christophe Ricard2015-01-261-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | ndlc pointer got allocated with devm_kzalloc in ndlc_probe function. This gives this error message: drivers/nfc/st21nfcb/ndlc.c:296:1-6: WARNING: invalid free of devm_ allocated data. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Reported-by: Julia Lawall <julia.lawall@lip6.fr> Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: dts: st21nfcb: Fix compatible string spelling to follow other driversChristophe Ricard2015-01-262-2/+3
| | | | | | | | | | | | | | | | | | | | | | Other drivers are following the following compatible string format for dts: s/_/-/ Because some devices may still use the previous string, the new corrected string is added to the of_device_id table. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
| * NFC: dts: st21nfca: Fix compatible string spelling to follow other driversChristophe Ricard2015-01-262-2/+3
| | | | | | | | | | | | | | | | | | | | | | Other drivers are following the following compatible string format for dts: s/_/-/ Because some devices may still use the previous string, the new corrected string is added to the of_device_id table. Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
* | Merge branch 'stmmac-pci'David S. Miller2015-01-281-1/+112
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Andy Shevchenko says: ==================== stmmac: Enable Intel Quark SoC X1000 Ethernet support This is third version of the patch series [1] to bring network card support to Intel Quark SoC. The series has been tested on Intel Galileo board. Changelog v3: - rebase on top of recent net-next - rework an approach to get the custom configuration - rework an approach how to get unique bus_id - improve DMI lookup function [1] http://www.spinics.net/lists/netdev/msg296010.html ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * | stmmac: pci: add MSI support for Intel Quark X1000Kweh, Hock Leong2015-01-281-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Intel Quark SoC X1000, both of the Ethernet controllers support MSI interrupt handling. This patch enables them to use MSI interrupt servicing in stmmac_pci for Intel Quark X1000. Signed-off-by: Kweh, Hock Leong <hock.leong.kweh@intel.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | stmmac: pci: introduce Intel Quark X1000 runtime detectionAndy Shevchenko2015-01-281-1/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces run-time board detection through DMI and MAC-PHY configuration function used by quark_default_data() during initialization. It fills up the phy_addr for Galileo and Galileo Gen2 boards to indicate that the Ethernet MAC controller is or is not connected to any PHY. The implementation takes into consideration for future expansion in Quark series boards that may have different PHY address that is linked to its MAC controllers. This piece of work is derived from Bryan O'Donoghue's initial work for Quark X1000 enabling. Signed-off-by: Kweh, Hock Leong <hock.leong.kweh@intel.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | stmmac: pci: add support for Intel Quark X1000Kweh, Hock Leong2015-01-281-1/+50
|/ / | | | | | | | | | | | | | | | | | | | | The Intel Quark SoC X1000 provides two 10/100 Mbps Ethernet MAC controllers which may or may not be connected to PHY on board. This MAC controller only supports RMII PHY. This patch add Quark PCI ID as well as Quark default platform data info to this driver. Signed-off-by: Kweh, Hock Leong <hock.leong.kweh@intel.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: netcp: remove unused kconfig option and codeKaricheri, Muralidharan2015-01-282-2/+1
| | | | | | | | | | | | | | | | | | Currently CPTS is built into the netcp driver even though there is no call out to the CPTS driver. This patch removes the dependency in Kconfig and remove cpts.o from the Makefile for NetCP. Signed-off-by: Murali Karicheri <m-karicheri2@ti.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | cxgb4: Move firmware version MACRO to t4fw_version.hHariprasad Shenai2015-01-283-10/+49
| | | | | | | | | | | | | | | | Move firmware version MACRO to a new t4fw_version.h file so that csiostor driver can also use it. Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | csiostor:T5 Firmware fix and cleanup.Praveen Madhavan2015-01-283-256/+127
| | | | | | | | | | | | | | | | | | | | | | | | This patch fix is to use default firmware configuration files present in the adapter incase if not available in standard /lib/firmware/* dir. Additional cleanup is done to reuse flash related defines from cxgb4 header file. Please apply over net-next since it depends on previous commit. Signed-off-by: Praveen Madhavan <praveenm@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'mlx4-next'David S. Miller2015-01-2812-72/+136
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Amir Vadai says: ==================== Mellanox ethernet driver updates Jan-27-2015 This patchset introduces some bug fixes, code cleanups and support in a new firmware event called recoverable error events. Patches were applied and tested against commit b8665c6 ("net: dsa/mv88e6352: make mv88e6352_wait generic") Changes from V0: - Patch 6/11 ("net/mlx4_core: Fix struct mlx4_vhcr_cmd to make implicit padding explicit"): - Removed __packed - Rephrased commit message - Added a new patch by Majd ("net/mlx4_core: Update the HCA core clock frequency after INIT_PORT") ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net/mlx4_core: Update the HCA core clock frequency after INIT_PORTMajd Dibbiny2015-01-281-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The firmware might change the hca core clock frequency after the driver issues the INIT_PORT command. Therefore we need to query the new value again and save in to the cached dev caps. Fixes: ddd8a6c1 ('net/mlx4_core: Read HCA frequency and map internal clock') Signed-off-by: Majd Dibbiny <majd@mellanox.com> Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: Amir Vadai <amirv@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net/mlx4_core: Fix device capabilities dumpingOr Gerlitz2015-01-281-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We are dumping device capabilities which are supported both by the firmware and the driver. Align the array that holds the capability strings with this practice. Reported-by: Yuval Shaia <yuval.shaia@oracle.com> Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: Amir Vadai <amirv@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net/mlx4: Fix memory corruption in mlx4_MAD_IFC_wrapperMatan Barak2015-01-281-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a memory corruption at mlx4_MAD_IFC_wrapper. A table of size dev->caps.pkey_table_len[port]*sizeof(*table) was allocated, but get_full_pkey_table() assumes that the number of entries in the table is a multiplication of 32 (which isn't always correct). Fixes: 0a9a018 ('mlx4: MAD_IFC paravirtualization') Signed-off-by: Matan Barak <matanb@mellanox.com> Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: Amir Vadai <amirv@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | net/mlx4_en: Use ethtool cmd->autoneg as a hint for ethtool set settingsSaeed Mahameed2015-01-281-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use cmd->autoneg as a user hint to decide what to set in ethtool set settings callback. When cmd->autoneg == AUTONEG_ENABLE set according to ethtool->advertise otherwise, set according to ethtool->speed. Usage: - ethtool -s eth<x> speed 56000 autoneg off - ethtool -s eth<x> advertise 0x800000 autoneg on While we're here: - Move proto_admin masking outcome check to be adjacent to the operation. - Move en_warn("port reset..") print to "port reset" block. Fixes: 312df74 ("net/mlx4_en: mlx4_en_set_settings() always fails when autoneg is set") Signed-off-by: Saeed Mahameed <saeedm@mellanox.com> Signed-off-by: Amir Vadai <amirv@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>