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

Quelle  driver_chipcommon_nflash.c   Sprache: C

 
/*
 * Broadcom specific AMBA
 * ChipCommon NAND flash interface
 *
 * Licensed under the GNU/GPL. See COPYING for details.
 */


#include "bcma_private.h"

#include <linux/bitops.h>
#include <linux/platform_device.h>
#include <linux/platform_data/brcmnand.h>
#include <linux/bcma/bcma.h>

/* Alternate NAND controller driver name in order to allow both bcm47xxnflash
 * and bcma_brcmnand to be built into the same kernel image.
 */

static const char *bcma_nflash_alt_name = "bcma_brcmnand";

struct platform_device bcma_nflash_dev = {
 .name  = "bcma_nflash",
 .num_resources = 0,
};

static const char *probes[] = { "bcm47xxpart", NULL };

/* Initialize NAND flash access */
int bcma_nflash_init(struct bcma_drv_cc *cc)
{
 struct bcma_bus *bus = cc->core->bus;
 u32 reg;

 if (bus->chipinfo.id != BCMA_CHIP_ID_BCM4706 &&
     cc->core->id.rev != 38) {
  bcma_err(bus, "NAND flash on unsupported board!\n");
  return -ENOTSUPP;
 }

 if (!(cc->capabilities & BCMA_CC_CAP_NFLASH)) {
  bcma_err(bus, "NAND flash not present according to ChipCommon\n");
  return -ENODEV;
 }

 cc->nflash.present = true;
 if (cc->core->id.rev == 38 &&
     (cc->status & BCMA_CC_CHIPST_5357_NAND_BOOT)) {
  cc->nflash.boot = true;
  /* Determine the chip select that is being used */
  reg = bcma_cc_read32(cc, BCMA_CC_NAND_CS_NAND_SELECT) & 0xff;
  cc->nflash.brcmnand_info.chip_select = ffs(reg) - 1;
  cc->nflash.brcmnand_info.part_probe_types = probes;
  cc->nflash.brcmnand_info.ecc_stepsize = 512;
  cc->nflash.brcmnand_info.ecc_strength = 1;
  bcma_nflash_dev.name = bcma_nflash_alt_name;
 }

 /* Prepare platform device, but don't register it yet. It's too early,
 * malloc (required by device_private_init) is not available yet. */

 bcma_nflash_dev.dev.platform_data = &cc->nflash;

 return 0;
}

Messung V0.5
C=97 H=99 G=97

¤ Dauer der Verarbeitung: 0.2 Sekunden  ¤

*© 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.