Commit graph

506,942 commits

Author SHA1 Message Date
Nicolas Dichtel
f24062b07d ipv6: fix a refcnt leak with peer addr
There is no reason to take a refcnt before deleting the peer address route.
It's done some lines below for the local prefix route because
inet6_ifa_finish_destroy() will release it at the end.
For the peer address route, we want to free it right now.

This bug has been introduced by commit
caeaba7900 ("ipv6: add support of peer address").

Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 17:13:24 -07:00
Pratyush Anand
adf70fc087 PCI: designware: Fold struct pcie_port_info into struct pcie_port
The struct pcie_port_info doesn't contain any exclusive information
compared to other elements of struct pcie_port.  So, keeping a separate
structure does not seem very logical.  Therefore remove this struct and
embed its elements directly into struct pcie_port.

Signed-off-by: Pratyush Anand <pratyush.anand@st.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Mohit Kumar <mohit.kumar@st.com>
2014-09-05 17:48:54 -06:00
Andy Zhou
29abe2fda5 l2tp: fix missing line continuation
This syntax error was covered by L2TP_REFCNT_DEBUG not being set by
default.

Signed-off-by: Andy Zhou <azhou@nicira.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 15:19:53 -07:00
David S. Miller
f35d2a5f8d Merge branch 'amd-xgbe-next'
Tom Lendacky says:

====================
amd-xgbe: AMD XGBE driver updates 2014-09-03

The following series of patches includes fixes/updates to the driver.

- Query the device for the actual speed mode (KR/KX) rather than trying
  to track it
- Update parallel detection logic to support KR mode
- Fix new warnings from checkpatch in the amd-xgbe and amd-xgbe-phy
  driver

This patch series is based on net-next.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 15:11:25 -07:00
Lendacky, Thomas
b73c798b17 amd-xgbe-phy: Checkpatch driver fixes
This patch contains fixes identified by checkpatch when run with the
strict option.

Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 15:11:21 -07:00
Lendacky, Thomas
a2ea14d772 amd-xgbe: Checkpatch driver fixes
This patch contains fixes identified by checkpatch when run with the
strict option.

Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 15:11:20 -07:00
Lendacky, Thomas
e6f0562ff4 amd-xgbe-phy: Enhance parallel detection to support KR speed
Add support to allow parallel detection to work in KR speed. With
both speed modes of KX and KR supported, KX must be checked first.

Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 15:11:20 -07:00
Lendacky, Thomas
e3eec4e793 amd-xgbe-phy: Check device for current speed mode (KR/KX)
Since device resets can change the current mode it's possible to think
the device is in a different mode than it actually is.  Rather than
trying to determine every place that is needed to set/save the current
mode, be safe and check the devices actual mode when needed rather than
trying to track it.

Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 15:11:20 -07:00
Willem de Bruijn
c199105d15 net-timestamp: only report sw timestamp if reporting bit is set
The timestamping API has separate bits for generating and reporting
timestamps. A software timestamp should only be reported for a packet
when the packet has the relevant generation flag (SKBTX_..) set
and the socket has reporting bit SOF_TIMESTAMPING_SOFTWARE set.

The second check was accidentally removed. Reinstitute the original
behavior.

Tested:
  Without this patch, Documentation/networking/txtimestamp reports
  timestamps regardless of whether SOF_TIMESTAMPING_SOFTWARE is set.
  After the patch, it only reports them when the flag is set.

Fixes: f24b9be595 ("net-timestamp: extend SCM_TIMESTAMPING ancillary data struct")
Signed-off-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 15:02:43 -07:00
Chen Gang
4357450af3 drivers/net/fddi/skfp/h/skfbi.h: Remove useless PCI_BASE_2ND macros
They are use less, and may generate compiling warnings, so remove them
(microblaze, arc, arm64, and unicore32 have already defined PCI_IOBASE).

The related warnings (with allmodconfig under microblaze):

  CC [M]  drivers/net/fddi/skfp/skfddi.o
  In file included from drivers/net/fddi/skfp/skfddi.c:95:0:
  drivers/net/fddi/skfp/h/skfbi.h:151:0: warning: "PCI_IOBASE" redefined
   #define PCI_IOBASE 0xffffff00L  /* Bit 31..8:  I/O Base address */
   ^
  In file included from include/linux/io.h:22:0,
                   from include/linux/pci.h:31,
                   from drivers/net/fddi/skfp/skfddi.c:82:
  ./arch/microblaze/include/asm/io.h:33:0: note: this is the location of the previous definition
   #define PCI_IOBASE ((void __iomem *)_IO_BASE)
   ^

Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 14:51:09 -07:00
Guillaume Nault
eed4d839b0 l2tp: fix race while getting PMTU on PPP pseudo-wire
Use dst_entry held by sk_dst_get() to retrieve tunnel's PMTU.

The dst_mtu(__sk_dst_get(tunnel->sock)) call was racy. __sk_dst_get()
could return NULL if tunnel->sock->sk_dst_cache was reset just before the
call, thus making dst_mtu() dereference a NULL pointer:

