Commit graph

413005 commits

Author SHA1 Message Date
Olof Johansson
efcf3d38f1 Renesas SH based SoC Updates for v3.14
* Global
   - Don't set plat_sci_port scbrr_algo_id field
   - Declare SCIF register base and IRQ as resources
 
 * sh772[34] SoCs
   - Set serial port sampling rate to 8 for SCIFA ports
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSuYSPAAoJENfPZGlqN0++pxAP/2tPbCAKoHPzTe7gDH0J9LgG
 DIwycdlIjktMd89pQtCxpmgU0q23EKsasuUDpu4kRghiMMG2CVxCNO9tWCxA8QCn
 DUoEkfzRoO4sZuJMuNSWZQP2zczDeG3W67n0VDCFJ0bODC23QcbX8FhLj8CQF5Zs
 tUf96upw/fehJZUcwg0osMF6fRzXRtfsDKgco0Kx5pSsQrMAZmVEqsVtPuKlvbUs
 78jebsL4X+T6ZquE5MqpfKRVhX/alEA2UCJD4KdyyxnN02O9UVfmRq9z9h5mGGh9
 a5TAUOV9Xqa6V71DE3Fj6tbrPaUAmtrOP5IFT1Iiamn9W8X+vMsKFxkfPEcmT/ph
 jQjAGKtLJi/ceHcMEkxtByw4EJKopzhn8ZATxOVuiKj4HC8vpTFRz+cq/Y8406MG
 XrOr78pRKZnY8IGju/lf/BfsXRW5KA8sEcWZ0lB6eG9W+pQiPEqYMW7sP9JBb5PC
 226gTT3HntinWql/SwiOJHvcm4+hUsyGGY5zGbobv4Gq7sr8Fx0sptNRp4eQBxg8
 pjcxcaRXTV6CLFDCQao9tsuD3bjpbOAElIHDzm+hE3782K+FHpPc6ecVX/gEGXdh
 UuM4KxjeIW0cZLoq5qFFRunihMU+omDqRA3s1bwmErBihOvOAPi/cbKPSr4fgTM9
 uBhEGAj/y+LM6eeF5qlE
 =ayfQ
 -----END PGP SIGNATURE-----

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

Renesas SH based SoC Updates for v3.14

* Global
  - Don't set plat_sci_port scbrr_algo_id field
  - Declare SCIF register base and IRQ as resources

* sh772[34] SoCs
  - Set serial port sampling rate to 8 for SCIFA ports

(These are merged through arm-soc due to dependencies with the SCI platform data
rework done for shmobile)

* tag 'renesas-sh-soc-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  sh: Don't set plat_sci_port scbrr_algo_id field
  sh: sh772[34]: Set serial port sampling rate to 8 for SCIFA ports
  sh: Declare SCIF register base and IRQ as resources

Signed-off-by: Olof Johansson <olof@lixom.net>
2014-01-02 10:54:34 -08:00
Olof Johansson
6878e0c0a5 Merge branch 'renesas/drivers-sci2' into next/drivers
* renesas/drivers-sci2:
  serial: sh-sci: Rework baud rate calculation
  serial: sh-sci: Compute overrun_bit without using baud rate algo
  serial: sh-sci: Remove unused GPIO request code
  serial: sh-sci: Move overrun_bit and error_mask fields out of pdata
  serial: sh-sci: Support resources passed through platform resources
  serial: sh-sci: Don't check IRQ in verify port operation
  serial: sh-sci: Set the UPF_FIXED_PORT flag
  serial: sh-sci: Remove duplicate interrupt check in verify port op
  serial: sh-sci: Simplify baud rate calculation algorithms
  serial: sh-sci: Remove baud rate calculation algorithm 5
  serial: sh-sci: Sort headers alphabetically
  serial: sh-sci: Convert to clk_prepare/unprepare
  serial: sh-sci: Don't enable/disable port from within break timer
  serial: sh-sci: Fix warnings due to improper casts and printk formats
