Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
afa8f0cd
Commit
afa8f0cd
authored
Sep 01, 2013
by
Mark Brown
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'spi/topic/efm32' into spi-next
parents
2f2613b0
d8851a0d
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
572 additions
and
0 deletions
+572
-0
Documentation/devicetree/bindings/spi/efm32-spi.txt
Documentation/devicetree/bindings/spi/efm32-spi.txt
+34
-0
drivers/spi/Kconfig
drivers/spi/Kconfig
+7
-0
drivers/spi/Makefile
drivers/spi/Makefile
+1
-0
drivers/spi/spi-efm32.c
drivers/spi/spi-efm32.c
+516
-0
include/linux/platform_data/efm32-spi.h
include/linux/platform_data/efm32-spi.h
+14
-0
No files found.
Documentation/devicetree/bindings/spi/efm32-spi.txt
0 → 100644
View file @
afa8f0cd
* Energy Micro EFM32 SPI
Required properties:
- #address-cells: see spi-bus.txt
- #size-cells: see spi-bus.txt
- compatible: should be "efm32,spi"
- reg: Offset and length of the register set for the controller
- interrupts: pair specifying rx and tx irq
- clocks: phandle to the spi clock
- cs-gpios: see spi-bus.txt
- location: Value to write to the ROUTE register's LOCATION bitfield to configure the pinmux for the device, see datasheet for values.
Example:
spi1: spi@0x4000c400 { /* USART1 */
#address-cells = <1>;
#size-cells = <0>;
compatible = "efm32,spi";
reg = <0x4000c400 0x400>;
interrupts = <15 16>;
clocks = <&cmu 20>;
cs-gpios = <&gpio 51 1>; // D3
location = <1>;
status = "ok";
ks8851@0 {
compatible = "ks8851";
spi-max-frequency = <6000000>;
reg = <0>;
interrupt-parent = <&boardfpga>;
interrupts = <4>;
status = "ok";
};
};
drivers/spi/Kconfig
View file @
afa8f0cd
...
...
@@ -164,6 +164,13 @@ config SPI_DAVINCI
help
SPI master controller for DaVinci/DA8x/OMAP-L/AM1x SPI modules.
config SPI_EFM32
tristate "EFM32 SPI controller"
depends on OF && ARM && (ARCH_EFM32 || COMPILE_TEST)
select SPI_BITBANG
help
Driver for the spi controller found on Energy Micro's EFM32 SoCs.
config SPI_EP93XX
tristate "Cirrus Logic EP93xx SPI controller"
depends on ARCH_EP93XX || COMPILE_TEST
...
...
drivers/spi/Makefile
View file @
afa8f0cd
...
...
@@ -28,6 +28,7 @@ obj-$(CONFIG_SPI_DESIGNWARE) += spi-dw.o
obj-$(CONFIG_SPI_DW_MMIO)
+=
spi-dw-mmio.o
obj-$(CONFIG_SPI_DW_PCI)
+=
spi-dw-midpci.o
spi-dw-midpci-objs
:=
spi-dw-pci.o spi-dw-mid.o
obj-$(CONFIG_SPI_EFM32)
+=
spi-efm32.o
obj-$(CONFIG_SPI_EP93XX)
+=
spi-ep93xx.o
obj-$(CONFIG_SPI_FALCON)
+=
spi-falcon.o
obj-$(CONFIG_SPI_FSL_CPM)
+=
spi-fsl-cpm.o
...
...
drivers/spi/spi-efm32.c
0 → 100644
View file @
afa8f0cd
This diff is collapsed.
Click to expand it.
include/linux/platform_data/efm32-spi.h
0 → 100644
View file @
afa8f0cd
#ifndef __LINUX_PLATFORM_DATA_EFM32_SPI_H__
#define __LINUX_PLATFORM_DATA_EFM32_SPI_H__
#include <linux/types.h>
/**
* struct efm32_spi_pdata
* @location: pinmux location for the I/O pins (to be written to the ROUTE
* register)
*/
struct
efm32_spi_pdata
{
u8
location
;
};
#endif
/* ifndef __LINUX_PLATFORM_DATA_EFM32_SPI_H__ */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment