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

Commit 3da6e718 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "dcc_v2: Don't set the default value to sram when dcc is enabled"

parents 618b2017 949350b2
Loading
Loading
Loading
Loading
+22 −18
Original line number Diff line number Diff line
@@ -564,13 +564,15 @@ static int dcc_valid_list(struct dcc_drvdata *drvdata, int curr_list)
		return -EINVAL;

	if (drvdata->enable[curr_list]) {
		dev_err(drvdata->dev, "DCC is already enabled\n");
		dev_err(drvdata->dev, "List %d is already enabled\n",
				curr_list);
		return -EINVAL;
	}

	lock_reg = dcc_readl(drvdata, DCC_LL_LOCK(curr_list));
	if (lock_reg & 0x1) {
		dev_err(drvdata->dev, "DCC is already enabled\n");
		dev_err(drvdata->dev, "List %d is already locked\n",
				curr_list);
		return -EINVAL;
	}

@@ -578,6 +580,21 @@ static int dcc_valid_list(struct dcc_drvdata *drvdata, int curr_list)
	return 0;
}

static bool is_dcc_enabled(struct dcc_drvdata *drvdata)
{
	bool dcc_enable = false;
	int list;

	for (list = 0; list < DCC_MAX_LINK_LIST; list++) {
		if (drvdata->enable[list]) {
			dcc_enable = true;
			break;
		}
	}

	return dcc_enable;
}

static int dcc_enable(struct dcc_drvdata *drvdata)
{
	int ret = 0;
@@ -586,7 +603,9 @@ static int dcc_enable(struct dcc_drvdata *drvdata)

	mutex_lock(&drvdata->mutex);

	if (!is_dcc_enabled(drvdata)) {
		memset_io(drvdata->ram_base, 0xDE, drvdata->ram_size);
	}

	for (list = 0; list < DCC_MAX_LINK_LIST; list++) {

@@ -667,21 +686,6 @@ static void dcc_disable(struct dcc_drvdata *drvdata)
	mutex_unlock(&drvdata->mutex);
}

static bool is_dcc_enabled(struct dcc_drvdata *drvdata)
{
	bool dcc_enable = false;
	int list;

	for (list = 0; list < DCC_MAX_LINK_LIST; list++) {
		if (drvdata->enable[list]) {
			dcc_enable = true;
			break;
		}
	}

	return dcc_enable;
}

static ssize_t curr_list_show(struct device *dev,
			       struct device_attribute *attr, char *buf)
{