Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/net/wireless/broadcom/b43/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 2 kB image not shown  

Quelle  bus.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef B43_BUS_H_
#define B43_BUS_H_

enum b43_bus_type {
#ifdef CONFIG_B43_BCMA
 B43_BUS_BCMA,
#endif
#ifdef CONFIG_B43_SSB
 B43_BUS_SSB,
#endif
};

struct b43_bus_dev {
 enum b43_bus_type bus_type;
 union {
  struct bcma_device *bdev;
  struct ssb_device *sdev;
 };

 int (*bus_may_powerdown)(struct b43_bus_dev *dev);
 int (*bus_powerup)(struct b43_bus_dev *dev, bool dynamic_pctl);
 int (*device_is_enabled)(struct b43_bus_dev *dev);
 void (*device_enable)(struct b43_bus_dev *dev,
         u32 core_specific_flags);
 void (*device_disable)(struct b43_bus_dev *dev,
          u32 core_specific_flags);

 u16 (*read16)(struct b43_bus_dev *dev, u16 offset);
 u32 (*read32)(struct b43_bus_dev *dev, u16 offset);
 void (*write16)(struct b43_bus_dev *dev, u16 offset, u16 value);
 void (*write32)(struct b43_bus_dev *dev, u16 offset, u32 value);
 void (*block_read)(struct b43_bus_dev *dev, void *buffer,
      size_t count, u16 offset, u8 reg_width);
 void (*block_write)(struct b43_bus_dev *dev, const void *buffer,
       size_t count, u16 offset, u8 reg_width);
 bool flush_writes;

 struct device *dev;
 struct device *dma_dev;
 unsigned int irq;

 u16 board_vendor;
 u16 board_type;
 u16 board_rev;

 u16 chip_id;
 u8 chip_rev;
 u8 chip_pkg;

 struct ssb_sprom *bus_sprom;

 u16 core_id;
 u8 core_rev;
};

static inline bool b43_bus_host_is_pcmcia(struct b43_bus_dev *dev)
{
#ifdef CONFIG_B43_SSB
 return (dev->bus_type == B43_BUS_SSB &&
  dev->sdev->bus->bustype == SSB_BUSTYPE_PCMCIA);
#else
 return false;
#endif
};

static inline bool b43_bus_host_is_pci(struct b43_bus_dev *dev)
{
#ifdef CONFIG_B43_BCMA
 if (dev->bus_type == B43_BUS_BCMA)
  return (dev->bdev->bus->hosttype == BCMA_HOSTTYPE_PCI);
#endif
#ifdef CONFIG_B43_SSB
 if (dev->bus_type == B43_BUS_SSB)
  return (dev->sdev->bus->bustype == SSB_BUSTYPE_PCI);
#endif
 return false;
}

static inline bool b43_bus_host_is_sdio(struct b43_bus_dev *dev)
{
#ifdef CONFIG_B43_SSB
 return (dev->bus_type == B43_BUS_SSB &&
  dev->sdev->bus->bustype == SSB_BUSTYPE_SDIO);
#else
 return false;
#endif
}

struct b43_bus_dev *b43_bus_dev_bcma_init(struct bcma_device *core);
struct b43_bus_dev *b43_bus_dev_ssb_init(struct ssb_device *sdev);

void *b43_bus_get_wldev(struct b43_bus_dev *dev);
void b43_bus_set_wldev(struct b43_bus_dev *dev, void *data);

#endif /* B43_BUS_H_ */

Messung V0.5
C=88 H=92 G=89

¤ Dauer der Verarbeitung: 0.13 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.