1 // SPDX-License-Identifier: GPL-2.0+ 2 /* 3 * Copyright (C) 2015 Atmel Corporation 4 * Wenyou Yang <wenyou.yang@atmel.com> 5 */ 6 7 #include <common.h> 8 #include <asm/io.h> 9 #include <asm/arch/clk.h> 10 #include <asm/arch/sama5d2.h> 11 _cpu_is_sama5d2(void)12int _cpu_is_sama5d2(void) 13 { 14 unsigned int chip_id = get_chip_id(); 15 16 return ((chip_id == ARCH_ID_SAMA5D2) || 17 (chip_id == ARCH_ID_SAMA5D2_SIP)) ? 1 : 0; 18 } 19 get_cpu_name(void)20char *get_cpu_name(void) 21 { 22 unsigned int chip_id = get_chip_id(); 23 unsigned int extension_id = get_extension_chip_id(); 24 25 if (chip_id == ARCH_ID_SAMA5D2) { 26 switch (extension_id) { 27 case ARCH_EXID_SAMA5D21CU: 28 return "SAMA5D21"; 29 case ARCH_EXID_SAMA5D22CU: 30 return "SAMA5D22-CU"; 31 case ARCH_EXID_SAMA5D22CN: 32 return "SAMA5D22-CN"; 33 case ARCH_EXID_SAMA5D23CU: 34 return "SAMA5D23-CU"; 35 case ARCH_EXID_SAMA5D24CX: 36 return "SAMA5D24-CX"; 37 case ARCH_EXID_SAMA5D24CU: 38 return "SAMA5D24-CU"; 39 case ARCH_EXID_SAMA5D26CU: 40 return "SAMA5D26-CU"; 41 case ARCH_EXID_SAMA5D27CU: 42 return "SAMA5D27-CU"; 43 case ARCH_EXID_SAMA5D27CN: 44 return "SAMA5D27-CN"; 45 case ARCH_EXID_SAMA5D28CU: 46 return "SAMA5D28-CU"; 47 case ARCH_EXID_SAMA5D28CN: 48 return "SAMA5D28-CN"; 49 } 50 } 51 52 if ((chip_id == ARCH_ID_SAMA5D2) || (chip_id == ARCH_ID_SAMA5D2_SIP)) { 53 switch (extension_id) { 54 case ARCH_EXID_SAMA5D225C_D1M: 55 return "SAMA5D225 128M bits DDR2 SDRAM"; 56 case ARCH_EXID_SAMA5D27C_D5M: 57 return "SAMA5D27 512M bits DDR2 SDRAM"; 58 case ARCH_EXID_SAMA5D27C_D1G: 59 return "SAMA5D27 1G bits DDR2 SDRAM"; 60 case ARCH_EXID_SAMA5D27C_LD1G: 61 return "SAMA5D27 1G bits LPDDR2 SDRAM"; 62 case ARCH_EXID_SAMA5D27C_LD2G: 63 return "SAMA5D27 2G bits LPDDR2 SDRAM"; 64 case ARCH_EXID_SAMA5D28C_D1G: 65 return "SAMA5D28 1G bits DDR2 SDRAM"; 66 case ARCH_EXID_SAMA5D28C_LD1G: 67 return "SAMA5D28 1G bits LPDDR2 SDRAM"; 68 case ARCH_EXID_SAMA5D28C_LD2G: 69 return "SAMA5D28 2G bits LPDDR2 SDRAM"; 70 } 71 } 72 73 return "Unknown CPU type"; 74 } 75 76 #ifdef CONFIG_USB_GADGET_ATMEL_USBA at91_udp_hw_init(void)77void at91_udp_hw_init(void) 78 { 79 at91_upll_clk_enable(); 80 81 at91_periph_clk_enable(ATMEL_ID_UDPHS); 82 } 83 #endif 84