Advertisement
Guest User

Untitled

a guest
Apr 8th, 2014
263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.22 KB | None | 0 0
  1. ---
  2. arch/arm/include/asm/arch-mx6/mx6sl_pins.h | 4 ++++
  3. board/freescale/mx6slevk/mx6slevk.c | 20 ++++++++++++++++++++
  4. include/configs/mx6slevk.h | 12 ++++++++++++
  5. 3 files changed, 36 insertions(+)
  6.  
  7. diff --git a/arch/arm/include/asm/arch-mx6/mx6sl_pins.h b/arch/arm/include/asm/arch-mx6/mx6sl_pins.h
  8. index 5f9c90a..9812d49 100644
  9. --- a/arch/arm/include/asm/arch-mx6/mx6sl_pins.h
  10. +++ b/arch/arm/include/asm/arch-mx6/mx6sl_pins.h
  11. @@ -10,6 +10,10 @@
  12. #include <asm/imx-common/iomux-v3.h>
  13.  
  14. enum {
  15. + MX6_PAD_ECSPI1_MISO__ECSPI_MISO = IOMUX_PAD(0x0358, 0x0068, 0, 0x0684, 0, 0),
  16. + MX6_PAD_ECSPI1_MOSI__ECSPI_MOSI = IOMUX_PAD(0x035C, 0x006C, 0, 0x0688, 0, 0),
  17. + MX6_PAD_ECSPI1_SCLK__ECSPI_SCLK = IOMUX_PAD(0x0360, 0x0070, 0, 0x067C, 0, 0),
  18. + MX6_PAD_ECSPI1_SS0__GPIO4_IO11 = IOMUX_PAD(0x0364, 0x0074, 0, 0x0000, 5, 0),
  19. MX6_PAD_SD2_CLK__USDHC2_CLK = IOMUX_PAD(0x055C, 0x0254, 0, 0x0000, 0, 0),
  20. MX6_PAD_SD2_CMD__USDHC2_CMD = IOMUX_PAD(0x0560, 0x0258, 0, 0x0000, 0, 0),
  21. MX6_PAD_SD2_DAT0__USDHC2_DAT0 = IOMUX_PAD(0x0564, 0x025C, 0, 0x0000, 0, 0),
  22. diff --git a/board/freescale/mx6slevk/mx6slevk.c b/board/freescale/mx6slevk/mx6slevk.c
  23. index aadad32..d2b64cc 100644
  24. --- a/board/freescale/mx6slevk/mx6slevk.c
  25. +++ b/board/freescale/mx6slevk/mx6slevk.c
  26. @@ -34,6 +34,9 @@ DECLARE_GLOBAL_DATA_PTR;
  27. PAD_CTL_PUS_100K_UP | PAD_CTL_SPEED_MED | \
  28. PAD_CTL_DSE_40ohm | PAD_CTL_HYS)
  29.  
  30. +#define SPI_PAD_CTRL (PAD_CTL_HYS | PAD_CTL_SPEED_MED | \
  31. + PAD_CTL_DSE_40ohm | PAD_CTL_SRE_FAST)
  32. +
  33. #define ETH_PHY_RESET IMX_GPIO_NR(4, 21)
  34.  
  35. int dram_init(void)
  36. @@ -71,6 +74,20 @@ static iomux_v3_cfg_t const fec_pads[] = {
  37. MX6_PAD_FEC_TX_CLK__GPIO_4_21 | MUX_PAD_CTRL(NO_PAD_CTRL),
  38. };
  39.  
  40. +#ifdef CONFIG_MXC_SPI
  41. +static iomux_v3_cfg_t ecspi1_pads[] = {
  42. + MX6_PAD_ECSPI1_MISO__ECSPI_MISO | MUX_PAD_CTRL(SPI_PAD_CTRL),
  43. + MX6_PAD_ECSPI1_MOSI__ECSPI_MOSI | MUX_PAD_CTRL(SPI_PAD_CTRL),
  44. + MX6_PAD_ECSPI1_SCLK__ECSPI_SCLK | MUX_PAD_CTRL(SPI_PAD_CTRL),
  45. + MX6_PAD_ECSPI1_SS0__GPIO4_IO11 | MUX_PAD_CTRL(NO_PAD_CTRL),
  46. +};
  47. +
  48. +static void setup_spi(void)
  49. +{
  50. + imx_iomux_v3_setup_multiple_pads(ecspi1_pads, ARRAY_SIZE(ecspi1_pads));
  51. +}
  52. +#endif
  53. +
  54. static void setup_iomux_uart(void)
  55. {
  56. imx_iomux_v3_setup_multiple_pads(uart1_pads, ARRAY_SIZE(uart1_pads));
  57. @@ -132,6 +149,9 @@ static int setup_fec(void)
  58. int board_early_init_f(void)
  59. {
  60. setup_iomux_uart();
  61. +#ifdef CONFIG_MXC_SPI
  62. + setup_spi();
  63. +#endif
  64. return 0;
  65. }
  66.  
  67. diff --git a/include/configs/mx6slevk.h b/include/configs/mx6slevk.h
  68. index 1876dbf..3d05a64 100644
  69. --- a/include/configs/mx6slevk.h
  70. +++ b/include/configs/mx6slevk.h
  71. @@ -10,6 +10,7 @@
  72. #define __CONFIG_H
  73.  
  74. #include <asm/arch/imx-regs.h>
  75. +#include <asm/imx-common/gpio.h>
  76. #include <linux/sizes.h>
  77. #include "mx6_common.h"
  78.  
  79. @@ -196,4 +197,15 @@
  80. #define CONFIG_CMD_CACHE
  81. #endif
  82.  
  83. +#define CONFIG_CMD_SF
  84. +#ifdef CONFIG_CMD_SF
  85. +#define CONFIG_SPI_FLASH
  86. +#define CONFIG_SPI_FLASH_STMICRO
  87. +#define CONFIG_MXC_SPI
  88. +#define CONFIG_SF_DEFAULT_BUS 0
  89. +#define CONFIG_SF_DEFAULT_CS (0 | (IMX_GPIO_NR(4, 11) << 8))
  90. +#define CONFIG_SF_DEFAULT_SPEED 20000000
  91. +#define CONFIG_SF_DEFAULT_MODE SPI_MODE_0
  92. +#endif
  93. +
  94. #endif /* __CONFIG_H */
  95. --
  96. 1.8.3.2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement