__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
/*
* dvb_ca.h: generic DVB functions for EN50221 CA interfaces
*
* Copyright (C) 2004 Andrew de Quincey
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
* as published by the Free Software Foundation; either version 2.1
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#ifndef _DVB_CA_EN50221_H_
#define _DVB_CA_EN50221_H_
#include <linux/list.h>
#include <linux/dvb/ca.h>
#include <media/dvbdev.h>
#define DVB_CA_EN50221_POLL_CAM_PRESENT 1
#define DVB_CA_EN50221_POLL_CAM_CHANGED 2
#define DVB_CA_EN50221_POLL_CAM_READY 4
#define DVB_CA_EN50221_FLAG_IRQ_CAMCHANGE 1
#define DVB_CA_EN50221_FLAG_IRQ_FR 2
#define DVB_CA_EN50221_FLAG_IRQ_DA 4
#define DVB_CA_EN50221_CAMCHANGE_REMOVED 0
#define DVB_CA_EN50221_CAMCHANGE_INSERTED 1
/**
* struct dvb_ca_en50221- Structure describing a CA interface
*
* @owner: the module owning this structure
* @read_attribute_mem: function for reading attribute memory on the CAM
* @write_attribute_mem: function for writing attribute memory on the CAM
* @read_cam_control: function for reading the control interface on the CAM
* @write_cam_control: function for reading the control interface on the CAM
* @read_data: function for reading data (block mode)
* @write_data: function for writing data (block mode)
* @slot_reset: function to reset the CAM slot
* @slot_shutdown: function to shutdown a CAM slot
* @slot_ts_enable: function to enable the Transport Stream on a CAM slot
* @poll_slot_status: function to poll slot status. Only necessary if
* DVB_CA_FLAG_EN50221_IRQ_CAMCHANGE is not set.
* @data: private data, used by caller.
* @private: Opaque data used by the dvb_ca core. Do not modify!
*
* NOTE: the read_*, write_* and poll_slot_status functions will be
* called for different slots concurrently and need to use locks where
* and if appropriate. There will be no concurrent access to one slot.
*/
struct dvb_ca_en50221 {
struct module *owner;
int (*read_attribute_mem)(struct dvb_ca_en50221 *ca,
int slot, int address);
int (*write_attribute_mem)(struct dvb_ca_en50221 *ca,
int slot, int address, u8 value);
int (*read_cam_control)(struct dvb_ca_en50221 *ca,
int slot, u8 address);
int (*write_cam_control)(struct dvb_ca_en50221 *ca,
int slot, u8 address, u8 value);
int (*read_data)(struct dvb_ca_en50221 *ca,
int slot, u8 *ebuf, int ecount);
int (*write_data)(struct dvb_ca_en50221 *ca,
int slot, u8 *ebuf, int ecount);
int (*slot_reset)(struct dvb_ca_en50221 *ca, int slot);
int (*slot_shutdown)(struct dvb_ca_en50221 *ca, int slot);
int (*slot_ts_enable)(struct dvb_ca_en50221 *ca, int slot);
int (*poll_slot_status)(struct dvb_ca_en50221 *ca, int slot, int open);
void *data;
void *private;
};
/*
* Functions for reporting IRQ events
*/
/**
* dvb_ca_en50221_camchange_irq - A CAMCHANGE IRQ has occurred.
*
* @pubca: CA instance.
* @slot: Slot concerned.
* @change_type: One of the DVB_CA_CAMCHANGE_* values
*/
void dvb_ca_en50221_camchange_irq(struct dvb_ca_en50221 *pubca, int slot,
int change_type);
/**
* dvb_ca_en50221_camready_irq - A CAMREADY IRQ has occurred.
*
* @pubca: CA instance.
* @slot: Slot concerned.
*/
void dvb_ca_en50221_camready_irq(struct dvb_ca_en50221 *pubca, int slot);
/**
* dvb_ca_en50221_frda_irq - An FR or a DA IRQ has occurred.
*
* @ca: CA instance.
* @slot: Slot concerned.
*/
void dvb_ca_en50221_frda_irq(struct dvb_ca_en50221 *ca, int slot);
/*
* Initialisation/shutdown functions
*/
/**
* dvb_ca_en50221_init - Initialise a new DVB CA device.
*
* @dvb_adapter: DVB adapter to attach the new CA device to.
* @ca: The dvb_ca instance.
* @flags: Flags describing the CA device (DVB_CA_EN50221_FLAG_*).
* @slot_count: Number of slots supported.
*
* @return 0 on success, nonzero on failure
*/
int dvb_ca_en50221_init(struct dvb_adapter *dvb_adapter,
struct dvb_ca_en50221 *ca, int flags,
int slot_count);
/**
* dvb_ca_en50221_release - Release a DVB CA device.
*
* @ca: The associated dvb_ca instance.
*/
void dvb_ca_en50221_release(struct dvb_ca_en50221 *ca);
#endif
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| davinci | Folder | 0755 |
|
|
| drv-intf | Folder | 0755 |
|
|
| i2c | Folder | 0755 |
|
|
| tpg | Folder | 0755 |
|
|
| cec-notifier.h | File | 5.03 KB | 0644 |
|
| cec-pin.h | File | 2.79 KB | 0644 |
|
| cec.h | File | 17.88 KB | 0644 |
|
| demux.h | File | 22.69 KB | 0644 |
|
| dmxdev.h | File | 5.87 KB | 0644 |
|
| dvb-usb-ids.h | File | 19.46 KB | 0644 |
|
| dvb_ca_en50221.h | File | 4.35 KB | 0644 |
|
| dvb_demux.h | File | 10.77 KB | 0644 |
|
| dvb_frontend.h | File | 30.42 KB | 0644 |
|
| dvb_net.h | File | 2.43 KB | 0644 |
|
| dvb_ringbuffer.h | File | 8.32 KB | 0644 |
|
| dvb_vb2.h | File | 7.65 KB | 0644 |
|
| dvbdev.h | File | 14.77 KB | 0644 |
|
| frame_vector.h | File | 1.42 KB | 0644 |
|
| imx.h | File | 190 B | 0644 |
|
| ipu-bridge.h | File | 4.3 KB | 0644 |
|
| ipu6-pci-table.h | File | 876 B | 0644 |
|
| jpeg.h | File | 500 B | 0644 |
|
| media-dev-allocator.h | File | 2.21 KB | 0644 |
|
| media-device.h | File | 17.65 KB | 0644 |
|
| media-devnode.h | File | 5.29 KB | 0644 |
|
| media-entity.h | File | 47.13 KB | 0644 |
|
| media-request.h | File | 11.95 KB | 0644 |
|
| mipi-csi2.h | File | 1.46 KB | 0644 |
|
| rc-core.h | File | 12.08 KB | 0644 |
|
| rc-map.h | File | 14.53 KB | 0644 |
|
| rcar-fcp.h | File | 1.1 KB | 0644 |
|
| tuner-types.h | File | 7.54 KB | 0644 |
|
| tuner.h | File | 8.46 KB | 0644 |
|
| tveeprom.h | File | 3.3 KB | 0644 |
|
| v4l2-async.h | File | 11.78 KB | 0644 |
|
| v4l2-cci.h | File | 4.75 KB | 0644 |
|
| v4l2-common.h | File | 19.96 KB | 0644 |
|
| v4l2-ctrls.h | File | 54.48 KB | 0644 |
|
| v4l2-dev.h | File | 20.42 KB | 0644 |
|
| v4l2-device.h | File | 18.61 KB | 0644 |
|
| v4l2-dv-timings.h | File | 10.64 KB | 0644 |
|
| v4l2-event.h | File | 6.01 KB | 0644 |
|
| v4l2-fh.h | File | 4.22 KB | 0644 |
|
| v4l2-flash-led-class.h | File | 5.75 KB | 0644 |
|
| v4l2-fwnode.h | File | 15.57 KB | 0644 |
|
| v4l2-h264.h | File | 3.1 KB | 0644 |
|
| v4l2-image-sizes.h | File | 827 B | 0644 |
|
| v4l2-ioctl.h | File | 33.52 KB | 0644 |
|
| v4l2-jpeg.h | File | 6.43 KB | 0644 |
|
| v4l2-mc.h | File | 7.78 KB | 0644 |
|
| v4l2-mediabus.h | File | 9.65 KB | 0644 |
|
| v4l2-mem2mem.h | File | 29.48 KB | 0644 |
|
| v4l2-rect.h | File | 5.71 KB | 0644 |
|
| v4l2-subdev.h | File | 74.55 KB | 0644 |
|
| v4l2-vp9.h | File | 8.32 KB | 0644 |
|
| videobuf2-core.h | File | 52.05 KB | 0644 |
|
| videobuf2-dma-contig.h | File | 883 B | 0644 |
|
| videobuf2-dma-sg.h | File | 698 B | 0644 |
|
| videobuf2-dvb.h | File | 1.81 KB | 0644 |
|
| videobuf2-memops.h | File | 1.09 KB | 0644 |
|
| videobuf2-v4l2.h | File | 14.48 KB | 0644 |
|
| videobuf2-vmalloc.h | File | 509 B | 0644 |
|
| vsp1.h | File | 3.62 KB | 0644 |
|