board.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * board.h
  4. *
  5. * EETS GmbH PDU001 board information header
  6. *
  7. * Copyright (C) 2018 EETS GmbH - http://www.eets.ch/
  8. *
  9. * Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/
  10. */
  11. #ifndef _BOARD_H_
  12. #define _BOARD_H_
  13. /*
  14. * We have two pin mux functions that must exist. First we need I2C0 to
  15. * access the TPS65910 PMIC located on the M2 computing module.
  16. * Second, if we want low-level debugging or a early UART (ie. before the
  17. * pin controller driver is running), we need one of the UART ports UART0 to
  18. * UART5 (usually UART3 since it is wired to K2).
  19. * In case of I2C0 access we explicitly don't rely on the the ROM but we could
  20. * do so as we use the primary mode (mode 0) for I2C0.
  21. * All other multiplexing and pin configuration is done by the DT once it
  22. * gets parsed by the pin controller driver.
  23. * However we relay on the ROM to configure the pins of MMC0 (eMMC) as well
  24. * as MMC1 (microSD card-cage) since these are our boot devices.
  25. */
  26. void enable_uart0_pin_mux(void);
  27. void enable_uart1_pin_mux(void);
  28. void enable_uart2_pin_mux(void);
  29. void enable_uart3_pin_mux(void);
  30. void enable_uart4_pin_mux(void);
  31. void enable_uart5_pin_mux(void);
  32. void enable_uart_pin_mux(u32 addr);
  33. void enable_i2c0_pin_mux(void);
  34. #endif