qemu/include/hw/timer
Markus Armbruster ec150c7e09 include: Make headers more self-contained
Back in 2016, we discussed[1] rules for headers, and these were
generally liked:

1. Have a carefully curated header that's included everywhere first.  We
   got that already thanks to Peter: osdep.h.

2. Headers should normally include everything they need beyond osdep.h.
   If exceptions are needed for some reason, they must be documented in
   the header.  If all that's needed from a header is typedefs, put
   those into qemu/typedefs.h instead of including the header.

3. Cyclic inclusion is forbidden.

This patch gets include/ closer to obeying 2.

It's actually extracted from my "[RFC] Baby steps towards saner
headers" series[2], which demonstrates a possible path towards
checking 2 automatically.  It passes the RFC test there.

[1] Message-ID: <87h9g8j57d.fsf@blackfin.pond.sub.org>
    https://lists.nongnu.org/archive/html/qemu-devel/2016-03/msg03345.html
[2] Message-Id: <20190711122827.18970-1-armbru@redhat.com>
    https://lists.nongnu.org/archive/html/qemu-devel/2019-07/msg02715.html

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20190812052359.30071-2-armbru@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2019-08-16 13:31:51 +02:00
..
a9gtimer.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
allwinner-a10-pit.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
arm_mptimer.h arm_mptimer: Convert to use ptimer 2016-10-24 16:26:53 +01:00
armv7m_systick.h arm: Move system_clock_scale to armv7m_systick.h 2019-05-23 14:47:43 +01:00
aspeed_rtc.h hw: timer: Add ASPEED RTC device 2019-07-01 17:28:59 +01:00
aspeed_timer.h aspeed/timer: fix compile breakage with clang 3.4.2 2018-09-25 15:13:24 +01:00
cmsdk-apb-dualtimer.h hw/timer/cmsdk-apb-dualtimer: Implement CMSDK dual timer module 2018-08-24 13:17:41 +01:00
cmsdk-apb-timer.h hw/char/cmsdk-apb-timer: Implement CMSDK APB timer device 2017-07-17 13:36:08 +01:00
digic-timer.h Use scripts/clean-includes to drop redundant qemu/typedefs.h 2016-03-22 22:20:16 +01:00
hpet.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
i8254_internal.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
i8254.h hw/timer/i8254: rename pit_init() -> i8254_pit_init() 2017-12-18 17:07:02 +03:00
imx_epit.h i.MX: Split the CCM class into an abstract base class and a concrete class 2015-12-17 13:37:15 +00:00
imx_gpt.h i.MX: Add i.MX7 GPT variant 2018-02-09 10:40:30 +00:00
m48t59.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
mc146818rtc_regs.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00
mc146818rtc.h hw/timer/mc146818: rename rtc_init() -> mc146818_rtc_init() 2017-12-18 17:07:02 +03:00
mips_gictimer.h hw/mips_gictimer: provide API for retrieving frequency 2017-02-21 22:24:58 +00:00
mss-timer.h msf2: Add Smartfusion2 System timer 2017-09-21 16:36:56 +01:00
nrf51_timer.h hw/timer/nrf51_timer: Add nRF51 Timer peripheral 2019-01-07 15:23:47 +00:00
pl031.h pl031: Correctly migrate state when using -rtc clock=host 2019-07-15 14:17:04 +01:00
stm32f2xx_timer.h stm32f2xx_timer: Add the stm32f2xx Timer 2015-03-11 13:21:05 +00:00
sun4v-rtc.h target-sparc: implement sun4v RTC 2017-01-18 22:03:44 +01:00
xlnx-zynqmp-rtc.h include: Make headers more self-contained 2019-08-16 13:31:51 +02:00