[ 1937.661598] BUG: unable to handle kernel NULL pointer dereference at 0000000000000020
[ 1937.664005] IP: [<ffffffffa049db88>] pppol2tp_connect+0x33d/0x41e [l2tp_ppp]
[ 1937.664005] PGD daf0c067 PUD d9f93067 PMD 0
[ 1937.664005] Oops: 0000 [#1] SMP
[ 1937.664005] Modules linked in: l2tp_ppp l2tp_netlink l2tp_core ip6table_filter ip6_tables iptable_filter ip_tables ebtable_nat ebtables x_tables udp_tunnel pppoe pppox ppp_generic slhc deflate ctr twofish_generic twofish_x86_64_3way xts lrw gf128mul glue_helper twofish_x86_64 twofish_common blowfish_generic blowfish_x86_64 blowfish_common des_generic cbc xcbc rmd160 sha512_generic hmac crypto_null af_key xfrm_algo 8021q garp bridge stp llc tun atmtcp clip atm ext3 mbcache jbd iTCO_wdt coretemp kvm_intel iTCO_vendor_support kvm pcspkr evdev ehci_pci lpc_ich mfd_core i5400_edac edac_core i5k_amb shpchp button processor thermal_sys xfs crc32c_generic libcrc32c dm_mod usbhid sg hid sr_mod sd_mod cdrom crc_t10dif crct10dif_common ata_generic ahci ata_piix tg3 libahci libata uhci_hcd ptp ehci_hcd pps_core usbcore scsi_mod libphy usb_common [last unloaded: l2tp_core]
[ 1937.664005] CPU: 0 PID: 10022 Comm: l2tpstress Tainted: G           O   3.17.0-rc1 #1
[ 1937.664005] Hardware name: HP ProLiant DL160 G5, BIOS O12 08/22/2008
[ 1937.664005] task: ffff8800d8fda790 ti: ffff8800c43c4000 task.ti: ffff8800c43c4000
[ 1937.664005] RIP: 0010:[<ffffffffa049db88>]  [<ffffffffa049db88>] pppol2tp_connect+0x33d/0x41e [l2tp_ppp]
[ 1937.664005] RSP: 0018:ffff8800c43c7de8  EFLAGS: 00010282
[ 1937.664005] RAX: ffff8800da8a7240 RBX: ffff8800d8c64600 RCX: 000001c325a137b5
[ 1937.664005] RDX: 8c6318c6318c6320 RSI: 000000000000010c RDI: 0000000000000000
[ 1937.664005] RBP: ffff8800c43c7ea8 R08: 0000000000000000 R09: 0000000000000000
[ 1937.664005] R10: ffffffffa048e2c0 R11: ffff8800d8c64600 R12: ffff8800ca7a5000
[ 1937.664005] R13: ffff8800c439bf40 R14: 000000000000000c R15: 0000000000000009
[ 1937.664005] FS:  00007fd7f610f700(0000) GS:ffff88011a600000(0000) knlGS:0000000000000000
[ 1937.664005] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 1937.664005] CR2: 0000000000000020 CR3: 00000000d9d75000 CR4: 00000000000027e0
[ 1937.664005] Stack:
[ 1937.664005]  ffffffffa049da80 ffff8800d8fda790 000000000000005b ffff880000000009
[ 1937.664005]  ffff8800daf3f200 0000000000000003 ffff8800c43c7e48 ffffffff81109b57
[ 1937.664005]  ffffffff81109b0e ffffffff8114c566 0000000000000000 0000000000000000
[ 1937.664005] Call Trace:
[ 1937.664005]  [<ffffffffa049da80>] ? pppol2tp_connect+0x235/0x41e [l2tp_ppp]
[ 1937.664005]  [<ffffffff81109b57>] ? might_fault+0x9e/0xa5
[ 1937.664005]  [<ffffffff81109b0e>] ? might_fault+0x55/0xa5
[ 1937.664005]  [<ffffffff8114c566>] ? rcu_read_unlock+0x1c/0x26
[ 1937.664005]  [<ffffffff81309196>] SYSC_connect+0x87/0xb1
[ 1937.664005]  [<ffffffff813e56f7>] ? sysret_check+0x1b/0x56
[ 1937.664005]  [<ffffffff8107590d>] ? trace_hardirqs_on_caller+0x145/0x1a1
[ 1937.664005]  [<ffffffff81213dee>] ? trace_hardirqs_on_thunk+0x3a/0x3f
[ 1937.664005]  [<ffffffff8114c262>] ? spin_lock+0x9/0xb
[ 1937.664005]  [<ffffffff813092b4>] SyS_connect+0x9/0xb
[ 1937.664005]  [<ffffffff813e56d2>] system_call_fastpath+0x16/0x1b
[ 1937.664005] Code: 10 2a 84 81 e8 65 76 bd e0 65 ff 0c 25 10 bb 00 00 4d 85 ed 74 37 48 8b 85 60 ff ff ff 48 8b 80 88 01 00 00 48 8b b8 10 02 00 00 <48> 8b 47 20 ff 50 20 85 c0 74 0f 83 e8 28 89 83 10 01 00 00 89
[ 1937.664005] RIP  [<ffffffffa049db88>] pppol2tp_connect+0x33d/0x41e [l2tp_ppp]
[ 1937.664005]  RSP <ffff8800c43c7de8>
[ 1937.664005] CR2: 0000000000000020
[ 1939.559375] ---[ end trace 82d44500f28f8708 ]---

Fixes: f34c4a35d8 ("l2tp: take PMTU from tunnel UDP socket")
Signed-off-by: Guillaume Nault <g.nault@alphalink.fr>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 14:40:18 -07:00
Arnd Bergmann
0b7f509d45 This sets up the dynamically detected IM-PD1 GPIO lines
by way of GPIO descriptors, avoiding any use of the GPIO
 global numberspace.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUCXtyAAoJEEEQszewGV1zGLsQAKeUjWMSeSZj/6POdBUsAGz/
 eDfVBdMBuc9X8jOupqW3fEyKnWAG0ItfHuKJ69k/z+E8qUuih3Op6Wzb3DTZl7KF
 Vhqiw2Wxc+V+UuuQbGuHNStph8OlBdM1kct19S5nUScNE6eiyg14HGPKC9Pjn37X
 Oz4OAnIUxuLOFSNRCujCO2Q9DCINRAmR5hzFrKw5rmYsk/ekFkZFmIwY4yjuHszE
 3YxS7lbwyd9PgsFtKzFPCD2CaE+bg5XnW0og6u4fRx96uUZsFD3p1V0LXczicm5H
 vcgUHeZS+cMWyuvwoA6ODr6tHILgNVofyqW9YyIRVTfH1FT2/dBh7/gmVsGoEbBd
 Y2L75huOprHl6rgrt21zcIBQIY2S9GTBspXIhZBuRt4mhtUI/e4ahVvOP2CaZXtM
 hz7csVH2VNuO5E2NYHTAm0jcWrrwrdtYKoiuAi0RGVRgZBkg9uYUDmlTKAclsORu
 uH2MDx3+p8G74vgD6DCiaAep3OsS5PCEbECkSkym91y6ZbpuNh7VyhCKbAEw8q6C
 +hVP/T7hydRD0EIxNkNB0M5Q/YarXVvrClcj2oXo2C1mTZFdQrTFMijpUhMxVgND
 3QEhHZrS6k205LtuCaADgd5R4Qgf4LM0SdAigm1FwRUgoNlKiyONoOeY8UWQCdE0
 fovRupLS65wD2Xur5M77
 =/CT4
 -----END PGP SIGNATURE-----

Merge tag 'integrator-for-v3.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator into next/soc

Merge "single Integrator patch" from Linus Walleij:

This sets up the dynamically detected IM-PD1 GPIO lines
by way of GPIO descriptors, avoiding any use of the GPIO
global numberspace.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'integrator-for-v3.18-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
  ARM: integrator: add MMCI device to IM-PD1
2014-09-05 22:46:24 +02:00
Arnd Bergmann
640b321aba Renesas ARM Based SoC Clk Updates for v3.18
* Add r8a7794 support
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJUA9NYAAoJENfPZGlqN0++T2EP/Akt8EMj8Wy0QQ51VLTqfEu5
 YrA2UnZo927GaXuwqPnFcePz6ZR29Kq7HQAzJN7UwghPa18u5RkPxnxK+MBLldWF
 87bd7urI1sr8TqG7Ilaxp9E2+RYhwBJc+n+cDJOwQHb/pdcVrIfgVc0YajsGpw8f
 bSguW9UUfdLj+gz6pIO7uxtX+sS8Wt6CXwu/3a05I9puox4EmD/n+IWjD9K0Ckq4
 EiNZKSquUnv0g4NOUleOll5EZ1HCaTM/YOylx+ePXXZ/hilXl8o8ncJwS9zzhFBy
 ihFUqQ0j+JoCZRnSjOLfD7NoX0iqosRm/s60no7T8FhVwllIxgmwmMDxJx11J/u/
 q0CH2YnzvE7ChqjK1fz/hm1JQJNACeok3inSXCsUdt8mle8LxxgxqfIGg0vsDc3L
 0I0SGfJltxtj+pa/vSbta3OzGguux7WwOe7Llfg1ERUmJge1Ee+nPc6ExHUs1TZ+
 Il8eirH45Oa9ONurQBwgtbCyWpAV7g3r97ije2dURRycatuq+svHMK41tJyd8vAo
 YDMz1/yxS1YN+N5FnSc1xlpShj2WN6pU9gkA08XczLnOZzaNsTEoVtnofXOCJvaX
 or8fJD2cm6rCEAnrUoVibGdJzbaR0pxO9iya8qNSE1PpWh2Dlj5aAM7y3zu1Oo6f
 ffAPgjvbBxHAmnVqrIhV
 =tvK/
 -----END PGP SIGNATURE-----

