blob: 0b09ce7b2e0df686aa6912050122f384757e9007 [file] [log] [blame]
Jean-Christophe PLAGNIOL-VILLARD6b0b3db2009-03-21 21:07:59 +01001/*
2 * (C) Copyright 2007-2008
Stelian Pop5ee0c7f2011-11-01 00:00:39 +01003 * Stelian Pop <stelian@popies.net>
Jean-Christophe PLAGNIOL-VILLARD6b0b3db2009-03-21 21:07:59 +01004 * Lead Tech Design <www.leadtechdesign.com>
5 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02006 * SPDX-License-Identifier: GPL-2.0+
Jean-Christophe PLAGNIOL-VILLARD6b0b3db2009-03-21 21:07:59 +01007 */
8
9#ifndef AT91_COMMON_H
10#define AT91_COMMON_H
11
Daniel Gorsulowski96d1b472009-06-30 23:03:33 +020012void at91_can_hw_init(void);
Bo Shen6f6afad2013-06-26 10:11:06 +080013void at91_gmac_hw_init(void);
Jean-Christophe PLAGNIOL-VILLARDfafa9232009-03-21 21:08:00 +010014void at91_macb_hw_init(void);
Reinhard Meyerc718a562010-08-13 10:31:06 +020015void at91_mci_hw_init(void);
Jean-Christophe PLAGNIOL-VILLARD6b0b3db2009-03-21 21:07:59 +010016void at91_serial0_hw_init(void);
17void at91_serial1_hw_init(void);
18void at91_serial2_hw_init(void);
Reinhard Meyer6dd03ef2010-11-03 15:38:33 +010019void at91_seriald_hw_init(void);
Jean-Christophe PLAGNIOL-VILLARD12dcdef2009-03-21 21:07:59 +010020void at91_spi0_hw_init(unsigned long cs_mask);
21void at91_spi1_hw_init(unsigned long cs_mask);
Bo Shenf9623df2013-09-11 18:24:51 +080022void at91_udp_hw_init(void);
Jean-Christophe PLAGNIOL-VILLARD4fc81fb2009-03-21 21:08:00 +010023void at91_uhp_hw_init(void);
Wu, Josh3f338c12013-04-16 23:42:44 +000024void at91_lcd_hw_init(void);
Bo Shenf92b2982013-11-15 11:12:38 +080025void at91_plla_init(u32 pllar);
Heiko Schocherf1e3a8c2014-10-31 08:31:04 +010026void at91_pllb_init(u32 pllar);
Bo Shenf92b2982013-11-15 11:12:38 +080027void at91_mck_init(u32 mckr);
Wenyou Yang95a50182017-09-13 14:58:49 +080028void at91_mck_init_down(u32 mckr);
Bo Shenf92b2982013-11-15 11:12:38 +080029void at91_pmc_init(void);
30void mem_init(void);
Heiko Schocher8a84ae12013-11-18 08:07:23 +010031void at91_phy_reset(void);
Heiko Schocherf1e3a8c2014-10-31 08:31:04 +010032void at91_sdram_hw_init(void);
33void at91_mck_init(u32 mckr);
34void at91_spl_board_init(void);
35void at91_disable_wdt(void);
36void matrix_init(void);
Bo Shen0a910282014-12-15 13:24:31 +080037void redirect_int_from_saic_to_aic(void);
Samuel Mescoffc3156fc2016-02-16 09:45:06 +010038void configure_2nd_sram_as_l2_cache(void);
Jean-Christophe PLAGNIOL-VILLARD6b0b3db2009-03-21 21:07:59 +010039
Wenyou Yanga3b84f42017-09-01 16:26:16 +080040int at91_set_ethaddr(int offset);
Wenyou Yang7879f962017-09-13 14:58:47 +080041int at91_video_show_board_info(void);
Wenyou Yanga3b84f42017-09-01 16:26:16 +080042
Jean-Christophe PLAGNIOL-VILLARD6b0b3db2009-03-21 21:07:59 +010043#endif /* AT91_COMMON_H */