/openbmc/linux/drivers/fpga/ |
H A D | fpga-bridge.c | 3 * FPGA Bridge Framework Driver 8 #include <linux/fpga/fpga-bridge.h> 23 * fpga_bridge_enable - Enable transactions on the bridge 25 * @bridge: FPGA bridge 29 int fpga_bridge_enable(struct fpga_bridge *bridge) in fpga_bridge_enable() argument 31 dev_dbg(&bridge->dev, "enable\n"); in fpga_bridge_enable() 33 if (bridge->br_ops && bridge->br_ops->enable_set) in fpga_bridge_enable() 34 return bridge->br_ops->enable_set(bridge, 1); in fpga_bridge_enable() 41 * fpga_bridge_disable - Disable transactions on the bridge 43 * @bridge: FPGA bridge [all …]
|
/openbmc/linux/drivers/gpu/drm/ |
H A D | drm_bridge.c | 47 * A bridge is always attached to a single &drm_encoder at a time, but can be 50 * [ CRTC ---> ] Encoder ---> Bridge A ---> Bridge B 52 * Here, the output of the encoder feeds to bridge A, and that furthers feeds to 53 * bridge B. Bridge chains can be arbitrarily long, and shall be fully linear: 54 * Chaining multiple bridges to the output of a bridge, or the same bridge to 66 * Display drivers are responsible for linking encoders with the first bridge 67 * in the chains. This is done by acquiring the appropriate bridge with 68 * devm_drm_of_get_bridge(). Once acquired, the bridge shall be attached to the 71 * Bridges are responsible for linking themselves with the next bridge in the 93 * DRM bridge chain functions shall be called manually. [all …]
|
H A D | drm_bridge_connector.c | 22 * The DRM bridge connector helper object provides a DRM connector 28 * To use the helper, display controller drivers create a bridge connector with 34 * The DRM bridge connector operations are implemented based on the operations 36 * to the bridge closest to the connector (at the end of the chain) that 39 * To make use of this helper, all bridges in the chain shall report bridge 40 * operation flags (&drm_bridge->ops) and bridge output type 62 * The last bridge in the chain (closest to the connector) that provides 69 * The last bridge in the chain (closest to the connector) that provides 76 * The last bridge in the chain (closest to the connector) that provides 83 * The last bridge in the chain (closest to the connector) that provides [all …]
|
/openbmc/linux/drivers/media/i2c/ |
H A D | st-mipid02.c | 3 * Driver for ST MIPID02 CSI-2 to PARALLEL bridge 241 static int mipid02_read_reg(struct mipid02_dev *bridge, u16 reg, u8 *val) in mipid02_read_reg() argument 243 struct i2c_client *client = bridge->i2c_client; in mipid02_read_reg() 271 static int mipid02_write_reg(struct mipid02_dev *bridge, u16 reg, u8 val) in mipid02_write_reg() argument 273 struct i2c_client *client = bridge->i2c_client; in mipid02_write_reg() 297 static int mipid02_get_regulators(struct mipid02_dev *bridge) in mipid02_get_regulators() argument 302 bridge->supplies[i].supply = mipid02_supply_name[i]; in mipid02_get_regulators() 304 return devm_regulator_bulk_get(&bridge->i2c_client->dev, in mipid02_get_regulators() 306 bridge->supplies); in mipid02_get_regulators() 309 static void mipid02_apply_reset(struct mipid02_dev *bridge) in mipid02_apply_reset() argument [all …]
|
/openbmc/linux/drivers/char/agp/ |
H A D | backend.c | 70 struct agp_bridge_data *bridge; in agp_backend_acquire() local 72 bridge = agp_find_bridge(pdev); in agp_backend_acquire() 74 if (!bridge) in agp_backend_acquire() 77 if (atomic_read(&bridge->agp_in_use)) in agp_backend_acquire() 79 atomic_inc(&bridge->agp_in_use); in agp_backend_acquire() 80 return bridge; in agp_backend_acquire() 87 * @bridge: the AGP backend to release 94 void agp_backend_release(struct agp_bridge_data *bridge) in agp_backend_release() argument 97 if (bridge) in agp_backend_release() 98 atomic_dec(&bridge->agp_in_use); in agp_backend_release() [all …]
|
H A D | generic.c | 178 curr->bridge->driver->free_by_type(curr); in agp_free_memory() 182 if (curr->bridge->driver->agp_destroy_pages) { in agp_free_memory() 183 curr->bridge->driver->agp_destroy_pages(curr); in agp_free_memory() 187 curr->bridge->driver->agp_destroy_page( in agp_free_memory() 192 curr->bridge->driver->agp_destroy_page( in agp_free_memory() 209 * @bridge: an agp_bridge_data struct allocated for the AGP host bridge. 213 * Every agp bridge device will allow you to allocate AGP_NORMAL_MEMORY which 218 struct agp_memory *agp_allocate_memory(struct agp_bridge_data *bridge, in agp_allocate_memory() argument 226 if (!bridge) in agp_allocate_memory() 229 cur_memory = atomic_read(&bridge->current_memory_agp); in agp_allocate_memory() [all …]
|
/openbmc/linux/drivers/gpu/drm/bridge/ |
H A D | panel.c | 19 struct drm_bridge bridge; member 26 drm_bridge_to_panel_bridge(struct drm_bridge *bridge) in drm_bridge_to_panel_bridge() argument 28 return container_of(bridge, struct panel_bridge, bridge); in drm_bridge_to_panel_bridge() 58 static int panel_bridge_attach(struct drm_bridge *bridge, in panel_bridge_attach() argument 61 struct panel_bridge *panel_bridge = drm_bridge_to_panel_bridge(bridge); in panel_bridge_attach() 68 if (!bridge->encoder) { in panel_bridge_attach() 76 ret = drm_connector_init(bridge->dev, connector, in panel_bridge_attach() 84 drm_panel_bridge_set_orientation(connector, bridge); in panel_bridge_attach() 87 bridge->encoder); in panel_bridge_attach() 89 if (bridge->dev->registered) { in panel_bridge_attach() [all …]
|
H A D | Kconfig | 6 Bridge registration and lookup framework. 13 DRM bridge wrapper of DRM panels 19 tristate "Chipone ICN6211 MIPI-DSI/RGB Converter bridge" 26 ICN6211 is MIPI-DSI/RGB Converter bridge from chipone. 44 tristate "ChromeOS EC ANX7688 bridge" 68 tristate "Freescale i.MX8MP LDB bridge" 77 tristate "ITE IT6505 DisplayPort bridge" 89 ITE IT6505 DisplayPort bridge chip driver. 92 tristate "Lontium LT8912B DSI/HDMI bridge" 100 Driver for Lontium LT8912B DSI to HDMI bridge [all …]
|
H A D | display-connector.c | 21 struct drm_bridge bridge; member 31 to_display_connector(struct drm_bridge *bridge) in to_display_connector() argument 33 return container_of(bridge, struct display_connector, bridge); in to_display_connector() 36 static int display_connector_attach(struct drm_bridge *bridge, in display_connector_attach() argument 43 display_connector_detect(struct drm_bridge *bridge) in display_connector_detect() argument 45 struct display_connector *conn = to_display_connector(bridge); in display_connector_detect() 54 if (conn->bridge.ddc && drm_probe_ddc(conn->bridge.ddc)) in display_connector_detect() 57 switch (conn->bridge.type) { in display_connector_detect() 84 static struct edid *display_connector_get_edid(struct drm_bridge *bridge, in display_connector_get_edid() argument 87 struct display_connector *conn = to_display_connector(bridge); in display_connector_get_edid() [all …]
|
H A D | ti-tpd12s015.c | 25 struct drm_bridge bridge; member 35 static inline struct tpd12s015_device *to_tpd12s015(struct drm_bridge *bridge) in to_tpd12s015() argument 37 return container_of(bridge, struct tpd12s015_device, bridge); in to_tpd12s015() 40 static int tpd12s015_attach(struct drm_bridge *bridge, in tpd12s015_attach() argument 43 struct tpd12s015_device *tpd = to_tpd12s015(bridge); in tpd12s015_attach() 49 ret = drm_bridge_attach(bridge->encoder, tpd->next_bridge, in tpd12s015_attach() 50 bridge, flags); in tpd12s015_attach() 62 static void tpd12s015_detach(struct drm_bridge *bridge) in tpd12s015_detach() argument 64 struct tpd12s015_device *tpd = to_tpd12s015(bridge); in tpd12s015_detach() 69 static enum drm_connector_status tpd12s015_detect(struct drm_bridge *bridge) in tpd12s015_detect() argument [all …]
|
/openbmc/linux/drivers/media/usb/gspca/m5602/ |
H A D | m5602_ov7660.c | 23 {BRIDGE, M5602_XB_MCU_CLK_DIV, 0x02}, 24 {BRIDGE, M5602_XB_MCU_CLK_CTRL, 0xb0}, 25 {BRIDGE, M5602_XB_SEN_CLK_DIV, 0x00}, 26 {BRIDGE, M5602_XB_SEN_CLK_CTRL, 0xb0}, 27 {BRIDGE, M5602_XB_ADC_CTRL, 0xc0}, 28 {BRIDGE, M5602_XB_SENSOR_TYPE, 0x0d}, 29 {BRIDGE, M5602_XB_SENSOR_CTRL, 0x00}, 30 {BRIDGE, M5602_XB_GPIO_DIR, 0x03}, 31 {BRIDGE, M5602_XB_GPIO_DIR, 0x03}, 32 {BRIDGE, M5602_XB_ADC_CTRL, 0xc0}, [all …]
|
H A D | m5602_s5k4aa.c | 20 {BRIDGE, M5602_XB_MCU_CLK_DIV, 0x02, 0x00}, 21 {BRIDGE, M5602_XB_MCU_CLK_CTRL, 0xb0, 0x00}, 22 {BRIDGE, M5602_XB_SEN_CLK_DIV, 0x00, 0x00}, 23 {BRIDGE, M5602_XB_SEN_CLK_CTRL, 0xb0, 0x00}, 24 {BRIDGE, M5602_XB_ADC_CTRL, 0xc0, 0x00}, 25 {BRIDGE, M5602_XB_SENSOR_TYPE, 0x0d, 0x00}, 26 {BRIDGE, M5602_XB_SENSOR_CTRL, 0x00, 0x00}, 28 {BRIDGE, M5602_XB_GPIO_DIR, 0x1d, 0x00}, 29 {BRIDGE, M5602_XB_GPIO_DAT, 0x08, 0x00}, 30 {BRIDGE, M5602_XB_SEN_CLK_DIV, 0xb0, 0x00}, [all …]
|
H A D | m5602_s5k83a.c | 41 {BRIDGE, M5602_XB_MCU_CLK_DIV, 0x02, 0x00}, 42 {BRIDGE, M5602_XB_MCU_CLK_CTRL, 0xb0, 0x00}, 43 {BRIDGE, M5602_XB_SEN_CLK_DIV, 0x00, 0x00}, 44 {BRIDGE, M5602_XB_SEN_CLK_CTRL, 0xb0, 0x00}, 45 {BRIDGE, M5602_XB_ADC_CTRL, 0xc0, 0x00}, 46 {BRIDGE, M5602_XB_SENSOR_TYPE, 0x0d, 0x00}, 47 {BRIDGE, M5602_XB_SENSOR_CTRL, 0x00, 0x00}, 49 {BRIDGE, M5602_XB_SIG_INI, 0x00, 0x00}, 50 {BRIDGE, M5602_XB_GPIO_DIR, 0x1d, 0x00}, 51 {BRIDGE, M5602_XB_GPIO_DAT, 0x08, 0x00}, [all …]
|
/openbmc/linux/include/drm/ |
H A D | drm_bridge.h | 49 * @DRM_BRIDGE_ATTACH_NO_CONNECTOR: When this flag is set the bridge 62 * This callback is invoked whenever our bridge is being attached to a 72 int (*attach)(struct drm_bridge *bridge, 78 * This callback is invoked whenever our bridge is being detached from a 83 void (*detach)(struct drm_bridge *bridge); 89 * bridge. This should be implemented if the bridge has some sort of 90 * restriction in the modes it can display. For example, a given bridge 116 enum drm_mode_status (*mode_valid)(struct drm_bridge *bridge, 126 * &drm_bridge. The parameter adjusted_mode is the input mode the bridge 130 * This is the only hook that allows a bridge to reject a modeset. If [all …]
|
/openbmc/linux/drivers/pci/ |
H A D | pci-bridge-emul.c | 8 * PCI bridge when the HW doesn't provide such a root port PCI 9 * bridge. 11 * It emulates a PCI bridge by providing a fake PCI configuration 21 #include "pci-bridge-emul.h" 71 * bridge that is not capable of a burst transfer of more than 77 * BIST register: implemented as read-only, as "A bridge that 152 * are RO, and bridge control (31:16) are a mix of RW, RO, 318 pci_bridge_emul_read_ssid(struct pci_bridge_emul *bridge, int reg, u32 *value) in pci_bridge_emul_read_ssid() argument 323 ((bridge->pcie_start > bridge->ssid_start) ? (bridge->pcie_start << 8) : 0); in pci_bridge_emul_read_ssid() 327 *value = bridge->subsystem_vendor_id | in pci_bridge_emul_read_ssid() [all …]
|
/openbmc/linux/tools/testing/selftests/net/forwarding/ |
H A D | bridge_mdb.sh | 67 ip link add name br0 type bridge vlan_filtering 1 vlan_default_pvid 0 \ 69 bridge vlan add vid 10 dev br0 self 70 bridge vlan add vid 20 dev br0 self 75 bridge vlan add vid 10 dev $swp1 76 bridge vlan add vid 20 dev $swp1 80 bridge vlan add vid 10 dev $swp2 81 bridge vlan add vid 20 dev $swp2 92 bridge vlan del vid 20 dev $swp2 93 bridge vlan del vid 10 dev $swp2 97 bridge vlan del vid 20 dev $swp1 [all …]
|
H A D | bridge_locked_port.sh | 45 ip link add dev br0 type bridge vlan_filtering 1 50 bridge link set dev $swp1 learning off 102 bridge link set dev $swp1 locked on 107 bridge fdb add `mac_get $h1` dev $swp1 master static 112 bridge link set dev $swp1 locked off 113 bridge fdb del `mac_get $h1` dev $swp1 master static 127 bridge vlan add vid 100 dev $swp1 128 bridge vlan add vid 100 dev $swp2 133 bridge link set dev $swp1 locked on 137 bridge fdb add `mac_get $h1` dev $swp1 vlan 100 master static [all …]
|
/openbmc/linux/tools/testing/selftests/drivers/net/dsa/ |
H A D | bridge_mdb.sh | 67 ip link add name br0 type bridge vlan_filtering 1 vlan_default_pvid 0 \ 69 bridge vlan add vid 10 dev br0 self 70 bridge vlan add vid 20 dev br0 self 75 bridge vlan add vid 10 dev $swp1 76 bridge vlan add vid 20 dev $swp1 80 bridge vlan add vid 10 dev $swp2 81 bridge vlan add vid 20 dev $swp2 92 bridge vlan del vid 20 dev $swp2 93 bridge vlan del vid 10 dev $swp2 97 bridge vlan del vid 20 dev $swp1 [all …]
|
H A D | bridge_locked_port.sh | 45 ip link add dev br0 type bridge vlan_filtering 1 50 bridge link set dev $swp1 learning off 102 bridge link set dev $swp1 locked on 107 bridge fdb add `mac_get $h1` dev $swp1 master static 112 bridge link set dev $swp1 locked off 113 bridge fdb del `mac_get $h1` dev $swp1 master static 127 bridge vlan add vid 100 dev $swp1 128 bridge vlan add vid 100 dev $swp2 133 bridge link set dev $swp1 locked on 137 bridge fdb add `mac_get $h1` dev $swp1 vlan 100 master static [all …]
|
/openbmc/linux/tools/testing/selftests/drivers/net/mlxsw/ |
H A D | vxlan.sh | 89 ip link add dev br0 type bridge mcast_snooping 0 106 ip link add dev br0 type bridge mcast_snooping 0 vlan_filtering 1 116 log_test "vxlan device with a vlan-aware bridge" 123 ip link add dev br0 type bridge 133 log_test "vxlan device with a multicast enabled bridge" 140 ip link add dev br0 type bridge mcast_snooping 0 160 ip link add dev br0 type bridge mcast_snooping 0 177 ip link add dev br0 type bridge mcast_snooping 0 194 ip link add dev br0 type bridge mcast_snooping 0 213 ip link add dev br0 type bridge mcast_snooping 0 [all …]
|
/openbmc/linux/drivers/staging/vme_user/ |
H A D | vme_fake.c | 3 * Fake VME bridge support. 5 * This drive provides a fake VME bridge chip, this enables debugging of the 96 struct fake_driver *bridge; in fake_VIRQ_tasklet() local 99 bridge = fake_bridge->driver_priv; in fake_VIRQ_tasklet() 101 vme_irq_handler(fake_bridge, bridge->int_level, bridge->int_statid); in fake_VIRQ_tasklet() 130 struct fake_driver *bridge; in fake_irq_generate() local 132 bridge = fake_bridge->driver_priv; in fake_irq_generate() 134 mutex_lock(&bridge->vme_int); in fake_irq_generate() 136 bridge->int_level = level; in fake_irq_generate() 138 bridge->int_statid = statid; in fake_irq_generate() [all …]
|
/openbmc/linux/drivers/net/ethernet/intel/ice/ |
H A D | ice_eswitch_br.c | 244 dev_err(dev, "Failed to create eswitch bridge %sgress forward rule, err: %d\n", in ice_eswitch_br_flow_create() 253 dev_err(dev, "Failed to create eswitch bridge %sgress guard rule, err: %d\n", in ice_eswitch_br_flow_create() 273 ice_eswitch_br_fdb_find(struct ice_esw_br *bridge, const unsigned char *mac, in ice_eswitch_br_fdb_find() argument 281 return rhashtable_lookup_fast(&bridge->fdb_ht, &data, in ice_eswitch_br_fdb_find() 305 ice_esw_br_port_vlan_lookup(struct ice_esw_br *bridge, u16 vsi_idx, u16 vid) in ice_esw_br_port_vlan_lookup() argument 307 struct ice_pf *pf = bridge->br_offloads->pf; in ice_esw_br_port_vlan_lookup() 312 port = xa_load(&bridge->ports, vsi_idx); in ice_esw_br_port_vlan_lookup() 314 dev_info(dev, "Bridge port lookup failed (vsi=%u)\n", vsi_idx); in ice_esw_br_port_vlan_lookup() 320 dev_info(dev, "Bridge port vlan metadata lookup failed (vsi=%u)\n", in ice_esw_br_port_vlan_lookup() 329 ice_eswitch_br_fdb_entry_delete(struct ice_esw_br *bridge, in ice_eswitch_br_fdb_entry_delete() argument [all …]
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
H A D | bridge.c | 10 #include "bridge.h" 84 esw_warn(dev, "Failed to create bridge FDB Table (err=%ld)\n", PTR_ERR(fdb)); in mlx5_esw_bridge_table_create() 124 "Failed to create VLAN(proto=%x) flow group for bridge ingress table (err=%ld)\n", in mlx5_esw_bridge_ingress_vlan_proto_fg_create() 183 "Failed to create bridge ingress table VLAN filter flow group (err=%ld)\n", in mlx5_esw_bridge_ingress_vlan_proto_filter_fg_create() 240 "Failed to create MAC flow group for bridge ingress table (err=%ld)\n", in mlx5_esw_bridge_ingress_mac_fg_create() 277 "Failed to create VLAN flow group for bridge egress table (err=%ld)\n", in mlx5_esw_bridge_egress_vlan_proto_fg_create() 327 "Failed to create bridge egress table MAC flow group (err=%ld)\n", in mlx5_esw_bridge_egress_mac_fg_create() 357 "Failed to create bridge egress table miss flow group (err=%ld)\n", in mlx5_esw_bridge_egress_miss_fg_create() 468 struct mlx5_esw_bridge *bridge) in mlx5_esw_bridge_egress_table_init() argument 537 bridge->egress_ft = egress_ft; in mlx5_esw_bridge_egress_table_init() [all …]
|
/openbmc/linux/Documentation/networking/device_drivers/ethernet/ti/ |
H A D | cpsw_switchdev.rst | 34 to the same bridge, but without enabling "switch" mode, or to different 63 which, by default, equal CPSW Port numbers. As result, bridge has to be 66 ip link add name br0 type bridge 67 ip link set dev br0 type bridge vlan_filtering 0 68 echo 0 > /sys/class/net/br0/bridge/default_pvid 74 ip link add name br0 type bridge 75 ip link set dev br0 type bridge vlan_filtering 0 76 echo 100 > /sys/class/net/br0/bridge/default_pvid 77 ip link set dev br0 type bridge vlan_filtering 1 91 Port's netdev devices have to be in UP before joining to the bridge to avoid [all …]
|
/openbmc/linux/drivers/pci/hotplug/ |
H A D | acpiphp_glue.c | 22 * when the bridge is scanned and it loses a refcount when the bridge 24 * - When a P2P bridge is present, we elevate the refcount on the subordinate 105 WARN_ON(context->bridge); in acpiphp_put_context() 110 static inline void get_bridge(struct acpiphp_bridge *bridge) in get_bridge() argument 112 kref_get(&bridge->ref); in get_bridge() 115 static inline void put_bridge(struct acpiphp_bridge *bridge) in put_bridge() argument 117 kref_put(&bridge->ref, free_bridge); in put_bridge() 152 struct acpiphp_bridge *bridge; in free_bridge() local 158 bridge = container_of(kref, struct acpiphp_bridge, ref); in free_bridge() 160 list_for_each_entry_safe(slot, next, &bridge->slots, node) { in free_bridge() [all …]
|