Merge tag 'renesas-clk-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc

Merge "Renesas ARM Based SoC Clk Updates for v3.18" from Simon Horman:

* Add r8a7794 support

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'renesas-clk-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  clk: shmobile: Add r8a7794 support
2014-09-05 22:45:57 +02:00
Linus Torvalds
86ba8b0aee Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
Pull i2c bugfixes from Wolfram Sang:
 "I2C driver bugfixes for the 3.17 release.  Details can be found in the
  commit messages, yet I think this is typical driver stuff"

* 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
  Revert "i2c: rcar: remove spinlock"
  i2c: at91: add bound checking on SMBus block length bytes
  i2c: rk3x: fix bug that cause transfer fails in master receive mode
  i2c: at91: Fix a race condition during signal handling in at91_do_twi_xfer.
  i2c: mv64xxx: continue probe when clock-frequency is missing
  i2c: rcar: fix MNR interrupt handling
2014-09-05 13:45:09 -07:00
Arnd Bergmann
facdb3dd37 DT additions for DA850. Adds EDMA and audio support.
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.10 (GNU/Linux)
 
 iQIcBAABAgAGBQJUBD55AAoJEGFBu2jqvgRN6cEP/jpypaeh/DhFtE3bmiPZoiYA
 Uu50OApJ/L00fqBoBivTIf5BUOOXTqu8vZy2+m/BjCFkjSgeq2PY10GbuLspeB5r
 FInEg8K9Ct586orDzpJSwFLO6xFkbh1e0GEFhZR9ugBbVcHMDwhiXLRsER0SuRSF
 t7aWy68J5oKenGiw53L6mlLwjj8Qa/Qc9GJmgg5FJ45unCJD6pAe6fWuBg90lxJA
 yGrkRvPOIZjJMwUzqnmVWWOjY472j7JKa4omNN4Yvk2bBpVBgYmvpDgls1VAKZHO
 Ynmu92Oe7lwkjT/XOXoyOA02UvxLcXSTgNS8XIs3ROdR7BgI2kNxZCkE1zx0+vDf
 xmQBXG+i30mEBMmvf4VyOeGMhjN3kbD4BTKnaUjrWqxXD2w0HmuxB/YHPMWo4ze0
 jusZRukQNc9Xxo4lT5WcgJd6GwUUHs3lqPvNse/tkeH6zh0bqqA9X43k4eqyx2El
 4WwpXj5Rl+JTd0J/BEgnXZQc2mA30o0G62cMN9r8fJNDiqsEI3JLZEY0AvEYEhth
 kw0w2t8bdsHiWP3NmrpQ3JYq1/eGFvARCnDsqRxmPJ9yKiPqoQD0uzuULkVYZ6+H
 466hkND5NRAfRx76sfVQpdXqqua7t0OLoPTOq5SGaFnDURCmwLIxgXOSYA53S66W
 oNmHlf8ccNwXyj43muzV
 =b/MD
 -----END PGP SIGNATURE-----

Merge tag 'davinci-for-v3.18/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/dt

Pull "DT additions for DA850" from Sekhar Nori:

Adds EDMA and audio support

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'davinci-for-v3.18/dt' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci:
  ARM: DTS: da850-evm: Enable audio via simple-card
  ARM: DTS: da850-evm: Add node for tlv320aic3106 codec
  ARM: DTS: da850-evm: Enable McASP via DT boot
  ARM: DTS: da850: Add node for McASP
  ARM: DTS: da850: Add node for edma0
  ARM: davinci: da8xx-dt: add OF_DEV_AUXDATA entry for mcasp0
2014-09-05 22:33:13 +02:00
Arnd Bergmann
85ff58a3be First batch of AT91 defconfig update for 3.18:
- a dependency needed for SPI flash
 - enable sound on DT platforms
 - cleanup of current defconfigs:
   - addition of new PWM subsystem and related drivers
   - addition of ADC/touchscreen, watchdog or USB depending on the SoC
   - addition of power/reset drivers activated during this development cycle
   - removal of obsolete config options
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUBcMEAAoJEAf03oE53VmQpGkH/27XMjx0kVZmE5Gc+UDjLl4u
 skEnYxOP9gRtHWhBKADAZUBwP8PBIrj3d7214u7lG+nC4KGwLTH4dBQc6GGPEpb9
 5cAePMmXIZAP1xrkytg5/RM4LuZ2Zd/A5cS2ajS6FZ1IpSmZ4nN2L7Y8m6HVFXU5
 nVP73aYaaCJZUF91pZdlGZ75gELCR7KXM9GYnf/y5S/QIMdVTjMZEpea1SKMHsPH
 iKUsD8enwQjzR+E2oOl5kSbGtnu/7RtpS1/8YkUb77J4HE90nD1p3VHF3a+F/bzT
 SAZmQzO/6FHWKhTV65Spc6k6prqA80vmRlvht09FbTM1/TNRa9tRrXWTWWLAwNU=
 =nF+C
 -----END PGP SIGNATURE-----

Merge tag 'at91-defconfig' of git://github.com/at91linux/linux-at91 into next/defconfig

Pull "First batch of AT91 defconfig update for 3.18" from Nicolas Ferre:

- a dependency needed for SPI flash
- enable sound on DT platforms
- cleanup of current defconfigs:
  - addition of new PWM subsystem and related drivers
  - addition of ADC/touchscreen, watchdog or USB depending on the SoC
  - addition of power/reset drivers activated during this development cycle
  - removal of obsolete config options

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'at91-defconfig' of git://github.com/at91linux/linux-at91:
  ARM: at91: sama5: update defconfig
  ARM: at91: at91sam9rl: update defconfig
  ARM: at91: at91sam9g45: update defconfig
  ARM: at91: at91sam9263: update defconfig
  ARM: at91: at91sam9261_9g10: update defconfig
  ARM: at91: at91sam9260_9g20: update defconfig
  ARM: at91: at91_dt: update defconfig
  ARM: at91/sama5_defconfig: enable sound support
  ARM: at91/at91_dt_defconfig: enable sound support
  ARM: at91: add MTD_SPI_NOR (new dependency for M25P80)
2014-09-05 22:29:46 +02:00
Kevin Hilman
389710837f First AT91 fixes batch for 3.17:
- compatibility string precision
 - clock registration and USB DT fix for at91rm9200
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUCdngAAoJEAf03oE53VmQmowH/2CS+SER/RN7V/PxzVF2iQj1
 Q4/CcTmdeVEMQu3s+qZ9jVUpVQUFBijIHljXsup6eDgVyUQyLWLgWmVqqXo0yHYU
 W/BC7c8F8VQRJ79Nd69PDJlP4Jmrke2Lgbs1OSWqKa/DOVNiWhd5sWbK6I1rDCUm
 b8eULhxFlQ2ltMmaQIbaVmrMtSnny0RHAWtCoCfDL5TpCOdQwRCwaeVm7IW8SMtt
 yQZETIBxQSjrsdfteIls7HRTLCnVQWN/jsSNu0F42qwinTtpKAOoWEk22+tkePzl
 +bDiamePVWmlUOgFhQFSVhtaNASlViSsXQZYsyQLyN5sYcuxvJr3F7O4y1snHSo=
 =7Uvz
 -----END PGP SIGNATURE-----

