cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

i2c-mux-reg.h (1235B)


      1/* SPDX-License-Identifier: GPL-2.0-or-later */
      2/*
      3 * I2C multiplexer using a single register
      4 *
      5 * Copyright 2015 Freescale Semiconductor
      6 * York Sun <yorksun@freescale.com>
      7 */
      8
      9#ifndef __LINUX_PLATFORM_DATA_I2C_MUX_REG_H
     10#define __LINUX_PLATFORM_DATA_I2C_MUX_REG_H
     11
     12/**
     13 * struct i2c_mux_reg_platform_data - Platform-dependent data for i2c-mux-reg
     14 * @parent: Parent I2C bus adapter number
     15 * @base_nr: Base I2C bus number to number adapters from or zero for dynamic
     16 * @values: Array of value for each channel
     17 * @n_values: Number of multiplexer channels
     18 * @little_endian: Indicating if the register is in little endian
     19 * @write_only: Reading the register is not allowed by hardware
     20 * @classes: Optional I2C auto-detection classes
     21 * @idle: Value to write to mux when idle
     22 * @idle_in_use: indicate if idle value is in use
     23 * @reg: Virtual address of the register to switch channel
     24 * @reg_size: register size in bytes
     25 */
     26struct i2c_mux_reg_platform_data {
     27	int parent;
     28	int base_nr;
     29	const unsigned int *values;
     30	int n_values;
     31	bool little_endian;
     32	bool write_only;
     33	const unsigned int *classes;
     34	u32 idle;
     35	bool idle_in_use;
     36	void __iomem *reg;
     37	resource_size_t reg_size;
     38};
     39
     40#endif	/* __LINUX_PLATFORM_DATA_I2C_MUX_REG_H */