2014-01-02 10:54:20 -08:00
Olof Johansson
9d6b65e945 Renesas ARM based SoC IRQC Driver Updates for v3.14
* Simplify irq_set_type() method
 * Enable mask on suspend
 * Use lazy disable
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSuP4zAAoJENfPZGlqN0++fTsQAJ7bwMLVdNg0zflm7qMsCSgx
 /SDw1dx9oFboGKtzHrqthXKEGe2ws5uD8MzhHjtg/I9d23lftxOPaSXFqLSKikaz
 EmtbqLukDVYnECTDPzdTmbM7VLqtixWGMYUHwZ7r26dfzgoSmiNZcwF1xZ0N1ANp
 8ZdcylAWUnBEdy0L1c7np8Htdcta80GG2LPhG0ItfWNkTIoUxLoT+upJD6ZjNmZl
 54o+LEDtJAStBY2mkoB7G/lLvR9+3rRa0qjJRWcCkMJC4QAj9kwOqcybwmKOEGlN
 kph+1e4ZL5X9IZhIGQThUTTMYOyfKBrhjHBHwRhZSUg8fkVDAAP0UN/GPH7bCzrM
 E8FFkQbqOro9ROVzjmZ7Obe2/5D/bnbCE/F7RZy8od8gi0FYHJ+WKStEK0KQ0I6+
 6IqrEyD3pueISrGvh9RJEBonlkbnhzWzmp/RScEXp0xVu+ZAPncNzs8/UN8SvlR6
 ErAXpOscPpD1FXkYRYW6TaCJxRpY+PIOOnuwfwgzjxo4H0IXQESdG0WIBUQdzmsB
 A0NrDRtdYyicJXjSuDJSaCJ9XpyyJzSQqFwXhzVl6wXJMQgYXq2FpdteuRfxRLqL
 NFWYIrdby/CZDbXj++LnHyEkugH39bIxlzmThMxg0eR/rOOezXdx4F/DbSXiXITV
 oSB4ALOmiKqDSrPVyyyB
 =4yS6
 -----END PGP SIGNATURE-----

Merge tag 'renesas-irqc-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers

From Simon Horman:
Renesas ARM based SoC IRQC Driver Updates for v3.14

* Simplify irq_set_type() method
* Enable mask on suspend
* Use lazy disable

* tag 'renesas-irqc-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  irq-renesas-irqc: simplify irq_set_type() method
  irqchip: renesas-irqc: Enable mask on suspend
  irqchip: renesas-irqc: Use lazy disable

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-29 13:26:13 -08:00
Olof Johansson
a7fb16fad6 Allwinner SoC additions for 3.14
Two drivers are merged through for 3.14:
   - The A10/A20 RTC driver
   - The A31 reset controller IP
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJStL8PAAoJEBx+YmzsjxAg6rMP/39ZGMeKoUVpbcm1kFR12sYd
 WKj1D2QxYG9gljs06esH9R//Kfs4eWdkFKQuTxkaE7gL44ShTQe6BH9GEsmu+Kv0
 Rv30NICUb2/OlMxZxwg6Of9kjuK4M0xQGPJlwRZfhIQ1MikWwLeq579TQO1QLjsi
 OdEtOMe9VpUq+igKPxmN24WtdFN7EHJ64ei06TYXNLCKlAph1/0wgxdX99Mc7Un2
 pVOcmDSu2tqadAVyU0mpfAws0UKCrM+MHaMfoRXSnpTp8EpIoSbtwAsacc+WmMaw
 Wx0OI2+N6+3p8b3F8LDajJmdpLBlaVZzrM1VfTaZQ+e57fOnTU72q1f9tOXYnUPo
 vKyh1EO02O93TSQpSuGzZ51+7vTi6kuimSZgHcDNMhRpeqIaO+cm94DeLpRpwi/F
 FmfaQ5ixzD+jxCtRl2dzSHInxvGGPu20/7pmVK9qQBc39GliKJU3Ca3G86FjibzK
 B+1aWfPUTZ0gRIlvQ7VYruPTtXbKJKr8WIU1mpCpCVlkpiSISZR2meSlZhDrzeVq
 +Y2w4Jvy6wbqb6jCV1ivNuB3Hg9Xlqz+cjGJEkZ5Y6izbN/YANf+02StB4oFody5
 l7eRme7t/CkYgaBlQYJp4dkbGhdA+kIozbunqtg4p8rgo6mGiTP03hcnpEiUM9n3
 nVvAIkZE8mc1GZBTXnHa
 =7spL
 -----END PGP SIGNATURE-----