Merge tag 'at91-fixes' of git://github.com/at91linux/linux-at91 into fixes

Merge "at91: fixes for 3.17 #1" from Nicols Ferre:

First AT91 fixes batch for 3.17:
- compatibility string precision
- clock registration and USB DT fix for at91rm9200

* tag 'at91-fixes' of git://github.com/at91linux/linux-at91:
  ARM: at91/dt: rm9200: fix usb clock definition
  ARM: at91: rm9200: fix clock registration
  ARM: at91/dt: sam9g20: set at91sam9g20 pllb driver

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2014-09-05 13:29:17 -07:00
Arnd Bergmann
d62584f3c7 Second batch of AT91 DT patches for 3.18:
- 2 little fixes for at91sam9x5 and at91sam9n12ek
 - removal of a board specific hook for sama5d3xek about phy fixup
   replaced with proper DT property definition.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUBK3XAAoJEAf03oE53VmQl3cIAIbJ4yIfyRXrhTpLcPdt1BBi
 n1WEKIMcZ8VuNt7oksbGwbJk4wOXDb1N9JDJ0UhQ9N7Kt7kCQentK6Zsx0aBwP0P
 CQDKk5w8MF8n/WPDbrEe4ibzEJKzJtmnXL1GeE8vKJxj66XwRNzT/V3LROfFBbrg
 eK64HX1NBVzpro5K6hfOZ7B2V0RM1sKEtgE1vLA+j3xcSpkjp2czqj7t7rehCL+d
 x+iGU1Fn6VXv1KVziiVcKZs0Q+SuvH3rfKOFMFXY2judobCyVwwvI7XGZERAadhB
 pDXoRzS0vMzXKx4/TaxN8lRrprzGgh0k6TWTaXD4MOKNgLD5NUfDLgw3WrpFQo0=
 =fuGI
 -----END PGP SIGNATURE-----

Merge tag 'at91-dt2' of git://github.com/at91linux/linux-at91 into next/dt

Pull "Second batch of AT91 DT patches for 3.18" from Nicolas Ferre:

- 2 little fixes for at91sam9x5 and at91sam9n12ek
- removal of a board specific hook for sama5d3xek about phy fixup
  replaced with proper DT property definition.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'at91-dt2' of git://github.com/at91linux/linux-at91:
  ARM: at91: remove phy fixup for sama5d3xek boards
  ARM: at91/dt: describe rgmii ethernet phy connected to sama5d3xek boards
  ARM: at91/dt: sam9n12ek: ohci: add port and vbus property
  ARM: at91/dt: sam9x5: fix ADC compatible string
2014-09-05 22:28:00 +02:00
Arnd Bergmann
6ce041aba3 First batch of AT91 drivers for 3.18:
- reset, poweroff and ram drivers are moved to their proper
   location instead of being in mach-at91 directory. They now use
   the appropriate frameworks.
 - big amount of removal of these machine specific drivers and use
   of the newly created drivers. This lead to an overhaul of the setup.c AT91
   startup code.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUBKc2AAoJEAf03oE53VmQ0BkIAL1t9foWRqNmU5EaSDKvZRQ2
 6pN5995VeU05cmK5v5FwsxDAoGulo0l7klegZiA+dspUfNUPzNQ87dU/xlfCsQiJ
 rJvOxE1NYNUtM6IcnKw+JU8s7RoPl1mhgh5KXdFckjgwwEmAiAoX4Tdx15gcRGaE
 3BEYlNGDudqMaQ+r/NE1IRti5cExQKiEBwktSqZC3eVMMfJ4niaCYy69t6z4hWds
 nbX6FQd6mHzxW8uYd/C85Blb5IhktFp0lgIChAYRXRdVRcMrTSHVhs0x6zh30o3T
 n2xeWgad0qmSsZCSXf59UT9MWK7woLWBUTUSEkgGWksM91om6EC9FJS4zcijp4E=
 =MqpU
 -----END PGP SIGNATURE-----

Merge tag 'at91-drivers' of git://github.com/at91linux/linux-at91 into next/drivers

Merge "First batch of AT91 drivers for 3.18" from Nicolas Ferre:

- reset, poweroff and ram drivers are moved to their proper
  location instead of being in mach-at91 directory. They now use
  the appropriate frameworks.
- big amount of removal of these machine specific drivers and use
  of the newly created drivers. This lead to an overhaul of the setup.c AT91
  startup code.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'at91-drivers' of git://github.com/at91linux/linux-at91: (31 commits)
  power: reset: at91-poweroff: fix wakeup status register index
  ARM: at91/power/reset: fix Kconfig "depends on" directive
  ARM: at91: fix ramc standby function registration
  ARM: at91: Remove rstc and shdwc headers
  ARM: at91: Remove rstc and shdwnc global base addresses
  ARM: at91/pm: Remove show_reset_status function
  ARM: at91: Remove poweroff code
  ARM: at91: Register the poweroff driver
  ARM: at91: Remove poweroff DT probing
  ARM: at91: Remove reset code from the machine code
  ARM: at91: Call at91_register_devices in the board files
  ARM: at91: Probe the reset driver
  ARM: at91/soc: Introduce register_devices callback
  ARM: at91: Remove the old-style reset probing
  ARM: at91: Rework ramc mapping code
  ARM: at91: setup: Switch to pr_fmt
  ARM: at91: remove old irq material
  ARM: at91: make use of the new AIC driver for dt enabled boards
  ARM: at91: enclose at91_aic_xx calls in IS_ENABLED(CONFIG_OLD_IRQ_AT91) blocks
  ARM: at91: introduce OLD_IRQ_AT91 Kconfig option
  ...
2014-09-05 22:26:40 +02:00
Pawel Moll
8fb2226435 bus: arm-ccn: Move event cleanup routine
The function cleaning up an initialized event
was called from the "event_del" handler, instead
of being used as the "destroy" callback. In case of
events group allocation this caused NULL pointer
dereference (as events are added and deleted
multiple times then). Fixed now.

Signed-off-by: Pawel Moll <mail@pawelmoll.com>
Signed-off-by: Kevin Hilman <khilman@linaro.org>
2014-09-05 13:25:01 -07:00
Arnd Bergmann
046ed3cc88 First batch of AT91 DT material for 3.18:
- RAM controller rework for multiple controller SoCs
 - shutdown controller addtion
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUBKUeAAoJEAf03oE53VmQE/kH/1JhMSH6HNovMiYMSL8kraiV
 4LH9uBMMUDFfgSLAe0s+6w+C7eQYiw8lvAMuSPbg/GukXimw32g+gwXIm+dKAJ3S
 PQAhpKu0ojU9OFBlUQagvg0gf+UfeiiaUXl0QWDHNJSRZued6R9hvY+I1wW2+Hwo
 vEOrdS37VyG47yZqa8QGGu0oQVjDovR9F4/5zv0gL+/YgCQMXvItWHJLKP6jncKq
 5Aljd2GKMiEvP3UkOqrXiXvzLz98ncPRKWXiLAI9NKJeu5dBAqjL4z641JK7B5EX
 f7IBSOD7j8onMyvRR28qG9iz2nFpnzTJ0f9NCObpD3AGlQLDF7zFTHkZzIRt0VM=
 =3kcn
 -----END PGP SIGNATURE-----

