Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bf9c8227 authored by Ian Molton's avatar Ian Molton Committed by Mauro Carvalho Chehab
Browse files

[media] media: adv7604: ability to read default input port from DT



Adds support to the adv7604 driver for specifying the default input
port in the Device tree. If no value is provided, the driver will be
unable to select an input without help from userspace.

Tested-by: default avatarWilliam Towle <william.towle@codethink.co.uk>
Signed-off-by: default avatarIan Molton <ian.molton@codethink.co.uk>
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@osg.samsung.com>
parent 6a219f15
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -47,6 +47,7 @@ Optional Endpoint Properties:
  If none of hsync-active, vsync-active and pclk-sample is specified the
  endpoint will use embedded BT.656 synchronization.

  - default-input: Select which input is selected after reset.

Example:

@@ -60,6 +61,8 @@ Example:
		#address-cells = <1>;
		#size-cells = <0>;

		default-input = <0>;

		port@0 {
			reg = <0>;
		};
+7 −1
Original line number Diff line number Diff line
@@ -2772,6 +2772,7 @@ static int adv76xx_parse_dt(struct adv76xx_state *state)
	struct device_node *endpoint;
	struct device_node *np;
	unsigned int flags;
	u32 v;

	np = state->i2c_clients[ADV76XX_PAGE_IO]->dev.of_node;

@@ -2781,6 +2782,12 @@ static int adv76xx_parse_dt(struct adv76xx_state *state)
		return -EINVAL;

	v4l2_of_parse_endpoint(endpoint, &bus_cfg);

	if (!of_property_read_u32(endpoint, "default-input", &v))
		state->pdata.default_input = v;
	else
		state->pdata.default_input = -1;

	of_node_put(endpoint);

	flags = bus_cfg.bus.parallel.flags;
@@ -2819,7 +2826,6 @@ static int adv76xx_parse_dt(struct adv76xx_state *state)
	/* Hardcode the remaining platform data fields. */
	state->pdata.disable_pwrdnb = 0;
	state->pdata.disable_cable_det_rst = 0;
	state->pdata.default_input = -1;
	state->pdata.blank_data = 1;
	state->pdata.alt_data_sat = 1;
	state->pdata.op_format_mode_sel = ADV7604_OP_FORMAT_MODE0;