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

Quelle  cthardware.c   Sprache: C

 
// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (C) 2008, Creative Technology Ltd. All Rights Reserved.
 *
 * @File cthardware.c
 *
 * @Brief
 * This file contains the implementation of hardware access methord.
 *
 * @Author Liu Chun
 * @Date  Jun 26 2008
 */


#include "cthardware.h"
#include "cthw20k1.h"
#include "cthw20k2.h"
#include <linux/bug.h>

int create_hw_obj(struct pci_dev *pci, enum CHIPTYP chip_type,
    enum CTCARDS model, struct hw **rhw)
{
 int err;

 switch (chip_type) {
 case ATC20K1:
  err = create_20k1_hw_obj(rhw);
  break;
 case ATC20K2:
  err = create_20k2_hw_obj(rhw);
  break;
 default:
  err = -ENODEV;
  break;
 }
 if (err)
  return err;

 (*rhw)->pci = pci;
 (*rhw)->chip_type = chip_type;
 (*rhw)->model = model;

 return 0;
}

int destroy_hw_obj(struct hw *hw)
{
 int err;

 switch (hw->pci->device) {
 case 0x0005: /* 20k1 device */
  err = destroy_20k1_hw_obj(hw);
  break;
 case 0x000B: /* 20k2 device */
  err = destroy_20k2_hw_obj(hw);
  break;
 default:
  err = -ENODEV;
  break;
 }

 return err;
}

unsigned int get_field(unsigned int data, unsigned int field)
{
 int i;

 if (WARN_ON(!field))
  return 0;
 /* @field should always be greater than 0 */
 for (i = 0; !(field & (1 << i)); )
  i++;

 return (data & field) >> i;
}

void set_field(unsigned int *data, unsigned int field, unsigned int value)
{
 int i;

 if (WARN_ON(!field))
  return;
 /* @field should always be greater than 0 */
 for (i = 0; !(field & (1 << i)); )
  i++;

 *data = (*data & (~field)) | ((value << i) & field);
}


Messung V0.5
C=95 H=96 G=95

¤ Dauer der Verarbeitung: 0.14 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.