Commit bb319603 authored by Bjarki Arge Andreasen's avatar Bjarki Arge Andreasen Committed by Benjamin Cabé
Browse files

drivers: clock_control: nrf: add support for HFCLK24M



Add support for the HFCLK24M clock to the clock_control_nrf
device driver.

Signed-off-by: default avatarBjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
parent 980573f6
Loading
Loading
Loading
Loading
+24 −1
Original line number Diff line number Diff line
@@ -329,6 +329,18 @@ static void hfclk_stop(void)
	nrfx_clock_hfclk_stop();
}

#if NRF_CLOCK_HAS_HFCLK24M
static void hfclk24m_start(void)
{
	nrfx_clock_start(NRF_CLOCK_DOMAIN_HFCLK24M);
}

static void hfclk24m_stop(void)
{
	nrfx_clock_stop(NRF_CLOCK_DOMAIN_HFCLK24M);
}
#endif

#if NRF_CLOCK_HAS_HFCLK192M
static void hfclk192m_start(void)
{
@@ -718,7 +730,11 @@ static void clock_event_handler(nrfx_clock_evt_type_t event)
		break;
	}
#endif

#if NRF_CLOCK_HAS_HFCLK24M
	case NRFX_CLOCK_EVT_HFCLK24M_STARTED:
		clkstarted_handle(dev, CLOCK_CONTROL_NRF_TYPE_HFCLK24M);
		break;
#endif
#if NRF_CLOCK_HAS_HFCLK192M
	case NRFX_CLOCK_EVT_HFCLK192M_STARTED:
		clkstarted_handle(dev, CLOCK_CONTROL_NRF_TYPE_HFCLK192M);
@@ -841,6 +857,13 @@ static const struct nrf_clock_control_config config = {
			.stop = lfclk_stop,
			IF_ENABLED(CONFIG_LOG, (.name = "lfclk",))
		},
#if NRF_CLOCK_HAS_HFCLK24M
		[CLOCK_CONTROL_NRF_TYPE_HFCLK24M] = {
			.start = hfclk24m_start,
			.stop = hfclk24m_stop,
			IF_ENABLED(CONFIG_LOG, (.name = "hfclk24m",))
		},
#endif
#if NRF_CLOCK_HAS_HFCLK192M
		[CLOCK_CONTROL_NRF_TYPE_HFCLK192M] = {
			.start = hfclk192m_start,
+5 −0
Original line number Diff line number Diff line
@@ -26,6 +26,9 @@ extern "C" {
enum clock_control_nrf_type {
	CLOCK_CONTROL_NRF_TYPE_HFCLK,
	CLOCK_CONTROL_NRF_TYPE_LFCLK,
#if NRF_CLOCK_HAS_HFCLK24M
	CLOCK_CONTROL_NRF_TYPE_HFCLK24M,
#endif
#if NRF_CLOCK_HAS_HFCLK192M
	CLOCK_CONTROL_NRF_TYPE_HFCLK192M,
#endif
@@ -42,6 +45,8 @@ enum clock_control_nrf_type {
	((clock_control_subsys_t)CLOCK_CONTROL_NRF_TYPE_HFCLK)
#define CLOCK_CONTROL_NRF_SUBSYS_LF \
	((clock_control_subsys_t)CLOCK_CONTROL_NRF_TYPE_LFCLK)
#define CLOCK_CONTROL_NRF_SUBSYS_HF24M \
	((clock_control_subsys_t)CLOCK_CONTROL_NRF_TYPE_HFCLK24M)
#define CLOCK_CONTROL_NRF_SUBSYS_HF192M \
	((clock_control_subsys_t)CLOCK_CONTROL_NRF_TYPE_HFCLK192M)
#define CLOCK_CONTROL_NRF_SUBSYS_HFAUDIO \