uboot/drivers/clk/intel/clk_intel.c
<<
>>
Prefs
   1// SPDX-License-Identifier: GPL-2.0+
   2/*
   3 * Copyright 2019 Google LLC
   4 * Written by Simon Glass <sjg@chromium.org>
   5 */
   6
   7#include <common.h>
   8#include <dm.h>
   9#include <clk-uclass.h>
  10#include <dt-bindings/clock/intel-clock.h>
  11
  12static ulong intel_clk_get_rate(struct clk *clk)
  13{
  14        switch (clk->id) {
  15        case CLK_I2C:
  16                /* Hard-coded to 133MHz on current platforms */
  17                return 133333333;
  18        default:
  19                return -ENODEV;
  20        }
  21}
  22
  23static struct clk_ops intel_clk_ops = {
  24        .get_rate       = intel_clk_get_rate,
  25};
  26
  27static const struct udevice_id intel_clk_ids[] = {
  28        { .compatible = "intel,apl-clk" },
  29        { }
  30};
  31
  32U_BOOT_DRIVER(intel_apl_clk) = {
  33        .name           = "intel_apl_clk",
  34        .id             = UCLASS_CLK,
  35        .of_match       = intel_clk_ids,
  36        .ops            = &intel_clk_ops,
  37};
  38