Merge "disp: msm: dp: update number of lanes used to usb driver"
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

commit
8a3abf2cdf
@@ -28,6 +28,7 @@ struct dp_altmode_private {
|
||||
struct dp_altmode dp_altmode;
|
||||
struct altmode_client *amclient;
|
||||
bool connected;
|
||||
u32 lanes;
|
||||
};
|
||||
|
||||
enum dp_altmode_pin_assignment {
|
||||
@@ -47,7 +48,6 @@ static int dp_altmode_set_usb_dp_mode(struct dp_altmode_private *altmode)
|
||||
struct device_node *usb_node;
|
||||
struct platform_device *usb_pdev;
|
||||
int timeout = 250;
|
||||
u32 lanes = 4;
|
||||
|
||||
if (!altmode || !altmode->dev) {
|
||||
DP_ERR("invalid args\n");
|
||||
@@ -56,9 +56,6 @@ static int dp_altmode_set_usb_dp_mode(struct dp_altmode_private *altmode)
|
||||
|
||||
np = altmode->dev->of_node;
|
||||
|
||||
if (altmode->connected && altmode->dp_altmode.base.force_multi_func)
|
||||
lanes = 2;
|
||||
|
||||
usb_node = of_parse_phandle(np, "usb-controller", 0);
|
||||
if (!usb_node) {
|
||||
DP_ERR("unable to get usb node\n");
|
||||
@@ -73,7 +70,7 @@ static int dp_altmode_set_usb_dp_mode(struct dp_altmode_private *altmode)
|
||||
}
|
||||
|
||||
while (timeout) {
|
||||
rc = dwc3_msm_set_dp_mode(&usb_pdev->dev, altmode->connected, lanes);
|
||||
rc = dwc3_msm_set_dp_mode(&usb_pdev->dev, altmode->connected, altmode->lanes);
|
||||
if (rc != -EBUSY)
|
||||
break;
|
||||
|
||||
@@ -167,6 +164,12 @@ static int dp_altmode_notify(void *priv, void *data, size_t len)
|
||||
altmode->connected = true;
|
||||
altmode->dp_altmode.base.alt_mode_cfg_done = true;
|
||||
altmode->forced_disconnect = false;
|
||||
altmode->lanes = 4;
|
||||
|
||||
if (altmode->dp_altmode.base.multi_func)
|
||||
altmode->lanes = 2;
|
||||
|
||||
DP_DEBUG("Connected=%d, lanes=%d\n",altmode->connected,altmode->lanes);
|
||||
|
||||
switch (orientation) {
|
||||
case 0:
|
||||
|
Reference in New Issue
Block a user