1/* 2 * Copyright 2017, Data61 3 * Commonwealth Scientific and Industrial Research Organisation (CSIRO) 4 * ABN 41 687 119 230. 5 * 6 * This software may be distributed and modified according to the terms of 7 * the BSD 2-Clause license. Note that NO WARRANTY is provided. 8 * See "LICENSE_BSD2.txt" for details. 9 * 10 * @TAG(DATA61_BSD) 11 */ 12 13#pragma once 14 15#define EXYNOS_GPIOLEFT_PADDR 0x11400000 16#define EXYNOS_GPIORIGHT_PADDR 0x11000000 17#define EXYNOS_GPIOC2C_PADDR 0x106E0000 18#define EXYNOS_GPIOAUDIO_PADDR 0x03860000 19 20#define EXYNOS_GPIOX_SIZE 0x1000 21#define EXYNOS_GPIOLEFT_SIZE EXYNOS_GPIOX_SIZE 22#define EXYNOS_GPIORIGHT_SIZE EXYNOS_GPIOX_SIZE 23#define EXYNOS_GPIOC2C_SIZE EXYNOS_GPIOX_SIZE 24#define EXYNOS_GPIOAUDIO_SIZE EXYNOS_GPIOX_SIZE 25 26enum mux_feature { 27 MUX_I2C0, 28 MUX_I2C1, 29 MUX_I2C2, 30 MUX_I2C3, 31 MUX_I2C4, 32 MUX_I2C5, 33 MUX_I2C6, 34 MUX_I2C7, 35 MUX_SPI0, 36 MUX_SPI1, 37 MUX_SPI2, 38 MUX_UART0, 39 MUX_UART0_FLOW, 40 MUX_UART1, 41 MUX_UART1_FLOW, 42 MUX_UART2, 43 MUX_UART2_FLOW, 44 MUX_UART3, 45 MUX_UART3_FLOW, 46 MUX_SROM, 47 MUX_EBI, 48 NMUX_FEATURES 49}; 50 51/** 52 * Initialise the mux subsystem with pre-mapped regions. 53 * @param[in] bankX A virtual mapping for bank X of the MUX subsystem. 54 * bank3 and bank4 are present for compatibility reasons 55 * only and can be passed as NULL. 56 * @param[out] mux On success, this will be filled with the appropriate 57 * subsystem data. 58 * @return 0 on success 59 */ 60int exynos_mux_init(void* bank1, 61 void* bank2, 62 void* bank3, 63 void* bank4, 64 mux_sys_t* mux); 65 66