Merge tag 'sunxi-drivers-for-3.14' of https://github.com/mripard/linux into next/drivers

From Maxime Ripard:
Allwinner SoC additions for 3.14

Two drivers are merged through for 3.14:
  - The A10/A20 RTC driver
  - The A31 reset controller IP

* tag 'sunxi-drivers-for-3.14' of https://github.com/mripard/linux:
  ARM: sun4i/sun7i: RTC driver
  ARM: sun4i/sun7i: DT documentation for RTC driver
  reset: Add Allwinner SoCs Reset Controller Driver

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-27 13:24:15 -08:00
Olof Johansson
51b052b0d3 ARM: tegra: Trusted Foundations firmware support
Add support for the Trusted Foundations secure-mode firmware, as found
 on NVIDIA SHIELD. This allows Linux to run in non-secure mode on this
 board; all previous Tegra support has assumed the kernel is running in
 secure mode.
 
 This branch is based on v3.13-rc1, and shouldn't cause any merge
 conflicts.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJSr3NgAAoJEMzrak5tbycxRXkP/imK6IQn5cAtXY7nfKnn4Rke
 RjvERwURDpi6QDrXaRe6NUVg3PgZ0Z7kXLqSuj/cAPinMyhQDR5DxlJVjYiduJ50
 CmMhV+RWkA/cmaU2oPjpD3YEm68txYXTyf3iWfX1ScFSuNNN0yGel3eY2rFjX/aT
 RgAWm8HbQTR7NDazAAt9gOqeJUtfs3msXwMxtZvD6OhRougyaPlqfuafjVpfM9vK
 JLDAbJuMEl6/dI2UYVvDBJvL//TOOjnwy6YFwQCZsqhYGHhT3Xc9hQABilUQmJ1d
 mbu29cPBrRgGiu3anpjZeh0KxVB3xDPp1a+o4lSH0iJztAPy4WTUZ1Sc3y2qwKaS
 qZ5Zu5SXVI1O/ywv1FChL2syuJbgOH+HGBMFslacVniQ/U1o4PmKZCJOB0pnpf8B
 dESAQgvDqIZeyt2eXxsAMAOw01xMTotngAaJpAtYFv0plP+PxAhr+dkHHjCwwkde
 7+OKeVE5TDDwlhz5PE35/4EWdWM0622aL3sK1IxrR2q66LGpKAoQpFeKaAUr0d6z
 OQnQiS+uNSNrCvAEeyEL2bQfv1xsjOFpFy6PV7ShrUrAgPVR3+wj82RvwTciMdbd
 tv3Y7LXCugSUOdq/abc3VgAnlgMzlhH5vlj6CMcKSSPbzZ3lbRB37iBmxpJLm9qa
 o3Ah/MaWSqtqmIueFrpa
 =c5t/
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-3.14-trusted-foundations' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/drivers

From Stephen Warren:
ARM: tegra: Trusted Foundations firmware support

Add support for the Trusted Foundations secure-mode firmware, as found
on NVIDIA SHIELD. This allows Linux to run in non-secure mode on this
board; all previous Tegra support has assumed the kernel is running in
secure mode.

(The base TF support has been discussed back and forth a lot; for now
the most logical place for it seems to be under arch/arm, so we're adding
it here. We can move it out to a common location in the future if needed).

