aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rp2040/hardware/structs/pwm.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rp2040/hardware/structs/pwm.h')
-rw-r--r--lib/rp2040/hardware/structs/pwm.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/lib/rp2040/hardware/structs/pwm.h b/lib/rp2040/hardware/structs/pwm.h
new file mode 100644
index 00000000..54995610
--- /dev/null
+++ b/lib/rp2040/hardware/structs/pwm.h
@@ -0,0 +1,33 @@
+/*
+ * Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+#ifndef _HARDWARE_STRUCTS_PWM_H
+#define _HARDWARE_STRUCTS_PWM_H
+
+#include "hardware/address_mapped.h"
+#include "hardware/platform_defs.h"
+#include "hardware/regs/pwm.h"
+
+typedef struct pwm_slice_hw {
+ io_rw_32 csr;
+ io_rw_32 div;
+ io_rw_32 ctr;
+ io_rw_32 cc;
+ io_rw_32 top;
+} pwm_slice_hw_t;
+
+typedef struct {
+ pwm_slice_hw_t slice[NUM_PWM_SLICES];
+ io_rw_32 en;
+ io_rw_32 intr;
+ io_rw_32 inte;
+ io_rw_32 intf;
+ io_rw_32 ints;
+} pwm_hw_t;
+
+#define pwm_hw ((pwm_hw_t *const)PWM_BASE)
+
+#endif