Merge tag 'at91-dt' of git://github.com/at91linux/linux-at91 into next/dt

Merge "First batch of AT91 DT material for 3.18" from Nicolas Ferre:

- RAM controller rework for multiple controller SoCs
- shutdown controller addtion

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'at91-dt' of git://github.com/at91linux/linux-at91:
  ARM: at91/dt: sama5d3: Add shutdown controller
  ARM: at91/dt: Declare a second ram controller when relevant
  ARM: at91/dt: at91sam9: use ddrck in ramc
  ARM: at91/dt: sama5d3: define mpddr clock and ramc clocks
2014-09-05 22:24:48 +02:00
Arnd Bergmann
32dc5ca0c1 First batch of AT91 cleanup for 3.18:
Following the merge of AIC/AIC5 code as standard irqchip drivers during early
 3.17 merge window, we can use these drivers for AT91 DT-enabled chips and
 boards.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJUBKNIAAoJEAf03oE53VmQ+z8H/2TXRXeRnOlAAP96U7jIbARL
 hwWHAwDOQJAgj8qYIcMDzvDb1pDt3mcocke827vSA+LGQ8/kqmFgBC4XnEXUYBhE
 CDIVVtDtnC3Dj7kOF+UaOdnA+OVvr2lNgi2eHCLG9TmLhTb10eh/iOjCqG8qGjz6
 3kSS3K4s9yMF7VY7FKZxARMdJe8BmM+rBVMbM+PWFRhx+LMJ4tM5M186g3uFySzc
 Co5y1th6YBn4st7lLOxcyXdPgmghE1626DyhdO61qRQxtZCFSB0Co62NMwu5cwkZ
 tjF7nIEN0M7DV4DQvoyVeKcjeBiaOHsZ3x6HmtnX4AlhhP1gXcxo5YpnHbxsHm4=
 =6L0C
 -----END PGP SIGNATURE-----

Merge tag 'at91-cleanup' of git://github.com/at91linux/linux-at91 into next/cleanup

Merge "at91: cleanup for 3.18" from Nicolas Ferre:

First batch of AT91 cleanup for 3.18:
Following the merge of AIC/AIC5 code as standard irqchip drivers during early
3.17 merge window, we can use these drivers for AT91 DT-enabled chips and
boards.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'at91-cleanup' of git://github.com/at91linux/linux-at91:
  ARM: at91: remove old irq material
  ARM: at91: make use of the new AIC driver for dt enabled boards
  ARM: at91: enclose at91_aic_xx calls in IS_ENABLED(CONFIG_OLD_IRQ_AT91) blocks
  ARM: at91: introduce OLD_IRQ_AT91 Kconfig option
2014-09-05 22:20:07 +02:00
David S. Miller
e4cf0b756c Merge branch 'r8152-next'
Hayes Wang says:

====================
r8152: random MAC address

If the interface has invalid MAC address, it couldn't
be used. In order to let it work normally, give a
random one.

v3:
  Remove
	ether_addr_copy(dev->perm_addr, dev->dev_addr);

v2:
  Use "%pM" format specifier for printing a MAC address.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:17:39 -07:00
hayeswang
179bb6d7f0 r8152: use eth_hw_addr_random
If the hw doesn't have a valid MAC address, give a random one and
set it to the hw.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:17:00 -07:00
hayeswang
8ba789ab13 r8152: change the location of rtl8152_set_mac_address
Exchange the location of rtl8152_set_mac_address() and
set_ethernet_addr(). Then, the set_ethernet_addr() could
set the MAC address by calling rtl8152_set_mac_address()
later.

Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:17:00 -07:00
David S. Miller
b52b727594 Merge branch 'rx_copybreak'
Govindarajulu Varadarajan says:

====================
enic: Add support for rx_copybreak

The following series implements rx_copybreak.

dma_map_single()/dma_unmap_single() is more expensive than alloc_skb & memcpy
for smaller packets. By doing this we can reuse the dma buff which is already
mapped. This is very useful when iommu is on. The default skb copybreak value
is 256.

When iommu is on, we can go much higher than 256. All the drivers that supports
rx_copybreak provides module parameter to change this value. Since module
parameter is the least preferred way for changing driver values, this series
adds ethtool support for setting rx_copybreak.

v4:
Validate tunable length in ethtool_get_tunable, not in driver implemented
function.

Loose tunable_ops array for each tunable type. Define one function and let the
driver use switch case for each type.

Use double underscore for data type in UAPI headers.
Use const qualifier where possible.

v3:
Add tunable namespace to ethtool. Use new ethtool cmd ETHTOOL_S/GTUNABLE to
set/get rx_copybreak from userspace.

v2:
Add new ethtool_cmd for DMA buffer parameters, instead of adding new members to
existing ethtool_ringparam.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:12:32 -07:00
Govindarajulu Varadarajan
d4ad30b182 enic: Add tunable_ops support for rx_copybreak
This patch adds support for setting/getting rx_copybreak using
generic ethtool tunable.

Defines enic_get_tunable() & enic_set_tunable() to get/set rx_copybreak.
As of now, these two function supports only rx_copybreak.

Signed-off-by: Govindarajulu Varadarajan <_govind@gmx.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:12:20 -07:00
Govindarajulu Varadarajan
f0db9b0734 ethtool: Add generic options for tunables
This patch adds new ethtool cmd, ETHTOOL_GTUNABLE & ETHTOOL_STUNABLE for getting
tunable values from driver.

Add get_tunable and set_tunable to ethtool_ops. Driver implements these
functions for getting/setting tunable value.

Signed-off-by: Govindarajulu Varadarajan <_govind@gmx.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:12:20 -07:00
Govindarajulu Varadarajan
a03bb56e67 enic: implement rx_copybreak
Calling dma_map_single()/dma_unmap_single() is quite expensive compared
to copying a small packet. So let's copy short frames and keep the buffers
mapped.

Signed-off-by: Govindarajulu Varadarajan <_govind@gmx.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:12:20 -07:00
Daniel Borkmann
e020836d95 dev_ioctl: remove dev_load() CAP_SYS_MODULE message
Marcel reported to see the following message when autoloading
is being triggered when adding nlmon device:

  Loading kernel module for a network device with
  CAP_SYS_MODULE (deprecated). Use CAP_NET_ADMIN and alias
  netdev-nlmon instead.

This false-positive happens despite with having correct
capabilities set, e.g. through issuing `ip link del dev nlmon`
more than once on a valid device with name nlmon, but Marcel
has also seen it on creation time when no nlmon module is
previously compiled-in or loaded as module and the device
name equals a link type name (e.g. nlmon, vxlan, team).