* tag 'tegra-for-3.14-trusted-foundations' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  ARM: tegra: support Trusted Foundations by default
  ARM: tegra: set CPU reset handler using firmware
  ARM: tegra: split setting of CPU reset handler
  ARM: tegra: add support for Trusted Foundations
  of: add Trusted Foundations bindings documentation
  of: add vendor prefix for Trusted Logic Mobility
  ARM: add basic support for Trusted Foundations

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-26 11:01:11 -08:00
Laurent Pinchart
d5917ef318 sh: Don't set plat_sci_port scbrr_algo_id field
The field will be removed from the sh-sci driver. Don't set it and let
the driver handle baud rate calculation internally.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 21:49:43 +09:00
Laurent Pinchart
64c535e942 sh: sh772[34]: Set serial port sampling rate to 8 for SCIFA ports
SCIFA ports on sh7723 and sh7724 seem to use a sampling rate of half the
value specified in the datasheet. This is currently handled by a custom
baud rate calculation algorithm. The algorithm ID will be removed from
platform data, set the sampling rate directly instead.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 21:49:43 +09:00
Laurent Pinchart
d850acf975 sh: Declare SCIF register base and IRQ as resources
Passing the register base address and IRQ through platform data is
deprecated. Use resources instead.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 21:49:43 +09:00
Laurent Pinchart
ec09c5eb49 serial: sh-sci: Rework baud rate calculation
Computing the baud rate register value requires knowledge of the
hardware sampling rate. This information is currently encoded in a baud
rate calculation algorithm ID passed through platform data. However, it
can be derived from the port type directly in most cases.

Compute the sampling rate internally in the driver if the baud rate
calculation algorithm ID isn't specified, and allow platforms to
override the sampling rate through platform data in special cases (this
is only required for SCIFA ports on sh7723 and sh7724, the reason needs
to be investigated).

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:53 +09:00
Laurent Pinchart
b545e4f406 serial: sh-sci: Compute overrun_bit without using baud rate algo
The overrun bit index is a property of the hardware. It's currently
computed based on a different and unrelated hardware property, the baud
rate calculation algorithm. Compute it using hardware identification
information only.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:52 +09:00
Laurent Pinchart
520402bbc6 serial: sh-sci: Remove unused GPIO request code
The driver requests at initialization time GPIOs passed through platform
data. No platform makes use of this feature, remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:50 +09:00
Laurent Pinchart
3ae988d97b serial: sh-sci: Move overrun_bit and error_mask fields out of pdata
None of the fields is ever set by board code, and both of them are set
in the driver at probe time. Move them out of struct plat_sci_port to
struct sci_port.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:48 +09:00
Laurent Pinchart
1fcc91a607 serial: sh-sci: Support resources passed through platform resources
Memory and IRQ resources are currently passed to the driver through
platform data. Support passing them through the standard platform
resources mechanism instead. This deprecates platform data resources.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:44 +09:00
Laurent Pinchart
bc14e00672 serial: sh-sci: Don't check IRQ in verify port operation
The IRQ number can't be modified by the user as the port is fixed.
There's no need to check the new IRQ number as it will be ignored by the
core.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:41 +09:00
Laurent Pinchart
b6e4a3f18c serial: sh-sci: Set the UPF_FIXED_PORT flag
The base address, IRQ and baud rate generator parent clock rate can't be
changed by userspace. Mark the port as fixed.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:38 +09:00
Laurent Pinchart
b5e17b71c6 serial: sh-sci: Remove duplicate interrupt check in verify port op
The driver checks if the interrupt number is greater than nr_irqs and
returns an error in that case. The same check is already performed by
the caller, remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:36 +09:00
Laurent Pinchart
6557b1f69e serial: sh-sci: Simplify baud rate calculation algorithms
Rewrite the baud rate register value calculations in easier to read
forms. The computed value isn't modified.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:33 +09:00
Laurent Pinchart
6db201da25 serial: sh-sci: Remove baud rate calculation algorithm 5
The algorithm isn't used, remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:30 +09:00
Laurent Pinchart
8fb9631c51 serial: sh-sci: Sort headers alphabetically
This helps locating duplicates.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-24 11:17:25 +09:00
Sergei Shtylyov
ce70af1880 irq-renesas-irqc: simplify irq_set_type() method
Value 0 of the sense  selection field of CONFIG_n register means "disable event
detection" and serves in irqc_sense[] for marking the invalid values of the IRQ
type (by just omitting initializers). There is no need for INTC_IRQ_SENSE_VALID
and hence INTC_IRQ_SENSE() as all field values matching to the  valid IRQ types
are non-zero anyway.

Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Acked-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-23 09:27:17 +09:00
Olof Johansson
4ac63adc4f Samsung irq update for v3.14
- use linear irq domain for exynos-combiner
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQIcBAABAgAGBQJSrgDeAAoJEA0Cl+kVi2xqENAP/j4Val2f8qIh1WQSoowuvwN7
 giGn6uNRiIdVHKSP2l0wQ3m+adHgwaxHQt887sudanK2UHvvc0fbXd1DI0q/KoNs
 xWS5Prbtvl95+uyoS7XpO67YEzDIREGm6GZ9PqgKEb1ZScLK8W85vN2mbXZRHExU
 LrzwC0e+cf3uXBW8u5JpVfG4GPkB1vrTomDgotvXW1Q4sVn+MTVjG1N5VmbVrSB3
 R8HFhhJsKMxxY5VjczPWLOoQpWVUf3LfiUQ6WhOQ2KZ+kHusl04dd1Qla2BHK8kk
 7FzDCjUhpG2mWKlttUy6Wq37oMMj0dCnsdcfbtFu388PmvrjBl65Z6AoSvsvqUSB
 A02itxgR8ev6rgoS+A/wxrlQ/7vWBjbedXxvE718j4QuA9iq+UMwihcatwwCBGlZ
 Ui37lplkek03SZMXsIYPqlCR6SJRfPvCwX94z0eRztBSHzYmKzD7hFgtRXes2Fei
 nVMvGGmkKaYFeYjdx5fkMqqcGk6XleM2X/zWA5DHchzSmt59RreG1oc7VtO/DPhQ
 3O6tfg8dLLQ++cd7bu9Lhk9TCnPu/NnarRHm/gJFCvc6WP7eTydGUpA/CesKFcOU
 MpRQQygk9cJLvPSpX3WP6/KV8+l7KMbf4eQhMdZH9BkLWZlhfALDDjs90PNVwOsJ
 zmmO7Qmppt6nyMIo1cYJ
 =SPvW
 -----END PGP SIGNATURE-----

