linux/drivers/net/wan/framer/pef2256/pef2256.c

// SPDX-License-Identifier: GPL-2.0
/*
 * PEF2256 also known as FALC56 driver
 *
 * Copyright 2023 CS GROUP France
 *
 * Author: Herve Codina <[email protected]>
 */

#include <linux/framer/pef2256.h>
#include <linux/clk.h>
#include <linux/framer/framer-provider.h>
#include <linux/gpio/consumer.h>
#include <linux/interrupt.h>
#include <linux/io.h>
#include <linux/mfd/core.h>
#include <linux/module.h>
#include <linux/notifier.h>
#include <linux/of.h>
#include <linux/of_platform.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>
#include <linux/slab.h>
#include "pef2256-regs.h"

enum pef2256_frame_type {};

struct pef2256 {};

static u8 pef2256_read8(struct pef2256 *pef2256, int offset)
{}

static void pef2256_write8(struct pef2256 *pef2256, int offset, u8 val)
{}

static void pef2256_clrbits8(struct pef2256 *pef2256, int offset, u8 clr)
{}

static void pef2256_setbits8(struct pef2256 *pef2256, int offset, u8 set)
{}

static void pef2256_clrsetbits8(struct pef2256 *pef2256, int offset, u8 clr, u8 set)
{}

enum pef2256_version pef2256_get_version(struct pef2256 *pef2256)
{}
EXPORT_SYMBOL_GPL();

enum pef2256_gcm_config_item {};

struct pef2256_gcm_config {};

static const struct pef2256_gcm_config pef2256_gcm_configs[] =;

static int pef2256_setup_gcm(struct pef2256 *pef2256)
{}

static int pef2256_setup_e1_line(struct pef2256 *pef2256)
{}

static void pef2256_setup_e1_los(struct pef2256 *pef2256)
{}

static int pef2256_setup_e1_system(struct pef2256 *pef2256)
{}

static void pef2256_setup_e1_signaling(struct pef2256 *pef2256)
{}

static void pef2256_setup_e1_errors(struct pef2256 *pef2256)
{}

static int pef2256_setup_e1(struct pef2256 *pef2256)
{}

static void pef2256_isr_default_handler(struct pef2256 *pef2256, u8 nbr, u8 isr)
{}

static bool pef2256_is_carrier_on(struct pef2256 *pef2256)
{}

static void pef2256_isr2_handler(struct pef2256 *pef2256, u8 nbr, u8 isr)
{}

static irqreturn_t pef2256_irq_handler(int irq, void *priv)
{}

static int pef2256_check_rates(struct pef2256 *pef2256, unsigned long sysclk_rate,
			       unsigned long data_rate)
{}

static int pef2556_of_parse(struct pef2256 *pef2256, struct device_node *np)
{}

static const struct regmap_config pef2256_regmap_config =;

static const struct mfd_cell pef2256_devs[] =;

static int pef2256_add_audio_devices(struct pef2256 *pef2256)
{}

static int pef2256_framer_get_status(struct framer *framer, struct framer_status *status)
{}

static int pef2256_framer_set_config(struct framer *framer, const struct framer_config *config)
{}

static int pef2256_framer_get_config(struct framer *framer, struct framer_config *config)
{}

static const struct framer_ops pef2256_framer_ops =;

static int pef2256_probe(struct platform_device *pdev)
{}

static void pef2256_remove(struct platform_device *pdev)
{}

static const struct of_device_id pef2256_id_table[] =;
MODULE_DEVICE_TABLE(of, pef2256_id_table);

static struct platform_driver pef2256_driver =;
module_platform_driver();

struct regmap *pef2256_get_regmap(struct pef2256 *pef2256)
{}
EXPORT_SYMBOL_GPL();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();