pwmbus.h (0af7a9a45179bc98c1f62c21c5272d7cae74e9ed) pwmbus.h (b43e2c8b56b9f494a962c82572e0306ac06ad8d7)
1/*-
2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 *
4 * Copyright (c) 2019 Ian Lepore <ian@FreeBSD.org>
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

--- 16 unchanged lines hidden (view full) ---

25 * SUCH DAMAGE.
26 *
27 * $FreeBSD$
28 */
29
30#ifndef _PWMBUS_H_
31#define _PWMBUS_H_
32
1/*-
2 * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
3 *
4 * Copyright (c) 2019 Ian Lepore <ian@FreeBSD.org>
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:

--- 16 unchanged lines hidden (view full) ---

25 * SUCH DAMAGE.
26 *
27 * $FreeBSD$
28 */
29
30#ifndef _PWMBUS_H_
31#define _PWMBUS_H_
32
33struct pwmbus_softc {
34 device_t dev;
35 u_int nchannels;
36};
37
33struct pwmbus_ivars {
34 u_int pi_channel;
35};
36
37enum {
38 PWMBUS_IVAR_CHANNEL, /* Channel used by child dev */
39};
40

--- 8 unchanged lines hidden (view full) ---

49pwmbus_set_ ## A(device_t dev, T t) \
50{ \
51 return BUS_WRITE_IVAR(device_get_parent(dev), dev, \
52 PWMBUS_IVAR_ ## B, (uintptr_t) t); \
53}
54
55PWMBUS_ACCESSOR(channel, CHANNEL, u_int)
56
38struct pwmbus_ivars {
39 u_int pi_channel;
40};
41
42enum {
43 PWMBUS_IVAR_CHANNEL, /* Channel used by child dev */
44};
45

--- 8 unchanged lines hidden (view full) ---

54pwmbus_set_ ## A(device_t dev, T t) \
55{ \
56 return BUS_WRITE_IVAR(device_get_parent(dev), dev, \
57 PWMBUS_IVAR_ ## B, (uintptr_t) t); \
58}
59
60PWMBUS_ACCESSOR(channel, CHANNEL, u_int)
61
62#ifdef FDT
63#define PWMBUS_FDT_PNP_INFO(t) FDTCOMPAT_PNP_INFO(t, pwmbus)
64#else
65#define PWMBUS_FDT_PNP_INFO(t)
66#endif
67
57extern driver_t pwmbus_driver;
58extern devclass_t pwmbus_devclass;
59extern driver_t ofw_pwmbus_driver;
60extern devclass_t ofw_pwmbus_devclass;
61
62#endif /* _PWMBUS_H_ */
68extern driver_t pwmbus_driver;
69extern devclass_t pwmbus_devclass;
70extern driver_t ofw_pwmbus_driver;
71extern devclass_t ofw_pwmbus_devclass;
72
73#endif /* _PWMBUS_H_ */