if (ntuner && ndemod) {
ret = media_create_pad_links(mdev,
MEDIA_ENT_F_TUNER,
- tuner, TUNER_PAD_IF_OUTPUT,
+ tuner, TUNER_PAD_OUTPUT,
MEDIA_ENT_F_DTV_DEMOD,
demod, 0, MEDIA_LNK_FL_ENABLED,
false);
return -EINVAL;
if (tuner) {
- ret = media_create_pad_link(tuner, TUNER_PAD_IF_OUTPUT,
+ ret = media_create_pad_link(tuner, TUNER_PAD_OUTPUT,
decoder, 0,
MEDIA_LNK_FL_ENABLED);
if (ret)
return 0;
if (tuner) {
- ret = media_create_pad_link(tuner, TUNER_PAD_IF_OUTPUT, decoder, 0,
+ ret = media_create_pad_link(tuner, TUNER_PAD_OUTPUT, decoder, 0,
MEDIA_LNK_FL_ENABLED);
if (ret < 0)
return ret;
state->tuner.function = MEDIA_ENT_F_TUNER;
state->tuner.name = "mxl111sf tuner";
state->tuner_pads[TUNER_PAD_RF_INPUT].flags = MEDIA_PAD_FL_SINK;
- state->tuner_pads[TUNER_PAD_IF_OUTPUT].flags = MEDIA_PAD_FL_SOURCE;
+ state->tuner_pads[TUNER_PAD_OUTPUT].flags = MEDIA_PAD_FL_SOURCE;
ret = media_entity_pads_init(&state->tuner,
TUNER_NUM_PADS, state->tuner_pads);
register_client:
#if defined(CONFIG_MEDIA_CONTROLLER)
t->pad[TUNER_PAD_RF_INPUT].flags = MEDIA_PAD_FL_SINK;
- t->pad[TUNER_PAD_IF_OUTPUT].flags = MEDIA_PAD_FL_SOURCE;
+ t->pad[TUNER_PAD_OUTPUT].flags = MEDIA_PAD_FL_SOURCE;
t->sd.entity.function = MEDIA_ENT_F_TUNER;
t->sd.entity.name = t->name;
#include <linux/videodev2.h>
-/* Tuner PADs */
-/* FIXME: is this the right place for it? */
+/**
+ * enum tuner_pad_index - tuner pad index
+ *
+ * @TUNER_PAD_RF_INPUT: Radiofrequency (RF) sink pad, usually linked to a
+ * RF connector entity.
+ * @TUNER_PAD_OUTPUT: Tuner output pad. This is actually more complex than
+ * a single pad output, as, in addition to luminance and
+ * chrominance IF a tuner may have internally an
+ * audio decoder (like xc3028) or it may produce an audio
+ * IF that will be used by an audio decoder like msp34xx.
+ * It may also have an IF-PLL demodulator on it, like
+ * tuners with tda9887. Yet, currently, we don't need to
+ * represent all the dirty details, as this is transparent
+ * for the V4L2 API usage. So, let's represent all kinds
+ * of different outputs as a single source pad.
+ * @TUNER_NUM_PADS: Number of pads of the tuner.
+ */
enum tuner_pad_index {
TUNER_PAD_RF_INPUT,
- TUNER_PAD_IF_OUTPUT,
+ TUNER_PAD_OUTPUT,
TUNER_NUM_PADS
};