1/*
2 * You need to use #ifdef around functions that may not exist
3 * in the final configuration (such as i2c).
4 * use a dummyfunction as first parameter to EXPORT_FUNC.
5 * As an example see the CONFIG_CMD_I2C section below
6 */
7#ifndef EXPORT_FUNC
8#define EXPORT_FUNC(a, b, c, ...)
9#endif
10	EXPORT_FUNC(get_version, unsigned long, get_version, void)
11	EXPORT_FUNC(getchar, int, getc, void)
12	EXPORT_FUNC(tstc, int, tstc, void)
13	EXPORT_FUNC(putc, void, putc, const char)
14	EXPORT_FUNC(puts, void, puts, const char *)
15#ifdef CONFIG_CONSOLE_FLUSH_SUPPORT
16	EXPORT_FUNC(flush, void, flush, void)
17#endif
18	EXPORT_FUNC(printf, int, printf, const char*, ...)
19#if (defined(CONFIG_X86) && !defined(CONFIG_X86_64)) || defined(CONFIG_PPC)
20	EXPORT_FUNC(irq_install_handler, void, install_hdlr,
21		    int, interrupt_handler_t, void*)
22
23	EXPORT_FUNC(irq_free_handler, void, free_hdlr, int)
24#else
25	EXPORT_FUNC(dummy, void, install_hdlr, void)
26	EXPORT_FUNC(dummy, void, free_hdlr, void)
27#endif
28	EXPORT_FUNC(malloc, void *, malloc, size_t)
29#if !CONFIG_IS_ENABLED(SYS_MALLOC_SIMPLE)
30	EXPORT_FUNC(free, void, free, void *)
31#endif
32	EXPORT_FUNC(udelay, void, udelay, unsigned long)
33	EXPORT_FUNC(get_timer, unsigned long, get_timer, unsigned long)
34	EXPORT_FUNC(vprintf, int, vprintf, const char *, va_list)
35	EXPORT_FUNC(do_reset, int, do_reset, struct cmd_tbl *,
36		    int , int , char * const [])
37	EXPORT_FUNC(env_get, char  *, env_get, const char*)
38	EXPORT_FUNC(env_set, int, env_set, const char *, const char *)
39	EXPORT_FUNC(simple_strtoul, unsigned long, simple_strtoul,
40		    const char *, char **, unsigned int)
41	EXPORT_FUNC(strict_strtoul, int, strict_strtoul,
42		    const char *, unsigned int , unsigned long *)
43	EXPORT_FUNC(simple_strtol, long, simple_strtol,
44		    const char *, char **, unsigned int)
45	EXPORT_FUNC(strcmp, int, strcmp, const char *cs, const char *ct)
46#if defined(CONFIG_CMD_I2C) && !CONFIG_IS_ENABLED(DM_I2C)
47	EXPORT_FUNC(i2c_write, int, i2c_write, uchar, uint, int , uchar * , int)
48	EXPORT_FUNC(i2c_read, int, i2c_read, uchar, uint, int , uchar * , int)
49#else
50	EXPORT_FUNC(dummy, void, i2c_write, void)
51	EXPORT_FUNC(dummy, void, i2c_read, void)
52#endif
53
54#if !defined(CONFIG_CMD_SPI) || defined(CONFIG_DM_SPI)
55	EXPORT_FUNC(dummy, void, spi_setup_slave, void)
56	EXPORT_FUNC(dummy, void, spi_free_slave, void)
57#else
58	EXPORT_FUNC(spi_setup_slave, struct spi_slave *, spi_setup_slave,
59		    unsigned int, unsigned int, unsigned int, unsigned int)
60	EXPORT_FUNC(spi_free_slave, void, spi_free_slave, struct spi_slave *)
61#endif
62#ifndef CONFIG_CMD_SPI
63	EXPORT_FUNC(dummy, void, spi_claim_bus, void)
64	EXPORT_FUNC(dummy, void, spi_release_bus, void)
65	EXPORT_FUNC(dummy, void, spi_xfer, void)
66#else
67	EXPORT_FUNC(spi_claim_bus, int, spi_claim_bus, struct spi_slave *)
68	EXPORT_FUNC(spi_release_bus, void, spi_release_bus, struct spi_slave *)
69	EXPORT_FUNC(spi_xfer, int, spi_xfer, struct spi_slave *,
70		    unsigned int, const void *, void *, unsigned long)
71#endif
72	EXPORT_FUNC(ustrtoul, unsigned long, ustrtoul,
73		    const char *, char **, unsigned int)
74	EXPORT_FUNC(ustrtoull, unsigned long long, ustrtoull,
75		    const char *, char **, unsigned int)
76	EXPORT_FUNC(strcpy, char *, strcpy, char *dest, const char *src)
77	EXPORT_FUNC(mdelay, void, mdelay, unsigned long msec)
78	EXPORT_FUNC(memset, void *, memset, void *, int, size_t)
79#ifdef CONFIG_PHY_AQUANTIA
80	EXPORT_FUNC(mdio_get_current_dev, struct mii_dev *,
81		    mdio_get_current_dev, void)
82	EXPORT_FUNC(phy_find_by_mask, struct phy_device *, phy_find_by_mask,
83		    struct mii_dev *bus, unsigned phy_mask)
84	EXPORT_FUNC(mdio_phydev_for_ethname, struct phy_device *,
85		    mdio_phydev_for_ethname, const char *ethname)
86	EXPORT_FUNC(miiphy_set_current_dev, int, miiphy_set_current_dev,
87		    const char *devname)
88#endif
89