144da3a17SPurna Chandra Mandal /* 244da3a17SPurna Chandra Mandal * Microchip PIC32MZ[DA] Starter Kit board 344da3a17SPurna Chandra Mandal * 444da3a17SPurna Chandra Mandal * Copyright (C) 2015, Microchip Technology Inc. 544da3a17SPurna Chandra Mandal * Purna Chandra Mandal <purna.mandal@microchip.com> 644da3a17SPurna Chandra Mandal * 744da3a17SPurna Chandra Mandal * SPDX-License-Identifier: GPL-2.0+ 844da3a17SPurna Chandra Mandal * 944da3a17SPurna Chandra Mandal */ 1044da3a17SPurna Chandra Mandal 1144da3a17SPurna Chandra Mandal #include <common.h> 1244da3a17SPurna Chandra Mandal #include <dm.h> 1344da3a17SPurna Chandra Mandal #include <clk.h> 14*135aa950SStephen Warren #include <dt-bindings/clock/microchip,clock.h> 1544da3a17SPurna Chandra Mandal #include <mach/pic32.h> 1644da3a17SPurna Chandra Mandal 1744da3a17SPurna Chandra Mandal #ifdef CONFIG_DISPLAY_BOARDINFO checkboard(void)1844da3a17SPurna Chandra Mandalint checkboard(void) 1944da3a17SPurna Chandra Mandal { 20*135aa950SStephen Warren ulong rate; 2144da3a17SPurna Chandra Mandal struct udevice *dev; 22*135aa950SStephen Warren struct clk clk; 23*135aa950SStephen Warren int ret; 2444da3a17SPurna Chandra Mandal 2544da3a17SPurna Chandra Mandal printf("Core: %s\n", get_core_name()); 2644da3a17SPurna Chandra Mandal 27*135aa950SStephen Warren if (uclass_get_device(UCLASS_CLK, 0, &dev)) 28*135aa950SStephen Warren return 0; 29*135aa950SStephen Warren 30*135aa950SStephen Warren clk.id = PB7CLK; 31*135aa950SStephen Warren ret = clk_request(dev, &clk); 32*135aa950SStephen Warren if (ret < 0) 33*135aa950SStephen Warren return 0; 34*135aa950SStephen Warren 35*135aa950SStephen Warren rate = clk_get_rate(&clk); 3644da3a17SPurna Chandra Mandal printf("CPU Speed: %lu MHz\n", rate / 1000000); 37*135aa950SStephen Warren 38*135aa950SStephen Warren clk_free(&clk); 3944da3a17SPurna Chandra Mandal 4044da3a17SPurna Chandra Mandal return 0; 4144da3a17SPurna Chandra Mandal } 4244da3a17SPurna Chandra Mandal #endif 43