Message ID | 20190204231815.29661-8-philmd@redhat.com |
---|---|
State | New |
Headers | show |
Series | hw: Remove "hw/devices.h" | expand |
Philippe Mathieu-Daudé <philmd@redhat.com> writes: > Since uWireSlave is only used in this new header, there is no > need to expose it via "qemu/typedefs.h". > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > MAINTAINERS | 2 ++ > hw/arm/nseries.c | 2 +- > hw/arm/palm.c | 2 +- > hw/input/tsc2005.c | 2 +- > hw/input/tsc210x.c | 4 ++-- > include/hw/arm/omap.h | 6 +----- > include/hw/devices.h | 15 --------------- > include/hw/input/tsc2xxx.h | 38 ++++++++++++++++++++++++++++++++++++++ > include/qemu/typedefs.h | 1 - > 9 files changed, 46 insertions(+), 26 deletions(-) > create mode 100644 include/hw/input/tsc2xxx.h > > diff --git a/MAINTAINERS b/MAINTAINERS > index a38086f767..6b0b5ccb41 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -654,6 +654,7 @@ F: hw/input/tsc2005.c > F: hw/misc/cbus.c > F: hw/timer/twl92230.c > F: include/hw/display/blizzard.h > +F: include/hw/input/tsc2xxx.h > F: include/hw/misc/cbus.h > > Palm > @@ -663,6 +664,7 @@ L: qemu-arm@nongnu.org > S: Odd Fixes > F: hw/arm/palm.c > F: hw/input/tsc210x.c > +F: include/hw/input/tsc2xxx.h > > Raspberry Pi > M: Peter Maydell <peter.maydell@linaro.org> > diff --git a/hw/arm/nseries.c b/hw/arm/nseries.c > index ac876b5878..5ac2ca0877 100644 > --- a/hw/arm/nseries.c > +++ b/hw/arm/nseries.c > @@ -30,8 +30,8 @@ > #include "ui/console.h" > #include "hw/boards.h" > #include "hw/i2c/i2c.h" > -#include "hw/devices.h" > #include "hw/display/blizzard.h" > +#include "hw/input/tsc2xxx.h" > #include "hw/misc/cbus.h" > #include "hw/block/flash.h" > #include "hw/hw.h" > diff --git a/hw/arm/palm.c b/hw/arm/palm.c > index 285f43709d..139d27d1cc 100644 > --- a/hw/arm/palm.c > +++ b/hw/arm/palm.c > @@ -26,7 +26,7 @@ > #include "hw/arm/omap.h" > #include "hw/boards.h" > #include "hw/arm/arm.h" > -#include "hw/devices.h" > +#include "hw/input/tsc2xxx.h" > #include "hw/loader.h" > #include "exec/address-spaces.h" > #include "cpu.h" > diff --git a/hw/input/tsc2005.c b/hw/input/tsc2005.c > index 2b9108a193..f82771e7a7 100644 > --- a/hw/input/tsc2005.c > +++ b/hw/input/tsc2005.c > @@ -23,7 +23,7 @@ > #include "hw/hw.h" > #include "qemu/timer.h" > #include "ui/console.h" > -#include "hw/devices.h" > +#include "hw/input/tsc2xxx.h" > #include "trace.h" > > #define TSC_CUT_RESOLUTION(value, p) ((value) >> (16 - (p ? 12 : 10))) > diff --git a/hw/input/tsc210x.c b/hw/input/tsc210x.c > index ded0db9351..542a9188be 100644 > --- a/hw/input/tsc210x.c > +++ b/hw/input/tsc210x.c > @@ -24,8 +24,8 @@ > #include "audio/audio.h" > #include "qemu/timer.h" > #include "ui/console.h" > -#include "hw/arm/omap.h" /* For I2SCodec and uWireSlave */ > -#include "hw/devices.h" > +#include "hw/arm/omap.h" /* For I2SCodec */ > +#include "hw/input/tsc2xxx.h" > > #define TSC_DATA_REGISTERS_PAGE 0x0 > #define TSC_CONTROL_REGISTERS_PAGE 0x1 > diff --git a/include/hw/arm/omap.h b/include/hw/arm/omap.h > index e7fbd340f3..9de867daa4 100644 > --- a/include/hw/arm/omap.h > +++ b/include/hw/arm/omap.h > @@ -20,6 +20,7 @@ > #include "exec/memory.h" > # define hw_omap_h "omap.h" > #include "hw/irq.h" > +#include "hw/input/tsc2xxx.h" > #include "target/arm/cpu-qom.h" > #include "qemu/log.h" > > @@ -679,11 +680,6 @@ qemu_irq *omap_mpuio_in_get(struct omap_mpuio_s *s); > void omap_mpuio_out_set(struct omap_mpuio_s *s, int line, qemu_irq handler); > void omap_mpuio_key(struct omap_mpuio_s *s, int row, int col, int down); > > -struct uWireSlave { > - uint16_t (*receive)(void *opaque); > - void (*send)(void *opaque, uint16_t data); > - void *opaque; > -}; > struct omap_uwire_s; > void omap_uwire_attach(struct omap_uwire_s *s, > uWireSlave *slave, int chipselect); > diff --git a/include/hw/devices.h b/include/hw/devices.h > index 7a630da47f..ba9034050b 100644 > --- a/include/hw/devices.h > +++ b/include/hw/devices.h > @@ -4,7 +4,6 @@ > /* Devices that have nowhere better to go. */ > > #include "hw/hw.h" > -#include "ui/console.h" > > /* smc91c111.c */ > void smc91c111_init(NICInfo *, uint32_t, qemu_irq); > @@ -12,18 +11,4 @@ void smc91c111_init(NICInfo *, uint32_t, qemu_irq); > /* lan9118.c */ > void lan9118_init(NICInfo *, uint32_t, qemu_irq); > > -/* tsc210x.c */ > -uWireSlave *tsc2102_init(qemu_irq pint); > -uWireSlave *tsc2301_init(qemu_irq penirq, qemu_irq kbirq, qemu_irq dav); > -I2SCodec *tsc210x_codec(uWireSlave *chip); > -uint32_t tsc210x_txrx(void *opaque, uint32_t value, int len); > -void tsc210x_set_transform(uWireSlave *chip, > - MouseTransformInfo *info); > -void tsc210x_key_event(uWireSlave *chip, int key, int down); > - > -/* tsc2005.c */ > -void *tsc2005_init(qemu_irq pintdav); > -uint32_t tsc2005_txrx(void *opaque, uint32_t value, int len); > -void tsc2005_set_transform(void *opaque, MouseTransformInfo *info); > - > #endif > diff --git a/include/hw/input/tsc2xxx.h b/include/hw/input/tsc2xxx.h > new file mode 100644 > index 0000000000..f23f00cde9 > --- /dev/null > +++ b/include/hw/input/tsc2xxx.h > @@ -0,0 +1,38 @@ > +/* > + * TI touchscreen controller > + * > + * Copyright (c) 2006 Andrzej Zaborowski > + * Copyright (C) 2008 Nokia 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 HW_INPUT_TSC2XXX_H > +#define HW_INPUT_TSC2XXX_H > + > +/* TI 4/8-wire resistive touch screen converters */ This sounds like a more specific phrasing of "TI touchscreen controller" above. Do we need both, or could this one be merged into the one above? > + > +#include "hw/irq.h" > +#include "ui/console.h" > + > +typedef struct uWireSlave { > + uint16_t (*receive)(void *opaque); > + void (*send)(void *opaque, uint16_t data); > + void *opaque; > +} uWireSlave; > + > +/* tsc210x.c */ > +uWireSlave *tsc2102_init(qemu_irq pint); > +uWireSlave *tsc2301_init(qemu_irq penirq, qemu_irq kbirq, qemu_irq dav); > +I2SCodec *tsc210x_codec(uWireSlave *chip); > +uint32_t tsc210x_txrx(void *opaque, uint32_t value, int len); > +void tsc210x_set_transform(uWireSlave *chip, MouseTransformInfo *info); > +void tsc210x_key_event(uWireSlave *chip, int key, int down); > + > +/* tsc2005.c */ > +void *tsc2005_init(qemu_irq pintdav); > +uint32_t tsc2005_txrx(void *opaque, uint32_t value, int len); > +void tsc2005_set_transform(void *opaque, MouseTransformInfo *info); > + > +#endif > diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h > index 5d1a2d8329..4d2e3cfb86 100644 > --- a/include/qemu/typedefs.h > +++ b/include/qemu/typedefs.h > @@ -98,7 +98,6 @@ typedef struct RAMBlock RAMBlock; > typedef struct Range Range; > typedef struct SHPCDevice SHPCDevice; > typedef struct SSIBus SSIBus; > -typedef struct uWireSlave uWireSlave; > typedef struct VirtIODevice VirtIODevice; > typedef struct Visitor Visitor; > typedef void SaveStateHandler(QEMUFile *f, void *opaque);
diff --git a/MAINTAINERS b/MAINTAINERS index a38086f767..6b0b5ccb41 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -654,6 +654,7 @@ F: hw/input/tsc2005.c F: hw/misc/cbus.c F: hw/timer/twl92230.c F: include/hw/display/blizzard.h +F: include/hw/input/tsc2xxx.h F: include/hw/misc/cbus.h Palm @@ -663,6 +664,7 @@ L: qemu-arm@nongnu.org S: Odd Fixes F: hw/arm/palm.c F: hw/input/tsc210x.c +F: include/hw/input/tsc2xxx.h Raspberry Pi M: Peter Maydell <peter.maydell@linaro.org> diff --git a/hw/arm/nseries.c b/hw/arm/nseries.c index ac876b5878..5ac2ca0877 100644 --- a/hw/arm/nseries.c +++ b/hw/arm/nseries.c @@ -30,8 +30,8 @@ #include "ui/console.h" #include "hw/boards.h" #include "hw/i2c/i2c.h" -#include "hw/devices.h" #include "hw/display/blizzard.h" +#include "hw/input/tsc2xxx.h" #include "hw/misc/cbus.h" #include "hw/block/flash.h" #include "hw/hw.h" diff --git a/hw/arm/palm.c b/hw/arm/palm.c index 285f43709d..139d27d1cc 100644 --- a/hw/arm/palm.c +++ b/hw/arm/palm.c @@ -26,7 +26,7 @@ #include "hw/arm/omap.h" #include "hw/boards.h" #include "hw/arm/arm.h" -#include "hw/devices.h" +#include "hw/input/tsc2xxx.h" #include "hw/loader.h" #include "exec/address-spaces.h" #include "cpu.h" diff --git a/hw/input/tsc2005.c b/hw/input/tsc2005.c index 2b9108a193..f82771e7a7 100644 --- a/hw/input/tsc2005.c +++ b/hw/input/tsc2005.c @@ -23,7 +23,7 @@ #include "hw/hw.h" #include "qemu/timer.h" #include "ui/console.h" -#include "hw/devices.h" +#include "hw/input/tsc2xxx.h" #include "trace.h" #define TSC_CUT_RESOLUTION(value, p) ((value) >> (16 - (p ? 12 : 10))) diff --git a/hw/input/tsc210x.c b/hw/input/tsc210x.c index ded0db9351..542a9188be 100644 --- a/hw/input/tsc210x.c +++ b/hw/input/tsc210x.c @@ -24,8 +24,8 @@ #include "audio/audio.h" #include "qemu/timer.h" #include "ui/console.h" -#include "hw/arm/omap.h" /* For I2SCodec and uWireSlave */ -#include "hw/devices.h" +#include "hw/arm/omap.h" /* For I2SCodec */ +#include "hw/input/tsc2xxx.h" #define TSC_DATA_REGISTERS_PAGE 0x0 #define TSC_CONTROL_REGISTERS_PAGE 0x1 diff --git a/include/hw/arm/omap.h b/include/hw/arm/omap.h index e7fbd340f3..9de867daa4 100644 --- a/include/hw/arm/omap.h +++ b/include/hw/arm/omap.h @@ -20,6 +20,7 @@ #include "exec/memory.h" # define hw_omap_h "omap.h" #include "hw/irq.h" +#include "hw/input/tsc2xxx.h" #include "target/arm/cpu-qom.h" #include "qemu/log.h" @@ -679,11 +680,6 @@ qemu_irq *omap_mpuio_in_get(struct omap_mpuio_s *s); void omap_mpuio_out_set(struct omap_mpuio_s *s, int line, qemu_irq handler); void omap_mpuio_key(struct omap_mpuio_s *s, int row, int col, int down); -struct uWireSlave { - uint16_t (*receive)(void *opaque); - void (*send)(void *opaque, uint16_t data); - void *opaque; -}; struct omap_uwire_s; void omap_uwire_attach(struct omap_uwire_s *s, uWireSlave *slave, int chipselect); diff --git a/include/hw/devices.h b/include/hw/devices.h index 7a630da47f..ba9034050b 100644 --- a/include/hw/devices.h +++ b/include/hw/devices.h @@ -4,7 +4,6 @@ /* Devices that have nowhere better to go. */ #include "hw/hw.h" -#include "ui/console.h" /* smc91c111.c */ void smc91c111_init(NICInfo *, uint32_t, qemu_irq); @@ -12,18 +11,4 @@ void smc91c111_init(NICInfo *, uint32_t, qemu_irq); /* lan9118.c */ void lan9118_init(NICInfo *, uint32_t, qemu_irq); -/* tsc210x.c */ -uWireSlave *tsc2102_init(qemu_irq pint); -uWireSlave *tsc2301_init(qemu_irq penirq, qemu_irq kbirq, qemu_irq dav); -I2SCodec *tsc210x_codec(uWireSlave *chip); -uint32_t tsc210x_txrx(void *opaque, uint32_t value, int len); -void tsc210x_set_transform(uWireSlave *chip, - MouseTransformInfo *info); -void tsc210x_key_event(uWireSlave *chip, int key, int down); - -/* tsc2005.c */ -void *tsc2005_init(qemu_irq pintdav); -uint32_t tsc2005_txrx(void *opaque, uint32_t value, int len); -void tsc2005_set_transform(void *opaque, MouseTransformInfo *info); - #endif diff --git a/include/hw/input/tsc2xxx.h b/include/hw/input/tsc2xxx.h new file mode 100644 index 0000000000..f23f00cde9 --- /dev/null +++ b/include/hw/input/tsc2xxx.h @@ -0,0 +1,38 @@ +/* + * TI touchscreen controller + * + * Copyright (c) 2006 Andrzej Zaborowski + * Copyright (C) 2008 Nokia 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 HW_INPUT_TSC2XXX_H +#define HW_INPUT_TSC2XXX_H + +/* TI 4/8-wire resistive touch screen converters */ + +#include "hw/irq.h" +#include "ui/console.h" + +typedef struct uWireSlave { + uint16_t (*receive)(void *opaque); + void (*send)(void *opaque, uint16_t data); + void *opaque; +} uWireSlave; + +/* tsc210x.c */ +uWireSlave *tsc2102_init(qemu_irq pint); +uWireSlave *tsc2301_init(qemu_irq penirq, qemu_irq kbirq, qemu_irq dav); +I2SCodec *tsc210x_codec(uWireSlave *chip); +uint32_t tsc210x_txrx(void *opaque, uint32_t value, int len); +void tsc210x_set_transform(uWireSlave *chip, MouseTransformInfo *info); +void tsc210x_key_event(uWireSlave *chip, int key, int down); + +/* tsc2005.c */ +void *tsc2005_init(qemu_irq pintdav); +uint32_t tsc2005_txrx(void *opaque, uint32_t value, int len); +void tsc2005_set_transform(void *opaque, MouseTransformInfo *info); + +#endif diff --git a/include/qemu/typedefs.h b/include/qemu/typedefs.h index 5d1a2d8329..4d2e3cfb86 100644 --- a/include/qemu/typedefs.h +++ b/include/qemu/typedefs.h @@ -98,7 +98,6 @@ typedef struct RAMBlock RAMBlock; typedef struct Range Range; typedef struct SHPCDevice SHPCDevice; typedef struct SSIBus SSIBus; -typedef struct uWireSlave uWireSlave; typedef struct VirtIODevice VirtIODevice; typedef struct Visitor Visitor; typedef void SaveStateHandler(QEMUFile *f, void *opaque);
Since uWireSlave is only used in this new header, there is no need to expose it via "qemu/typedefs.h". Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> --- MAINTAINERS | 2 ++ hw/arm/nseries.c | 2 +- hw/arm/palm.c | 2 +- hw/input/tsc2005.c | 2 +- hw/input/tsc210x.c | 4 ++-- include/hw/arm/omap.h | 6 +----- include/hw/devices.h | 15 --------------- include/hw/input/tsc2xxx.h | 38 ++++++++++++++++++++++++++++++++++++++ include/qemu/typedefs.h | 1 - 9 files changed, 46 insertions(+), 26 deletions(-) create mode 100644 include/hw/input/tsc2xxx.h