| /* SPDX-License-Identifier: GPL-2.0+ */ | |
| /* | |
| * Copyright (C) 2023 Loongson Technology Corporation Limited | |
| */ | |
| #ifndef __LSDC_I2C_H__ | |
| #define __LSDC_I2C_H__ | |
| #include <linux/i2c.h> | |
| #include <linux/i2c-algo-bit.h> | |
| struct lsdc_i2c { | |
| struct i2c_adapter adapter; | |
| struct i2c_algo_bit_data bit; | |
| struct drm_device *ddev; | |
| void __iomem *dir_reg; | |
| void __iomem *dat_reg; | |
| /* pin bit mask */ | |
| u8 sda; | |
| u8 scl; | |
| }; | |
| struct lsdc_display_pipe; | |
| int lsdc_create_i2c_chan(struct drm_device *ddev, | |
| struct lsdc_display_pipe *dispipe, | |
| unsigned int index); | |
| #endif |