Stephen says:

  The netdev module alias is a hold over from the past. For
  normal devices, people used to create a alias eth0 to and
  point it to the type of network device used, that was back
  in the bad old ISA days before real discovery.

  Also, the tunnels create module alias for the control device
  and ip used to use this to autoload the tunnel device.

  The message is bogus and should just be removed, I also see
  it in a couple of other cases where tap devices are renamed
  for other usese.

As mentioned in 8909c9ad8f ("net: don't allow CAP_NET_ADMIN
to load non-netdev kernel modules"), we nevertheless still
might want to leave the old autoloading behaviour in place
as it could break old scripts, so for now, lets just remove
the log message as Stephen suggests.

Reference: http://thread.gmane.org/gmane.linux.kernel/1105168
Reported-by: Marcel Holtmann <marcel@holtmann.org>
Suggested-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Cc: Vasiliy Kulikov <segoon@openwall.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:04:40 -07:00
Daniel Borkmann
60a3b2253c net: bpf: make eBPF interpreter images read-only
With eBPF getting more extended and exposure to user space is on it's way,
hardening the memory range the interpreter uses to steer its command flow
seems appropriate.  This patch moves the to be interpreted bytecode to
read-only pages.

In case we execute a corrupted BPF interpreter image for some reason e.g.
caused by an attacker which got past a verifier stage, it would not only
provide arbitrary read/write memory access but arbitrary function calls
as well. After setting up the BPF interpreter image, its contents do not
change until destruction time, thus we can setup the image on immutable
made pages in order to mitigate modifications to that code. The idea
is derived from commit 314beb9bca ("x86: bpf_jit_comp: secure bpf jit
against spraying attacks").

This is possible because bpf_prog is not part of sk_filter anymore.
After setup bpf_prog cannot be altered during its life-time. This prevents
any modifications to the entire bpf_prog structure (incl. function/JIT
image pointer).

Every eBPF program (including classic BPF that are migrated) have to call
bpf_prog_select_runtime() to select either interpreter or a JIT image
as a last setup step, and they all are being freed via bpf_prog_free(),
including non-JIT. Therefore, we can easily integrate this into the
eBPF life-time, plus since we directly allocate a bpf_prog, we have no
performance penalty.

Tested with seccomp and test_bpf testsuite in JIT/non-JIT mode and manual
inspection of kernel_page_tables.  Brad Spengler proposed the same idea
via Twitter during development of this patch.

Joint work with Hannes Frederic Sowa.

Suggested-by: Brad Spengler <spender@grsecurity.net>
Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Cc: Alexei Starovoitov <ast@plumgrid.com>
Cc: Kees Cook <keescook@chromium.org>
Acked-by: Alexei Starovoitov <ast@plumgrid.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 12:02:48 -07:00
Sabrina Dubroca
a9ed4a2986 ipv6: fix rtnl locking in setsockopt for anycast and multicast
Calling setsockopt with IPV6_JOIN_ANYCAST or IPV6_LEAVE_ANYCAST
triggers the assertion in addrconf_join_solict()/addrconf_leave_solict()

ipv6_sock_ac_join(), ipv6_sock_ac_drop(), ipv6_sock_ac_close() need to
take RTNL before calling ipv6_dev_ac_inc/dec. Same thing with
ipv6_sock_mc_join(), ipv6_sock_mc_drop(), ipv6_sock_mc_close() before
calling ipv6_dev_mc_inc/dec.

This patch moves ASSERT_RTNL() up a level in the call stack.

Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Reported-by: Tommi Rantala <tt.rantala@gmail.com>
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 11:52:28 -07:00
Andy King
4ad9a64f53 VMXNET3: Check for map error in vmxnet3_set_mc
We should check if the map of the table actually succeeds, and also free
resources accordingly.

Version bumped to 1.2.1.0

Acked-by: Shelley Gong <shelleygong@vmware.com>
Acked-by: Bhavesh Davda <bhavesh@vmware.com>
Signed-off-by: Andy King <acking@vmware.com>
Reported-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-09-05 11:50:39 -07:00
Murali Karicheri
c5edfff9db ahci: add pcid for Marvel 0x9182 controller
Keystone K2E EVM uses Marvel 0x9182 controller. This requires support
for the ID in the ahci driver.

Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: stable@vger.kernel.org
2014-09-06 02:52:41 +09:00
Tim Harvey
3fce0e882f PCI: imx6: Delay enabling reference clock for SS until it stabilizes
According to the IMX6 reference manuals, REF_SSP_EN (Reference clock enable
for SS function) must remain deasserted until the reference clock is
running at the appropriate frequency.

Delay enabling the reference clock for the SS function until it has
stabilized.  This prevents a high link failure rate (>5%) on certain IMX6
boards at various temperatures.

[bhelgaas: reword changelog slightly]
Tested-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Marek Vasut <marex@denx.de>
Acked-by: Lucas Stach <l.stach@pengutronix.de>
2014-09-05 11:16:41 -06:00
Stephen Warren
6dbaff2bfb ARM: tegra: rely on bootloader pinmux programming on Tegra124
The defined mechanism for programming the Tegra pinmux is to perform all
of the following at once in order, before using any I/O controller that
is affected by the pinmux:

- Set the CLAMP_INPUTS_WHEN_TRISTATED PMC register bit.
- Set up any GPIO pins to their "initial" state.
- Program all pinmux settings in one go.

Other methods such as:

- Not setting CLAMP_INPUTS_WHEN_TRISTATED.
- Not setting GPIOs to their "initial" state before programming the
  pinmux settings of the related pin, in particular the mux function.
- Not programming the entire pinmux at once, in order to avoid
  possible conflicting settings.

... are not qualified or supported by NVIDIA ASIC/syseng. They could
cause glitches or undesired output levels on some pins, or controller
malfunction.

While we've been getting away with doing something different on many
Tegra boards without issue, I believe we've just been getting lucky.
I'd like to switch all Tegra124 systems to the correct scheme now so
they provide the right example to follow, and require that any new
boards we support upstream work in the same fashion.

While it would be nice to update boards containing older SoCs for
consistency, I don't anticipate doing so. It's too much churn to change
at this time. At least with all Tegra124 boards converted, the most
recent boards provide the correct example.

Since the bootloader needs to reprogram the pinmux to access certain
peripherals, it must program the entire pinmux due to the supported
rules above. As such, there is no need to program any part of the pinmux
from the kernel, unless dynamic pinmuxing is used. Given this, we couuld
simply remove the pinmux "default" state from the DT entirely. However,
some bootloaders parse the DT to perform their initial pinmux setup, so
it's useful to keep the pinmux data in DT. To allow this while avoiding
redundant work in the kernel, rename the "default" state to "boot". The
kernel won't apply this, but bootloaders can still look for this state
name and apply it. Note however that the DT provides zero information
about the required initial GPIO setup, so bootloaders using this approach
are not likely to operate correctly without an additional GPIO
initialization table somewhere. Previous discussions on the DT mailing
list have rejected adding such a table to DT...

The following U-Boot commits fully initialize the pinmux:

Jetson TK1: 4ff213b8e478 ARM: tegra: clamp inputs on Jetson TK1
Venice2: 3365479ce78a ARM: tegra: Venice2 pinmux spreadsheet updates
Both are part of U-Boot v2014.07 and later.

Without those commits, the only fallout I see from this change is that
HDMI on Venice2 no longer works. Given the very small user-base of this
platform, I feel that requiring a bootloader update is reasonable.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
2014-09-05 11:04:30 -06:00
Dylan Reid
eb481f9ac9 ARM: tegra: add Acer Chromebook 13 device tree
The Acer Chromebook 13, codenamed Big, contains an NVIDIA tegra124
processor and is similar to the Venice2 reference platform.

The keyboard, USB 2, audio, sdcard and emmc have been tested
and work on the 1366x768 models. The Full HD models haven't been
tested yet.

WiFi does not yet work, it needs at least some PMIC changes to enable
the 32k clock.

The elan trackpad is not yet functional but hopefully will be soon as
there are patches under review.

There is also an issue on reboot because the TPM isn't reset.  It will
cause the stock firmware to enter recovery mode.  This can be worked
around by an EC-reset, press the refresh and power keys at the same
time.

Signed-off-by: Dylan Reid <dgreid@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2014-09-05 11:00:23 -06:00
Dylan Reid
edfbad068b ARM: tegra: Move pwm and dpaux labels to tegra124.dtsi
These labels will be used by other boards in addition to Venice2, move
them to tegra124.dtsi so they are defined in a common place.

Signed-off-by: Dylan Reid <dgreid@chromium.org>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2014-09-05 11:00:23 -06:00
Bjorn Helgaas
a2351efeb3 Merge branches 'pci/misc', 'pci/pm', 'pci/host-designware', 'pci/host-imx6', 'pci/host-keystone', 'pci/host-tegra' and 'pci/host-xilinx' into next
* pci/misc:
  PCI/AER: Make <linux/aer.h> standalone includable
  PCI: Remove unnecessary variable in pci_add_dynid()

* pci/pm:
  PCI/PM: Allow PCI devices to be put into D3cold during system suspend
  PCI/PM: Drop unused runtime PM support code for PCIe ports

* pci/host-designware:
  PCI: designware: Check private_data validity in single place
  PCI: designware: Remove pci_assign_unassigned_resources() from dw_pcie_host_init()
  PCI: designware: Use pci_create_root_bus() instead of pci_scan_root_bus()
  PCI: designware: Parse bus-range property from devicetree
  PCI: designware: Add support for v3.65 hardware

* pci/host-imx6:
  PCI: imx6: Probe in module_init(), not fs_initcall()
  PCI: designware: Remove pci_assign_unassigned_resources() from dw_pcie_host_init()
  PCI: designware: Use pci_create_root_bus() instead of pci_scan_root_bus()
  PCI: designware: Parse bus-range property from devicetree
  PCI: imx6: Put LTSSM in "Detect" state before disabling it
  MAINTAINERS: Add Lucas Stach as co-maintainer for i.MX6 PCI driver
  PCI: designware: Add support for v3.65 hardware

* pci/host-keystone:
  PCI: keystone: Add TI Keystone PCIe driver
  PCI: designware: Add support for v3.65 hardware

* pci/host-tegra:
  PCI: tegra: Implement a proper resource hierarchy
  PCI: tegra: Add missing cleanup in error path and tegra_msi_teardown_irq()
  resources: Add device-managed request/release_resource()

* pci/host-xilinx:
  PCI: xilinx: Add Xilinx AXI PCIe Host Bridge IP driver

Conflicts:
	drivers/pci/host/Kconfig
	drivers/pci/host/Makefile
2014-09-05 10:57:20 -06:00
Yoshihiro Shimoda
b854100eda usb: renesas_usbhs: Add device tree support for R-Car H2 and M2
This driver supports other SoCs, but they need boards/Soc depend code.
So, this patch adds device tree support for R-Car H2 and M2 initially.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2014-09-05 10:59:27 -05:00
Yoshihiro Shimoda
630a84a181 usb: renesas_usbhs: Add device tree bindings documentation
Document the device tree bindings for the Renesas USBHS controller.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2014-09-05 10:59:26 -05:00
Daniel Mack
a5e4aa4d77 usb: musb: cppi41: tweak hrtimer values
Intensive tests with USB audio devices connected to a musb host port
have shown reproducible pops and clicks in both the playback and the
capture stream.

These are related to how the early_tx hrtimer is set up, and it turns
out they can be fixed by reducing the timer's slack value from 40 to
25 us. Also, when the callback is ran without taking action, it should
be rescheduled 20 us later instead of 50 us.

Reported-and-tested-by: Sven Neumann <neumann@teufel.de>
Signed-off-by: Daniel Mack <daniel@zonque.org>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2014-09-05 10:59:25 -05:00
Peter Griffin
eb11adabcf MAINTAINERS: Add dwc3-st.c file to ARCH/STI architecture
This patch adds the new dwc3-st.c glue driver found on
STMicroelectronics stih407 consumer electronics SoC's into the STI
arch section of the maintainers file.

Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2014-09-05 10:52:49 -05:00
Peter Griffin
f903144926 usb: dwc3: dwc3-st: Add st-dwc3 devicetree bindings documentation
This patch documents the device tree documentation required for
the ST usb3 controller glue layer found in STiH407 devices.

Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2014-09-05 10:52:49 -05:00
Peter Griffin
f83fca0707 usb: dwc3: add ST dwc3 glue layer to manage dwc3 HC
This patch adds the ST glue logic to manage the DWC3 HC
on STiH407 SoC family. It manages the powerdown signal,
and configures the internal glue logic and syscfg registers.

[ balbi@ti.com : actually switch over to of_platform_depopulate() ]

Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2014-09-05 10:49:00 -05:00
Linus Torvalds
fb762340e5 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k
Pull m68k updates from Geert Uytterhoeven:
 "Wire up new syscalls getrandom and memfd_create"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
  m68k: Wire up memfd_create
  m68k: Wire up getrandom
2014-09-05 08:43:48 -07:00
Arnd Bergmann
013c5b4e66 Renesas ARM Based SoC Cleanup Updates for v3.18
* Remove Genmai board code
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT9pwjAAoJENfPZGlqN0++IRAP/0cPEDVRIdWbi6BoNtMkZovm
 gcBNFEMyp89t72J/qAnA1nwG8fxCJqBZcTdyvy1tHN0W5eV/wRbPuGxTpNjppQlv
 uB59rBnZX1SurotItPiRonfIk6xlBFTKHq4+aFnjottv5cGB7IqHrCy5FaM2cNbs
 Z4fUIEqgn64FRlm1dzAoldvSe3t7Xc7perMHPfvOeqA6LNcFiCkbuaQu4tazQjSE
 3pPxE01j9sPB6UrlWSow+V5Fb4+K7zZPE1myvUiVTiC9liGdFOVCPm/4QTncwasJ
 7LdWX1URTswyc7DBOdI5pH0L7y5x2FPhCLX5DrOQ1umNXLH3ElYQq2CCMKWtRbVo
 S7O9RR0XS5APNHi5rBwzz7asKMVkRS/WJCQI2ulf8A6zivszutG3L0E6GhYMXtjP
 PiEM9CjRYuTAuuh6kZW2rb3tMXWTTU8sX5xKsLHXv7WKgVwHvE5zMueZd+CP1TiL
 Df9EkqXFCvIGerptsQgmnekSZiFo4ezFK0Wh8qPAcqFGQK9v045XYCfQzsXHZZpF
 biOd2TSY0keummMqNJpEjKSg2MoYEyenoi/lngUPlzsVC09BQHH10/8acpjEdBhh
 wuzSxkkXdNcbV3K47+xAE4jQ0ChC3MPsjJ8cDaPBBDoMRlq87ACCbLyG/yv3e1UR
 I8wVCIAqXIH49aSPfmgu
 =tK3R
 -----END PGP SIGNATURE-----

Merge tag 'renesas-cleanup-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc

Merge "Renesas ARM Based SoC Cleanup Updates for v3.18" from Simon Horman:

* Remove Genmai board code

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'renesas-cleanup-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r7s72100: Remove legacy board support
  ARM: shmobile: r7s72100: genmai: Remove legacy board file
  ARM: shmobile: r7s72100: genmai: Remove reference board file
2014-09-05 17:42:18 +02:00
Arnd Bergmann
09d12ad793 Renesas ARM Based SoC DT Timers Updates for v3.18
* Enable timers using DT when booting boards without Legacy-C code
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT8+H9AAoJENfPZGlqN0++FWcP/jO8bI4iFQXzZS13a1IzehTy
 8PW1d8wu7+9KMrUaSNRVSBk20U5xGrNgykzBbM/kyB4JDqBsc7d97zOEnus7x9WP
 ujP6cD3TaiX3EDssS9UMcZJlT95PtcTEIicwMj38dflvM6JoU3Od08s15Fp3AiwB
 XzhtCG8PvbVCe6RagglC/1g4r8GCB2cA0bBnyoybOoHGNZv+bpn9D5j/m6ltp2TH
 f4sKuXrPQKGeOi4RKjSaCKnKqrRrfZ6S6fOZGjzZw9lSSw72EXVsE763IDFs8osd
 Sdc4FKtcM2CaiL1/BuJ6NP5kYyMPHc37il+FbyYIOdi0l75RzKoMLRBcQjbgfUyy
 3KahXSk3k8xv2qpCUoS2UKBeiCSc3ejs0AcOUD540igy1OuRRHQRrjHv5D2MJwjm
 92W4/74hS0ihWTjIG9WQ0lIb2SQfBsUwpQwANN/9zR7cWnsSrPOowK0f+q8rPQXc
 K2nrXis1YL2uU04JPU2BPAMtw/XdYzDADRfg+dSCKntdEC2MHvlkdqcxOYaoUM/3
 8slW8hYxFo5vO1c5sYxGHd573i5JTKHhPOzrs/f4faw5/I1ZyiJotbfVt8//6K1D
 ocnTxXZKzh5X0FcckEhdRyFa1QcHk0v5PqsqmQAYYjXmq5+3HV7GAskGL9tUuOq0
 97qsr4ScwT63EBl9yFZY
 =cyP9
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dt-timers-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc

Merge "Renesas ARM Based SoC DT Timers Updates for v3.18" from Simon Horman:

* Enable timers using DT when booting boards without Legacy-C code

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'renesas-dt-timers-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: genmai-reference: Enable MTU2 in device tree
  ARM: shmobile: r7s72100: Add MTU2 device to DT
  ARM: shmobile: marzen-reference: Enable TMU0 in device tree
  ARM: shmobile: koelsch-reference: Enable CMT0 in device tree
  ARM: shmobile: lager-reference: Enable CMT0 in device tree
  ARM: shmobile: r8a7779: Add TMU devices to DT
  ARM: shmobile: r8a7791: Add CMT devices to DT
  ARM: shmobile: r8a7790: Add CMT devices to DT

Conflicts:
	arch/arm/mach-shmobile/setup-r8a7779.c
2014-09-05 17:40:32 +02:00
Lucas Stach
84a263f394 PCI: designware: Check private_data validity in single place
The driver had checks for this sprinkled all over.  As we call
sys_to_pcie() before every instance of this check, we can move the
check to this single location to make things clear.

Removing the statements after BUG[_ON]() is safe as the kernel is halted at
this point anyway.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Mohit Kumar <mohit.kumar@st.com>
2014-09-05 09:37:55 -06:00
Arnd Bergmann
e0ace5fc33 Renesas ARM Based SoC R8a7740 CCF and Timers Updates for v3.18
When booting using the r8a7740/armadillo800eva using dt-reference:
 * Use CCF to initialise clocks via DT
 * Initialise timers via DT
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABAgAGBQJT/BT6AAoJENfPZGlqN0++MPwQAIzGfi79jMY14Xep790KD17A
 wvae1QGyLpIPH/nyVr6iEbHiX3YBfW4kcvrQ1GWOG19tFoWlc4fiOK1ZcCAnydFD
 SU1lnkpT6+ZIEeFkdXwMyux2lVeaZSQHOInT7UYZnWLUhfkCkuf7IJNvrYNMGb+Z
 3viXbRkqz1cz9nyIRDmryq0IZO8d7ZNFhOSdTTq3Rjzn32V68I2HZVGKOu00bI7J
 UEpEXlPqAs8R90NkyLvoEaN3d0NHz6TrX8VqgWW6cNxu8Kv3OCLhkjmGdjmWXZ3P
 SuVXJv37vcjkKXuclRVaPV8GcQgJZO34RSUpc0HMYJyutEp3ANLxujT7zFSwJEvK
 vUZkPGpzWY9+icqfPOoGlEoGIcVGTnB1rH25ap5y/b7SnfNsw2dJyhx/Mr8nln2b
 SwTMXxZZvP8V2qK7CrXU5TXnhl2nYJwvjU8ORhe3ZJrAOmrlfrBNFBTzm/8Txik7
 /JUFjInTkOoLX4a0vjJlwc/rRAAe8jASmpWTC6N9mTzJhY7gySpXwxWOwT2f/+YR
 otDz1JS4EpqRFiK3ptnPVJ7sVpamz5glCLCCZWMZdwWG7G1B+daXD2shTPk7aup5
 EsN0YKIjMfdTL5sQcQIhS5Yoj/KJEhwkNny+EsMofExKZeQerqQT3SG9a798xxLR
 8ACepiF2VECSLNCWvUKj
 =uu7K
 -----END PGP SIGNATURE-----

Merge tag 'renesas-r8a7740-ccf-and-timers-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc

Merge "Renesas ARM Based SoC R8a7740 CCF and Timers Updates for v3.18" from Simon Horman:

When booting using the r8a7740/armadillo800eva using dt-reference:
* Use CCF to initialise clocks via DT
* Initialise timers via DT

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

* tag 'renesas-r8a7740-ccf-and-timers-for-v3.18' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7740: Remove r8a7740_add_standard_devices_dt
  ARM: shmobile: armadillo800eva-reference: Do not use r8a7740_add_standard_devices_dt()
  ARM: shmobile: armadillo800eva-reference: Enable CMT1 in device tree
  ARM: shmobile: r8a7740: Add CMT1 device to DT
  ARM: shmobile: armadillo800eva-reference: add clock overrides to DTS
  ARM: shmobile: r8a7740: add MSTP clock assignments to DT
  ARM: shmobile: r8a7740: add SoC clocks to DTS
  ARM: shmobile: r8a7740: clock register bits
2014-09-05 17:36:52 +02:00