cregit-Linux how code gets into the kernel

Release 4.14 arch/arc/kernel/devtree.c

Directory: arch/arc/kernel
/*
 * Copyright (C) 2012 Synopsys, Inc. (www.synopsys.com)
 *
 * Based on reduced version of METAG
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */


#include <linux/init.h>
#include <linux/reboot.h>
#include <linux/memblock.h>
#include <linux/of.h>
#include <linux/of_fdt.h>
#include <asm/mach_desc.h>

#ifdef CONFIG_SERIAL_EARLYCON


static unsigned int __initdata arc_base_baud;


unsigned int __init arc_early_base_baud(void) { return arc_base_baud/16; }

Contributors

PersonTokensPropCommitsCommitProp
Vineet Gupta14100.00%1100.00%
Total14100.00%1100.00%


static void __init arc_set_early_base_baud(unsigned long dt_root) { if (of_flat_dt_is_compatible(dt_root, "abilis,arc-tb10x")) arc_base_baud = 166666666; /* Fixed 166.6MHz clk (TB10x) */ else if (of_flat_dt_is_compatible(dt_root, "snps,arc-sdp") || of_flat_dt_is_compatible(dt_root, "snps,hsdk")) arc_base_baud = 33333333; /* Fixed 33MHz clk (AXS10x & HSDK) */ else if (of_flat_dt_is_compatible(dt_root, "ezchip,arc-nps")) arc_base_baud = 800000000; /* Fixed 800MHz clk (NPS) */ else arc_base_baud = 50000000; /* Fixed default 50MHz */ }

Contributors

PersonTokensPropCommitsCommitProp
Vineet Gupta4160.29%240.00%
Noam Camus1522.06%120.00%
Alexey Brodkin1217.65%240.00%
Total68100.00%5100.00%

#else #define arc_set_early_base_baud(dt_root) #endif
static const void * __init arch_get_next_mach(const char *const **match) { static const struct machine_desc *mdesc = __arch_info_begin; const struct machine_desc *m = mdesc; if (m >= __arch_info_end) return NULL; mdesc++; *match = m->dt_compat; return m; }

Contributors

PersonTokensPropCommitsCommitProp
Rob Herring56100.00%1100.00%
Total56100.00%1100.00%

/** * setup_machine_fdt - Machine setup when an dtb was passed to the kernel * @dt: virtual address pointer to dt blob * * If a dtb was passed to the kernel, then use it to choose the correct * machine_desc and to setup the system. */
const struct machine_desc * __init setup_machine_fdt(void *dt) { const struct machine_desc *mdesc; unsigned long dt_root; if (!early_init_dt_scan(dt)) return NULL; mdesc = of_flat_dt_match_machine(NULL, arch_get_next_mach); if (!mdesc) machine_halt(); dt_root = of_get_flat_dt_root(); arc_set_early_base_baud(dt_root); return mdesc; }

Contributors

PersonTokensPropCommitsCommitProp
Vineet Gupta5078.12%360.00%
Rob Herring1421.88%240.00%
Total64100.00%5100.00%


Overall Contributors

PersonTokensPropCommitsCommitProp
Vineet Gupta14359.34%440.00%
Rob Herring7029.05%220.00%
Noam Camus156.22%110.00%
Alexey Brodkin124.98%220.00%
Peter Hurley10.41%110.00%
Total241100.00%10100.00%
Directory: arch/arc/kernel
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.