This patch adds support for Broadcom's BCM53xx switch family, also known as RoboSwitch. Some of these switches are ubiquituous, found in home routers, Wi-Fi routers, DSL and cable modem gateways and other networking related products. This drivers adds the library driver (b53_common.c) as well as a few bus glue drivers for MDIO, SPI, Switch Register Access Block (SRAB) and memory-mapped I/O into a SoC's address space (Broadcom BCM63xx/33xx). Basic operations are supported to bring the Layer 1/2 up and running, but not much more at this point, subsequent patches add the remaining features.
Showing the changes to include/linux/platform_data (1 of 14 files). Show all
Unified · Split
| @@ -0,0 +1,33 @@ | ||
| 1 | +/* | |
| 2 | + * B53 platform data | |
| 3 | + * | |
| 4 | + * Copyright (C) 2013 Jonas Gorski <jogo@openwrt.org> | |
| 5 | + * | |
| 6 | + * Permission to use, copy, modify, and/or distribute this software for any | |
| 7 | + * purpose with or without fee is hereby granted, provided that the above | |
| 8 | + * copyright notice and this permission notice appear in all copies. | |
| 9 | + * | |
| 10 | + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
| 11 | + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
| 12 | + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
| 13 | + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
| 14 | + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
| 15 | + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
| 16 | + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
| 17 | + */ | |
| 18 | + | |
| 19 | +#ifndef __B53_H | |
| 20 | +#define __B53_H | |
| 21 | + | |
| 22 | +#include <linux/kernel.h> | |
| 23 | + | |
| 24 | +struct b53_platform_data { | |
| 25 | + u32 chip_id; | |
| 26 | + u16 enabled_ports; | |
| 27 | + | |
| 28 | + /* only used by MMAP'd driver */ | |
| 29 | + unsigned big_endian:1; | |
| 30 | + void __iomem *regs; | |
| 31 | +}; | |
| 32 | + | |
| 33 | +#endif | |