Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  board-d2net.c   Sprache: C

 
// SPDX-License-Identifier: GPL-2.0-only
/*
 * arch/arm/mach-orion5x/board-d2net.c
 *
 * LaCie d2Network and Big Disk Network NAS setup
 *
 * Copyright (C) 2009 Simon Guinot <sguinot@lacie.com>
 */


#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/platform_device.h>
#include <linux/pci.h>
#include <linux/irq.h>
#include <linux/leds.h>
#include <linux/gpio.h>
#include <linux/gpio/machine.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/pci.h>
#include <plat/orion-gpio.h>
#include "common.h"
#include "orion5x.h"

/*****************************************************************************
 * LaCie d2 Network Info
 ****************************************************************************/


/*****************************************************************************
 * GPIO LED's
 ****************************************************************************/


/*
 * The blue front LED is wired to the CPLD and can blink in relation with the
 * SATA activity.
 *
 * The following array detail the different LED registers and the combination
 * of their possible values:
 *
 * led_off   | blink_ctrl | SATA active | LED state
 *           |            |             |
 *    1      |     x      |      x      |  off
 *    0      |     0      |      0      |  off
 *    0      |     1      |      0      |  blink (rate 300ms)
 *    0      |     x      |      1      |  on
 *
 * Notes: The blue and the red front LED's can't be on at the same time.
 *        Red LED have priority.
 */


#define D2NET_GPIO_RED_LED  6
#define D2NET_GPIO_BLUE_LED_BLINK_CTRL 16
#define D2NET_GPIO_BLUE_LED_OFF  23

static struct gpio_led d2net_leds[] = {
 {
  .name = "d2net:blue:sata",
  .default_trigger = "default-on",
 },
 {
  .name = "d2net:red:fail",
 },
};

static struct gpio_led_platform_data d2net_led_data = {
 .num_leds = ARRAY_SIZE(d2net_leds),
 .leds = d2net_leds,
};

static struct platform_device d2net_gpio_leds = {
 .name           = "leds-gpio",
 .id             = -1,
 .dev            = {
  .platform_data  = &d2net_led_data,
 },
};

static struct gpiod_lookup_table d2net_leds_gpio_table = {
 .dev_id = "leds-gpio",
 .table = {
  GPIO_LOOKUP_IDX("orion_gpio0", D2NET_GPIO_BLUE_LED_OFF, NULL,
    0, GPIO_ACTIVE_LOW),
  GPIO_LOOKUP_IDX("orion_gpio0", D2NET_GPIO_RED_LED, NULL,
    1, GPIO_ACTIVE_HIGH),
  { },
 },
};

static void __init d2net_gpio_leds_init(void)
{
 int err;

 /* Configure register blink_ctrl to allow SATA activity LED blinking. */
 err = gpio_request(D2NET_GPIO_BLUE_LED_BLINK_CTRL, "blue LED blink");
 if (err == 0) {
  err = gpio_direction_output(D2NET_GPIO_BLUE_LED_BLINK_CTRL, 1);
  if (err)
   gpio_free(D2NET_GPIO_BLUE_LED_BLINK_CTRL);
 }
 if (err)
  pr_err("d2net: failed to configure blue LED blink GPIO\n");

 gpiod_add_lookup_table(&d2net_leds_gpio_table);
 platform_device_register(&d2net_gpio_leds);
}

/*****************************************************************************
 * General Setup
 ****************************************************************************/


void __init d2net_init(void)
{
 d2net_gpio_leds_init();

 pr_notice("d2net: Flash write are not yet supported.\n");
}

Messung V0.5
C=94 H=92 G=92

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






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge