Commit 4df0991b authored by Christian Gromm's avatar Christian Gromm Committed by Greg Kroah-Hartman
Browse files

staging: most: remove string termination dependency from user space data



This patch removes the constraint that user space data has to be terminated
with a new line character. It is needed to let the user choose how the data
is formatted.

Signed-off-by: default avatarChristian Gromm <christian.gromm@microchip.com>
Link: https://lore.kernel.org/r/1573138169-27562-1-git-send-email-christian.gromm@microchip.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 885961fe
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -164,6 +164,7 @@ static ssize_t mdev_link_direction_store(struct config_item *item,
	    !sysfs_streq(page, "dir_tx") && !sysfs_streq(page, "tx"))
		return -EINVAL;
	strcpy(mdev_link->direction, page);
	strim(mdev_link->direction);
	return count;
}

@@ -182,6 +183,7 @@ static ssize_t mdev_link_datatype_store(struct config_item *item,
	    !sysfs_streq(page, "isoc_avp"))
		return -EINVAL;
	strcpy(mdev_link->datatype, page);
	strim(mdev_link->datatype);
	return count;
}

@@ -196,6 +198,7 @@ static ssize_t mdev_link_device_store(struct config_item *item,
	struct mdev_link *mdev_link = to_mdev_link(item);

	strcpy(mdev_link->device, page);
	strim(mdev_link->device);
	return count;
}

@@ -210,6 +213,7 @@ static ssize_t mdev_link_channel_store(struct config_item *item,
	struct mdev_link *mdev_link = to_mdev_link(item);

	strcpy(mdev_link->channel, page);
	strim(mdev_link->channel);
	return count;
}

+9 −9
Original line number Diff line number Diff line
@@ -84,11 +84,11 @@ static const struct {
	int most_ch_data_type;
	const char *name;
} ch_data_type[] = {
	{ MOST_CH_CONTROL, "control\n" },
	{ MOST_CH_ASYNC, "async\n" },
	{ MOST_CH_SYNC, "sync\n" },
	{ MOST_CH_ISOC, "isoc\n"},
	{ MOST_CH_ISOC, "isoc_avp\n"},
	{ MOST_CH_CONTROL, "control" },
	{ MOST_CH_ASYNC, "async" },
	{ MOST_CH_SYNC, "sync" },
	{ MOST_CH_ISOC, "isoc"},
	{ MOST_CH_ISOC, "isoc_avp"},
};

/**
@@ -675,13 +675,13 @@ int most_set_cfg_direction(char *mdev, char *mdev_ch, char *buf)

	if (!c)
		return -ENODEV;
	if (!strcmp(buf, "dir_rx\n")) {
	if (!strcmp(buf, "dir_rx")) {
		c->cfg.direction = MOST_CH_RX;
	} else if (!strcmp(buf, "rx\n")) {
	} else if (!strcmp(buf, "rx")) {
		c->cfg.direction = MOST_CH_RX;
	} else if (!strcmp(buf, "dir_tx\n")) {
	} else if (!strcmp(buf, "dir_tx")) {
		c->cfg.direction = MOST_CH_TX;
	} else if (!strcmp(buf, "tx\n")) {
	} else if (!strcmp(buf, "tx")) {
		c->cfg.direction = MOST_CH_TX;
	} else {
		pr_info("Invalid direction\n");