Merge tag 'samsung-irq' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/drivers

From Kukjin Kim:
Samsung irq update for v3.14
- use linear irq domain for exynos-combiner

* tag 'samsung-irq' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  irqchip: exynos-combiner: remove hard-coded irq_base value

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-22 14:08:08 -08:00
Olof Johansson
8f2d751a9e AT91 crypto drivers DT support:
- add DT to sha/des/aes existing drivers
 - add DMA DT
 - all documentation added to crypto/atmel-crypto.txt file
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.11 (GNU/Linux)
 
 iQEcBAABAgAGBQJSqfkKAAoJEAf03oE53VmQpHoH/2OnDX5C3hqXXL1r3p6JjRLP
 B2xDO2iZcB340HrobInN0FONXVCA2b8yNy2G+U421sNjklivT4o9+66tiwBBQlbS
 uoYU95CgeBs5dU1iM8Z5cIRFphEZdKDAJDd0RABUEcVPa+w569nyi5V29rwzH0UZ
 hnW0IzUtJqo9344dfBai9cRcVOjrJHfiqB+05PUWb12KFbLaQhqQLL1Z5b0XasB/
 9htaMxuXMXhflP7m+JY0+uVlFTOJliY9zUMN/bOqT2VBrl2tt1xLW7nooM57dB3y
 +wK1A+mhYHQgEgVm1U6X3+LUluitwyA+yw2Ybf6Yi/T+3tzMjeiknfHfUB5afMY=
 =JTE6
 -----END PGP SIGNATURE-----

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

From Nicolas Ferre:

AT91 crypto drivers DT support:
- add DT to sha/des/aes existing drivers
- add DMA DT
- all documentation added to crypto/atmel-crypto.txt file

* tag 'at91-drivers' of git://github.com/at91linux/linux-at91:
  crypto: atmel-sha - add sha information to the log
  crypto: atmel-sha - add support for Device Tree
  crypto: atmel-tdes - add support for Device Tree
  crypto: atmel-aes - add support for Device Tree

