Example #1
0
static void *stx7108_ethernet_bus_setup(void __iomem *ioaddr,
					struct device *dev, void *data)
{
	struct stm_amba_bridge *amba;

	if (!data) {
		static struct stm_amba_bridge_config *bridge_config;

		bridge_config = &stx7108_amba_stmmac_config;

		if (unlikely(boot_cpu_data.cut_major == 1)) {
			bridge_config->packets_in_chunk = 1;
			bridge_config->type2.threshold = 64;
		}

		amba = stm_amba_bridge_create(dev, ioaddr + GMAC_AHB2STBUS_BASE,
					      bridge_config);
		if (IS_ERR(amba)) {
			dev_err(dev, " Unable to create amba plug\n");
			return NULL;
		}
	} else
		amba = (struct stm_amba_bridge *) data;

	stm_amba_bridge_init(amba);

	return (void *) amba;
}
Example #2
0
static void *stih415_ethernet_bus_setup(void __iomem *ioaddr,
					struct device *dev, void *data)
{
	struct stm_amba_bridge *amba;

	if (!data) {
		amba = stm_amba_bridge_create(dev, ioaddr + GMAC_AHB2STBUS_BASE,
					      &stih415_amba_stmmac_config);
		if (IS_ERR(amba)) {
			dev_err(dev, " Unable to create amba plug\n");
			return NULL;
		}
	} else
		amba = (struct stm_amba_bridge *) data;

	stm_amba_bridge_init(amba);

	return (void *) amba;
}