video/hdmi: Use hdmi_vendor_infoframe for the HDMI specific infoframe
We just got rid of the version of hdmi_vendor_infoframe that had a byte array for anyone to poke at. It's now time to shuffle around the naming of hdmi_hdmi_infoframe to make hdmi_vendor_infoframe become the HDMI vendor specific structure. Cc: Thierry Reding <thierry.reding@gmail.com> Signed-off-by: Damien Lespiau <damien.lespiau@intel.com> Reviewed-by: Thierry Reding <treding@nvidia.com> Signed-off-by: Dave Airlie <airlied@gmail.com>
This commit is contained in:
committed by
Dave Airlie
parent
af3e95b407
commit
ae84b900b0
@@ -539,7 +539,7 @@ static void tegra_hdmi_setup_audio_infoframe(struct tegra_hdmi *hdmi)
|
|||||||
|
|
||||||
static void tegra_hdmi_setup_stereo_infoframe(struct tegra_hdmi *hdmi)
|
static void tegra_hdmi_setup_stereo_infoframe(struct tegra_hdmi *hdmi)
|
||||||
{
|
{
|
||||||
struct hdmi_hdmi_infoframe frame;
|
struct hdmi_vendor_infoframe frame;
|
||||||
unsigned long value;
|
unsigned long value;
|
||||||
u8 buffer[10];
|
u8 buffer[10];
|
||||||
ssize_t err;
|
ssize_t err;
|
||||||
@@ -551,10 +551,10 @@ static void tegra_hdmi_setup_stereo_infoframe(struct tegra_hdmi *hdmi)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
hdmi_hdmi_infoframe_init(&frame);
|
hdmi_vendor_infoframe_init(&frame);
|
||||||
frame.s3d_struct = HDMI_3D_STRUCTURE_FRAME_PACKING;
|
frame.s3d_struct = HDMI_3D_STRUCTURE_FRAME_PACKING;
|
||||||
|
|
||||||
err = hdmi_hdmi_infoframe_pack(&frame, buffer, sizeof(buffer));
|
err = hdmi_vendor_infoframe_pack(&frame, buffer, sizeof(buffer));
|
||||||
if (err < 0) {
|
if (err < 0) {
|
||||||
dev_err(hdmi->dev, "failed to pack vendor infoframe: %zd\n",
|
dev_err(hdmi->dev, "failed to pack vendor infoframe: %zd\n",
|
||||||
err);
|
err);
|
||||||
|
@@ -288,12 +288,12 @@ ssize_t hdmi_audio_infoframe_pack(struct hdmi_audio_infoframe *frame,
|
|||||||
EXPORT_SYMBOL(hdmi_audio_infoframe_pack);
|
EXPORT_SYMBOL(hdmi_audio_infoframe_pack);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* hdmi_hdmi_infoframe_init() - initialize an HDMI vendor infoframe
|
* hdmi_vendor_infoframe_init() - initialize an HDMI vendor infoframe
|
||||||
* @frame: HDMI vendor infoframe
|
* @frame: HDMI vendor infoframe
|
||||||
*
|
*
|
||||||
* Returns 0 on success or a negative error code on failure.
|
* Returns 0 on success or a negative error code on failure.
|
||||||
*/
|
*/
|
||||||
int hdmi_hdmi_infoframe_init(struct hdmi_hdmi_infoframe *frame)
|
int hdmi_vendor_infoframe_init(struct hdmi_vendor_infoframe *frame)
|
||||||
{
|
{
|
||||||
memset(frame, 0, sizeof(*frame));
|
memset(frame, 0, sizeof(*frame));
|
||||||
|
|
||||||
@@ -310,10 +310,10 @@ int hdmi_hdmi_infoframe_init(struct hdmi_hdmi_infoframe *frame)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(hdmi_hdmi_infoframe_init);
|
EXPORT_SYMBOL(hdmi_vendor_infoframe_init);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* hdmi_hdmi_infoframe_pack() - write a HDMI vendor infoframe to binary buffer
|
* hdmi_vendor_infoframe_pack() - write a HDMI vendor infoframe to binary buffer
|
||||||
* @frame: HDMI infoframe
|
* @frame: HDMI infoframe
|
||||||
* @buffer: destination buffer
|
* @buffer: destination buffer
|
||||||
* @size: size of buffer
|
* @size: size of buffer
|
||||||
@@ -326,7 +326,7 @@ EXPORT_SYMBOL(hdmi_hdmi_infoframe_init);
|
|||||||
* Returns the number of bytes packed into the binary buffer or a negative
|
* Returns the number of bytes packed into the binary buffer or a negative
|
||||||
* error code on failure.
|
* error code on failure.
|
||||||
*/
|
*/
|
||||||
ssize_t hdmi_hdmi_infoframe_pack(struct hdmi_hdmi_infoframe *frame,
|
ssize_t hdmi_vendor_infoframe_pack(struct hdmi_vendor_infoframe *frame,
|
||||||
void *buffer, size_t size)
|
void *buffer, size_t size)
|
||||||
{
|
{
|
||||||
u8 *ptr = buffer;
|
u8 *ptr = buffer;
|
||||||
@@ -377,19 +377,20 @@ ssize_t hdmi_hdmi_infoframe_pack(struct hdmi_hdmi_infoframe *frame,
|
|||||||
|
|
||||||
return length;
|
return length;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(hdmi_hdmi_infoframe_pack);
|
EXPORT_SYMBOL(hdmi_vendor_infoframe_pack);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* hdmi_vendor_infoframe_pack() - write a vendor infoframe to binary buffer
|
* hdmi_vendor_any_infoframe_pack() - write a vendor infoframe to binary buffer
|
||||||
*/
|
*/
|
||||||
static ssize_t hdmi_vendor_infoframe_pack(union hdmi_vendor_infoframe *frame,
|
static ssize_t
|
||||||
void *buffer, size_t size)
|
hdmi_vendor_any_infoframe_pack(union hdmi_vendor_any_infoframe *frame,
|
||||||
|
void *buffer, size_t size)
|
||||||
{
|
{
|
||||||
/* we only know about HDMI vendor infoframes */
|
/* we only know about HDMI vendor infoframes */
|
||||||
if (frame->any.oui != HDMI_IDENTIFIER)
|
if (frame->any.oui != HDMI_IDENTIFIER)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
return hdmi_hdmi_infoframe_pack(&frame->hdmi, buffer, size);
|
return hdmi_vendor_infoframe_pack(&frame->hdmi, buffer, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -422,8 +423,8 @@ hdmi_infoframe_pack(union hdmi_infoframe *frame, void *buffer, size_t size)
|
|||||||
length = hdmi_audio_infoframe_pack(&frame->audio, buffer, size);
|
length = hdmi_audio_infoframe_pack(&frame->audio, buffer, size);
|
||||||
break;
|
break;
|
||||||
case HDMI_INFOFRAME_TYPE_VENDOR:
|
case HDMI_INFOFRAME_TYPE_VENDOR:
|
||||||
length = hdmi_vendor_infoframe_pack(&frame->vendor,
|
length = hdmi_vendor_any_infoframe_pack(&frame->vendor,
|
||||||
buffer, size);
|
buffer, size);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
WARN(1, "Bad infoframe type %d\n", frame->any.type);
|
WARN(1, "Bad infoframe type %d\n", frame->any.type);
|
||||||
|
@@ -237,7 +237,8 @@ enum hdmi_3d_structure {
|
|||||||
HDMI_3D_STRUCTURE_SIDE_BY_SIDE_HALF = 8,
|
HDMI_3D_STRUCTURE_SIDE_BY_SIDE_HALF = 8,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct hdmi_hdmi_infoframe {
|
|
||||||
|
struct hdmi_vendor_infoframe {
|
||||||
enum hdmi_infoframe_type type;
|
enum hdmi_infoframe_type type;
|
||||||
unsigned char version;
|
unsigned char version;
|
||||||
unsigned char length;
|
unsigned char length;
|
||||||
@@ -247,25 +248,25 @@ struct hdmi_hdmi_infoframe {
|
|||||||
unsigned int s3d_ext_data;
|
unsigned int s3d_ext_data;
|
||||||
};
|
};
|
||||||
|
|
||||||
int hdmi_hdmi_infoframe_init(struct hdmi_hdmi_infoframe *frame);
|
int hdmi_vendor_infoframe_init(struct hdmi_vendor_infoframe *frame);
|
||||||
ssize_t hdmi_hdmi_infoframe_pack(struct hdmi_hdmi_infoframe *frame,
|
ssize_t hdmi_vendor_infoframe_pack(struct hdmi_vendor_infoframe *frame,
|
||||||
void *buffer, size_t size);
|
void *buffer, size_t size);
|
||||||
|
|
||||||
union hdmi_vendor_infoframe {
|
union hdmi_vendor_any_infoframe {
|
||||||
struct {
|
struct {
|
||||||
enum hdmi_infoframe_type type;
|
enum hdmi_infoframe_type type;
|
||||||
unsigned char version;
|
unsigned char version;
|
||||||
unsigned char length;
|
unsigned char length;
|
||||||
unsigned int oui;
|
unsigned int oui;
|
||||||
} any;
|
} any;
|
||||||
struct hdmi_hdmi_infoframe hdmi;
|
struct hdmi_vendor_infoframe hdmi;
|
||||||
};
|
};
|
||||||
|
|
||||||
union hdmi_infoframe {
|
union hdmi_infoframe {
|
||||||
struct hdmi_any_infoframe any;
|
struct hdmi_any_infoframe any;
|
||||||
struct hdmi_avi_infoframe avi;
|
struct hdmi_avi_infoframe avi;
|
||||||
struct hdmi_spd_infoframe spd;
|
struct hdmi_spd_infoframe spd;
|
||||||
union hdmi_vendor_infoframe vendor;
|
union hdmi_vendor_any_infoframe vendor;
|
||||||
struct hdmi_audio_infoframe audio;
|
struct hdmi_audio_infoframe audio;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user