Signed-off-by: Olof Johansson <olof@lixom.net>
2013-12-22 11:42:50 -08:00
Olof Johansson
958c025a2a Merge branch 'at91/dt' into next/drivers
Merging at91/dt as a prereq for the at91/drivers code.

* at91/dt: (43 commits)
  ARM: at91/at91rm9200ek.dts: rearrange nodes in address ascending order
  ARM: at91: dt: at91rm9200ek: add emac and nor flash support
  ARM: at91: add uart aliases to sama5d3 dtsi
  ARM: at91: add i2c2 pinctrl speficifation to sama5d3 DT
  ARM: at91: Animeo IP: fix mtd partition table
  ARM: at91: at91sam9g45: add i2c pinctrl
  ARM: at91: at91sam9g45: set default mmc pinctrl-names
  ARM: at91: sama5d3: enable qt1070 as a wakeup source
  ARM: at91: add support for Cosino board series by HCE Engineering
  ARM: at91/dt/sama5d3: add DMA information to SHA/AES/TDES nodes
  ARM: at91/dt/trivial: before sama5d3, Atmel MPU were using at91 prefix
  ARM: at91/dt/trivial: use macro for AES irq type
  ARM: at91: sam9263ek: add dt lcd support
  ARM: at91: at9sam9m10g45ek: add dt lcd support
  ARM: at91: sam9263: add fb dt support
  ARM: at91: sam9g45: add fb dt support
  ARM: at91/dt: binding: add missing compatibility string in SDRAM/DDR documentation
  ARM: at91/dt: binding: add precision to AIC documentation
  ARM: at91/dt: add atmel,pullup-gpio to at91rm9200ek usb1 definition
  ARM: at91/dt: add ethernet phy to at91rm9200ek board
  ...
2013-12-22 11:42:30 -08:00
Carlo Caione
594c6fb924 ARM: sun4i/sun7i: RTC driver
This patch introduces the driver for the RTC in the Allwinner A10 and
A20 SoCs.

Signed-off-by: Carlo Caione <carlo.caione@gmail.com>
Acked-by: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2013-12-20 22:55:03 +01:00
Carlo Caione
182f14d38c ARM: sun4i/sun7i: DT documentation for RTC driver
Add DT documentation for SUNXI RTC driver

Signed-off-by: Carlo Caione <carlo.caione@gmail.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2013-12-20 22:54:43 +01:00
Kevin Hilman
ddf20397eb Renesas USB r8a66597 HCD update for v3.14
Convert to clk_prepare/unprepare
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.15 (GNU/Linux)
 
 iQIcBAABAgAGBQJSqmKJAAoJENfPZGlqN0++eHkP/0sQu2JtMbIUQu83KhbHysJY
 m6jhQpWfxFy9rPpCb68jeyIUrbqVpTzPtUmqpcr76gUNonISDu381VYRiVdKpYuY
 hUH0lf1pt1Mr4fLLtf6ll5GwJbp+G4KjuwMYvAuQIjX5NiPAJiiG5w2ZXVIPOlqw
 trFCCoV6Tn6lXHwYK5nzRZxtadywrYgXE99SVvvPzUolIWIPUY3tWcHpWk0gFFGj
 SlYrrVycvzAWt26wLIIP/u9IwmnrjPrPT3ZBIlmb4/QV9JyySj+ayJknZJU7fVzy
 cSVY/c+GTWr4PPcRWShaTOx5Eo2HyjnkK8Ja7Tl/NQr4ZE18MjkRBXSPYFnSU9km
 bWV0p5zk3TGFMKKQsiH6papHZQ4Tabz5dSYhV83D526Hww+8/4tfaCaKb2WY/tfv
 wqNRFg2cSHIT0zkN9es2ZhocEIvmT06SqqkA+z0TItVHytntPAfwjB2CZ7gn0AHZ
 QB6D8zwysugHKWoDotwz2fUVK64fyS+ApaKbiQK/kv91zTirw9zPwU9e/wO4M0cb
 /EW8svqqHSVtxndFEuWI09gMqEseMTkC2V1nJnrTS5oqXzuRHv3+Oxf2wOGpaWs+
 F1ASkB7cWqAwMoVjKqXHbhlaz/YAZjHgsOxf+w6VGKIMJlWkf9WtPLN7KM5WAMzi
 uXdABVHQUx003jXTbrpl
 =5h73
 -----END PGP SIGNATURE-----

