aboutsummaryrefslogtreecommitdiffstats
path: root/src/atsamd/samd51_clock.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/atsamd/samd51_clock.c')
-rw-r--r--src/atsamd/samd51_clock.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/atsamd/samd51_clock.c b/src/atsamd/samd51_clock.c
index 2f769435..3497bccf 100644
--- a/src/atsamd/samd51_clock.c
+++ b/src/atsamd/samd51_clock.c
@@ -39,11 +39,13 @@ route_pclock(uint32_t pclk_id, uint32_t clkgen_id)
// Enable a peripheral clock and power to that peripheral
void
-enable_pclock(uint32_t pclk_id, uint32_t pm_id)
+enable_pclock(uint32_t pclk_id, int32_t pm_id)
{
route_pclock(pclk_id, CLKGEN_48M);
- uint32_t pm_port = pm_id / 32, pm_bit = 1 << (pm_id % 32);
- (&MCLK->APBAMASK.reg)[pm_port] |= pm_bit;
+ if (pm_id >= 0) {
+ uint32_t pm_port = pm_id / 32, pm_bit = 1 << (pm_id % 32);
+ (&MCLK->APBAMASK.reg)[pm_port] |= pm_bit;
+ }
}
// Return the frequency of the given peripheral clock