Developer World
Spresense SDK Library v3.3.0-375c679
cxd56_clock.h
1/****************************************************************************
2 * boards/arm/cxd56xx/spresense/include/cxd56_clock.h
3 *
4 * Licensed to the Apache Software Foundation (ASF) under one or more
5 * contributor license agreements. See the NOTICE file distributed with
6 * this work for additional information regarding copyright ownership. The
7 * ASF licenses this file to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance with the
9 * License. You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
15 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
16 * License for the specific language governing permissions and limitations
17 * under the License.
18 *
19 ****************************************************************************/
20
21#ifndef __BOARDS_ARM_CXD56XX_SPRESENSE_INCLUDE_CXD56_CLOCK_H
22#define __BOARDS_ARM_CXD56XX_SPRESENSE_INCLUDE_CXD56_CLOCK_H
23
24/****************************************************************************
25 * Included Files
26 ****************************************************************************/
27
28#include <nuttx/config.h>
29
30#include <stdbool.h>
31
32#undef EXTERN
33#if defined(__cplusplus)
34#define EXTERN extern "C"
35extern "C"
36{
37#else
38#define EXTERN extern
39#endif
40
41/****************************************************************************
42 * Name: board_clock_initialize
43 *
44 * Description:
45 * Initialize clock control.
46 * If this API is called and is returned, the clock mode is the highest
47 * clock mode. For example, CPU frequency is 156MHz.
48 *
49 ****************************************************************************/
50
51void board_clock_initialize(void);
52
53/****************************************************************************
54 * Name: board_clock_enable
55 *
56 * Description:
57 * Enable dynamic clock control.
58 * If this API is called and is returned, the clock mode is the lowest
59 * clock mode. Later, you can control the clock mode dynamically by calling
60 * up_pm_acquire_freqlock() or up_pm_release_freqlock.
61 *
62 ****************************************************************************/
63
64void board_clock_enable(void);
65
66#undef EXTERN
67#if defined(__cplusplus)
68}
69#endif
70
71#endif /* __BOARDS_ARM_CXD56XX_SPRESENSE_INCLUDE_CXD56_CLOCK_H */