Merge tag 'renesas-usb-r8a66597-hcd-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers

From Simon Horman:
Renesas USB r8a66597 HCD update for v3.14

Convert to clk_prepare/unprepare

* tag 'renesas-usb-r8a66597-hcd-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  usb: r8a66597-hcd: Convert to clk_prepare/unprepare

Signed-off-by: Kevin Hilman <khilman@linaro.org>
2013-12-20 11:23:31 -08:00
Laurent Pinchart
b016b646e8 serial: sh-sci: Convert to clk_prepare/unprepare
Turn clk_enable() and clk_disable() calls into clk_prepare_enable() and
clk_disable_unprepare() to get ready for the migration to the common
clock framework.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Magnus Damm <damm@opensource.se>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-14 09:59:31 +09:00
Laurent Pinchart
caec70381b serial: sh-sci: Don't enable/disable port from within break timer
The break timer accesses hardware registers and thus requires the port
to be enabled. It currently ensures this by enabling the port at the
beginning of the timer handler, and disabling it at the end. However,
the enable/disable operations call the runtime PM sync functions, which
are not allowed in atomic context. The current situation is thus broken.

This change relies on non-atomic code to enable/disable the port. The
break timer will only be started from the IRQ handler, which already
runs with the port enabled. We just need to ensure that the port won't
be disabled with the timer running, and that's easily done by just
cancelling the timer in the port disable function.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Magnus Damm <damm@opensource.se>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-14 09:58:12 +09:00
Alexandre Courbot
f47d41acfd ARM: tegra: support Trusted Foundations by default
Support for Trusted Foundations is light and allows the kernel to run on
a wider range of devices, so enable it by default.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-12-13 12:50:31 -07:00
Alexandre Courbot
265c89c994 ARM: tegra: set CPU reset handler using firmware
Use a firmware operation to set the CPU reset handler and only resort to
doing it ourselves if there is none defined.

This supports the booting of secondary CPUs on devices using a TrustZone
secure monitor.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-12-13 12:50:31 -07:00
Alexandre Courbot
ad14ecee4d ARM: tegra: split setting of CPU reset handler
Not all Tegra devices can set the CPU reset handler in the same way.
In particular, devices using a TrustZone secure monitor cannot set it
up directly and need to ask the firmware to do it.

This patch separates the act of setting the reset handler from its
preparation, so the former can be implemented in a different way.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-12-13 12:50:31 -07:00
Alexandre Courbot
1a5de3aeb0 ARM: tegra: add support for Trusted Foundations
Register the firmware operations for Trusted Foundations if the device
tree indicates it is active on the device.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-12-13 12:50:31 -07:00
Alexandre Courbot
fb2947c74b of: add Trusted Foundations bindings documentation
Add the Device Tree bindings documentation for the Trusted Foundation
secure monitor.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-12-13 12:50:30 -07:00
Alexandre Courbot
db2299e454 of: add vendor prefix for Trusted Logic Mobility
Add the "tlm" prefix for Trusted Logic Mobility.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-12-13 12:50:30 -07:00
Alexandre Courbot
d9a1beaa10 ARM: add basic support for Trusted Foundations
Trusted Foundations is a TrustZone-based secure monitor for ARM that
can be invoked using the same SMC-based API on supported platforms.
This patch adds initial basic support for Trusted Foundations using
the ARM firmware API. Current features are limited to the ability to
boot secondary processors.

