1 /* 2 * Copyright (C) 2018 Marvell International Ltd. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 * https://spdx.org/licenses 6 */ 7 /* This driver provides I2C support for Marvell A8K and compatible SoCs */ 8 9 #ifndef MENTOR_I2C_PLAT_H 10 #define MENTOR_I2C_PLAT_H 11 12 #define CONFIG_SYS_TCLK 250000000 13 #define CONFIG_SYS_I2C_SPEED 100000 14 #define CONFIG_SYS_I2C_SLAVE 0x0 15 16 #define I2C_CAN_UNSTUCK 17 18 struct mentor_i2c_regs { 19 uint32_t slave_address; 20 uint32_t data; 21 uint32_t control; 22 union { 23 uint32_t status; /* when reading */ 24 uint32_t baudrate; /* when writing */ 25 }; 26 uint32_t xtnd_slave_addr; 27 uint32_t reserved[2]; 28 uint32_t soft_reset; 29 uint8_t reserved2[0xa0 - 0x20]; 30 uint32_t unstuck; 31 }; 32 33 #endif /* MENTOR_I2C_PLAT_H */ 34