linux/arch/powerpc/sysdev/mpc5xxx_clocks.c
<<
>>
Prefs
   1// SPDX-License-Identifier: GPL-2.0
   2/**
   3 *      mpc5xxx_get_bus_frequency - Find the bus frequency for a device
   4 *      @node:  device node
   5 *
   6 *      Returns bus frequency (IPS on MPC512x, IPB on MPC52xx),
   7 *      or 0 if the bus frequency cannot be found.
   8 */
   9
  10#include <linux/kernel.h>
  11#include <linux/of_platform.h>
  12#include <linux/export.h>
  13#include <asm/mpc5xxx.h>
  14
  15unsigned long mpc5xxx_get_bus_frequency(struct device_node *node)
  16{
  17        const unsigned int *p_bus_freq = NULL;
  18
  19        of_node_get(node);
  20        while (node) {
  21                p_bus_freq = of_get_property(node, "bus-frequency", NULL);
  22                if (p_bus_freq)
  23                        break;
  24
  25                node = of_get_next_parent(node);
  26        }
  27        of_node_put(node);
  28
  29        return p_bus_freq ? *p_bus_freq : 0;
  30}
  31EXPORT_SYMBOL(mpc5xxx_get_bus_frequency);
  32