[PATCH rtems 1/2] bsps/imxrt: Allow different ARM PLL setting
Gedare Bloom
gedare at rtems.org
Fri Jun 4 17:43:42 UTC 2021
On Fri, Jun 4, 2021 at 1:48 AM Christian Mauderer
<christian.mauderer at embedded-brains.de> wrote:
>
> Update #4180
> ---
> .../nxp/boards/evkbimxrt1050/clock_config.c | 5 +++
> bsps/arm/imxrt/start/clock-arm-pll-config.c | 33 +++++++++++++++++++
> spec/build/bsps/arm/imxrt/bspimxrt.yml | 1 +
> 3 files changed, 39 insertions(+)
> create mode 100644 bsps/arm/imxrt/start/clock-arm-pll-config.c
>
> diff --git a/bsps/arm/imxrt/nxp/boards/evkbimxrt1050/clock_config.c b/bsps/arm/imxrt/nxp/boards/evkbimxrt1050/clock_config.c
> index c23d5da356..ea28d06dd8 100644
> --- a/bsps/arm/imxrt/nxp/boards/evkbimxrt1050/clock_config.c
> +++ b/bsps/arm/imxrt/nxp/boards/evkbimxrt1050/clock_config.c
> @@ -33,6 +33,7 @@ board: IMXRT1050-EVKB
> #ifndef __rtems__
> #include "clock_config.h"
> #else /* __rtems__ */
> +#include <bspopts.h>
> #include "fsl_clock_config.h"
> #endif /* __rtems__ */
> #include "fsl_iomuxc.h"
> @@ -146,10 +147,14 @@ sources:
> /*******************************************************************************
> * Variables for BOARD_BootClockRUN configuration
> ******************************************************************************/
> +#ifndef __rtems__
> const clock_arm_pll_config_t armPllConfig_BOARD_BootClockRUN = {
> .loopDivider = 100, /* PLL loop divider, Fout = Fin * 50 */
> .src = 0, /* Bypass clock source, 0 - OSC 24M, 1 - CLK1_P and CLK1_N */
> };
> +#else /* __rtems__ */
> +/* Moved to a separate file so an application can overwrite it. */
although it may be trivial, perhaps add the filename/path
(bsps/arm/imxrt/start/clock-arm-pll-config.c) in the comment?
BSP doco provided how to override it?
> +#endif /* __rtems__ */
> const clock_sys_pll_config_t sysPllConfig_BOARD_BootClockRUN = {
> .loopDivider = 1, /* PLL loop divider, Fout = Fin * ( 20 + loopDivider*2 + numerator / denominator ) */
> .numerator = 0, /* 30 bit numerator of fractional loop divider */
> diff --git a/bsps/arm/imxrt/start/clock-arm-pll-config.c b/bsps/arm/imxrt/start/clock-arm-pll-config.c
> new file mode 100644
> index 0000000000..12ad1867eb
> --- /dev/null
> +++ b/bsps/arm/imxrt/start/clock-arm-pll-config.c
> @@ -0,0 +1,33 @@
> +/* SPDX-License-Identifier: BSD-2-Clause */
> +
> +/*
> + * Copyright (C) 2021 embedded brains GmbH (http://www.embedded-brains.de)
> + *
> + * Redistribution and use in source and binary forms, with or without
> + * modification, are permitted provided that the following conditions
> + * are met:
> + * 1. Redistributions of source code must retain the above copyright
> + * notice, this list of conditions and the following disclaimer.
> + * 2. Redistributions in binary form must reproduce the above copyright
> + * notice, this list of conditions and the following disclaimer in the
> + * documentation and/or other materials provided with the distribution.
> + *
> + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
> + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
> + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
> + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
> + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
> + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
> + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
> + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
> + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
> + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
> + * POSSIBILITY OF SUCH DAMAGE.
> + */
> +
> +#include "fsl_clock_config.h"
> +
> +const clock_arm_pll_config_t armPllConfig_BOARD_BootClockRUN = {
> + .loopDivider = 100,
> + .src = 0,
> +};
> diff --git a/spec/build/bsps/arm/imxrt/bspimxrt.yml b/spec/build/bsps/arm/imxrt/bspimxrt.yml
> index f543a14394..c6ea904754 100644
> --- a/spec/build/bsps/arm/imxrt/bspimxrt.yml
> +++ b/spec/build/bsps/arm/imxrt/bspimxrt.yml
> @@ -238,6 +238,7 @@ source:
> - bsps/arm/imxrt/spi/imxrt-lpspi.c
> - bsps/arm/imxrt/start/bspstart.c
> - bsps/arm/imxrt/start/bspstarthooks.c
> +- bsps/arm/imxrt/start/clock-arm-pll-config.c
> - bsps/arm/imxrt/start/flash-boot-data.c
> - bsps/arm/imxrt/start/flash-config.c
> - bsps/arm/imxrt/start/flash-dcd.c
> --
> 2.26.2
>
> _______________________________________________
> devel mailing list
> devel at rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
More information about the devel
mailing list