Note: The API followed by Trusted Foundations does *not* follow the SMC
calling conventions. It has nothing to do with PSCI neither and is only
relevant to devices that use Trusted Foundations (like most Tegra-based
retail devices).

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
2013-12-13 12:50:30 -07:00
Nicolas Ferre
1ca5b7d953 crypto: atmel-sha - add sha information to the log
Depending on peripheral capabilities, print SHA information at the end
of the probe function.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
2013-12-12 18:39:36 +01:00
Nicolas Ferre
abfe7ae407 crypto: atmel-sha - add support for Device Tree
Add support for Device Tree and use of the DMA DT API to
get the channels if needed.
Documentation is added for these DT nodes.

Initial code by: Nicolas Royer and Eukrea.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
2013-12-12 18:39:36 +01:00
Nicolas Ferre
84c8976b64 crypto: atmel-tdes - add support for Device Tree
Add support for Device Tree and use of the DMA DT API to
get the channels if needed.
Documentation is added for these DT nodes.

Initial code by: Nicolas Royer and Eukrea.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
2013-12-12 18:39:35 +01:00
Nicolas Ferre
be943c7d27 crypto: atmel-aes - add support for Device Tree
Add support for Device Tree and use of the DMA DT API to
get the needed channels.
Documentation is added for these DT nodes.

Initial code by: Nicolas Royer and Eukrea.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
2013-12-12 18:39:35 +01:00
Laurent Pinchart
e2afca6988 serial: sh-sci: Fix warnings due to improper casts and printk formats
Use the %zu and %pad printk specifiers to print size_t and dma_addr_t
variables, and cast pointers to uintptr_t instead of unsigned int where
applicable. This fixes warnings on platforms where pointers and/or
dma_addr_t have a different size than int.

Cc: linux-serial@vger.kernel.org
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-12 22:14:49 +09:00
Magnus Damm
6a7e3b3007 irqchip: renesas-irqc: Enable mask on suspend
Now when lazy interrupt disable has been enabled in the driver
then extend the code to set IRQCHIP_MASK_ON_SUSPEND which tells
the core that only IRQs marked as wakeups need to stay enabled
during Suspend-to-RAM.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-12 21:02:42 +09:00
Magnus Damm
272012d0f7 irqchip: renesas-irqc: Use lazy disable
Set the ->irq_enable() and ->irq_disable() methods to NULL
to enable lazy disable of interrupts. This by itself provides
some level of optimization, but is mainly enabled as ground
work for future Suspend-to-RAM wake up support.

Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
2013-12-12 21:01:23 +09:00
Nicolas Ferre
ca594844e4 ARM: at91/at91rm9200ek.dts: rearrange nodes in address ascending order
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Boris BREZILLON <b.brezillon@overkiz.com>
2013-12-09 15:08:57 +01:00
Jean-Christophe PLAGNIOL-VILLARD
c8b3cc56b7 ARM: at91: dt: at91rm9200ek: add emac and nor flash support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
[nicolas.ferre@atmel.com: remove one macb node too many]
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-09 14:34:05 +01:00
Nicolas Ferre
ac0585cad0 ARM: at91: add uart aliases to sama5d3 dtsi
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by Boris BREZILLON <b.brezillon@overkiz.com>
2013-12-09 11:10:14 +01:00
Nicolas Ferre
557844ecc0 ARM: at91: add i2c2 pinctrl speficifation to sama5d3 DT
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Boris BREZILLON <b.brezillon@overkiz.com>
2013-12-09 11:10:14 +01:00
Jean-Christophe PLAGNIOL-VILLARD
2f8e458204 ARM: at91: Animeo IP: fix mtd partition table
Update to production one.

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-09 11:10:13 +01:00
Ludovic Desroches
cd127e1d99 ARM: at91: at91sam9g45: add i2c pinctrl
Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-09 11:10:13 +01:00
Ludovic Desroches
0645b93f6c ARM: at91: at91sam9g45: set default mmc pinctrl-names
pinctrl-names property was missing from mmc nodes.

Cc: <stable@vger.kernel.org> #3.11+
Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-09 11:10:12 +01:00
Bo Shen
c1463f68bf ARM: at91: sama5d3: enable qt1070 as a wakeup source
Enable qt1070 keyboard as a wakeup source on sama5d3xek board.

Signed-off-by: Bo Shen <voice.shen@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-12-09 11:10:12 +01:00