1234567891011121314151617181920212223242526272829303132333435363738 |
- /*
- * PCA9552 I2C LED blinker
- *
- * Copyright (c) 2017-2018, IBM Corporation.
- *
- * This work is licensed under the terms of the GNU GPL, version 2 or
- * later. See the COPYING file in the top-level directory.
- */
- #ifndef PCA9552_H
- #define PCA9552_H
- #include "hw/i2c/i2c.h"
- #include "qom/object.h"
- #define TYPE_PCA9552 "pca9552"
- #define TYPE_PCA955X "pca955x"
- typedef struct PCA955xState PCA955xState;
- DECLARE_INSTANCE_CHECKER(PCA955xState, PCA955X,
- TYPE_PCA955X)
- #define PCA955X_NR_REGS 10
- #define PCA955X_PIN_COUNT_MAX 16
- struct PCA955xState {
- /*< private >*/
- I2CSlave i2c;
- /*< public >*/
- uint8_t len;
- uint8_t pointer;
- uint8_t regs[PCA955X_NR_REGS];
- qemu_irq gpio_out[PCA955X_PIN_COUNT_MAX];
- uint8_t ext_state[PCA955X_PIN_COUNT_MAX];
- char *description; /* For debugging purpose only */
- };
- #endif
|