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

Commit fb8004d3 authored by Al Viro's avatar Al Viro
Browse files

silicom: unobfuscate get_{status,master}_port_fn()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 7e1be8a5
Loading
Loading
Loading
Loading
+19 −48
Original line number Diff line number Diff line
@@ -1728,62 +1728,33 @@ int gpio6_clear_fn(bpctl_dev_t *pbpctl_dev)
}
#endif				/*BYPASS_DEBUG */

static bpctl_dev_t *get_status_port_fn(bpctl_dev_t *pbpctl_dev)
static bpctl_dev_t *lookup_port(bpctl_dev_t *dev)
{
	int idx_dev = 0;

	if (pbpctl_dev == NULL)
	bpctl_dev_t *p;
	int n;
	for (n = 0, p = bpctl_dev_arr; n < device_num && p->pdev; n++) {
		if (p->bus == dev->bus
		    && p->slot == dev->slot
		    && p->func == (dev->func ^ 1))
			return p;
	}
	return NULL;

	if ((pbpctl_dev->func == 0) || (pbpctl_dev->func == 2)) {
		for (idx_dev = 0;
		     ((bpctl_dev_arr[idx_dev].pdev != NULL)
		      && (idx_dev < device_num)); idx_dev++) {
			if ((bpctl_dev_arr[idx_dev].bus == pbpctl_dev->bus)
			    && (bpctl_dev_arr[idx_dev].slot == pbpctl_dev->slot)
			    && ((bpctl_dev_arr[idx_dev].func == 1)
				&& (pbpctl_dev->func == 0))) {

				return &(bpctl_dev_arr[idx_dev]);
}
			if ((bpctl_dev_arr[idx_dev].bus == pbpctl_dev->bus) &&
			    (bpctl_dev_arr[idx_dev].slot == pbpctl_dev->slot) &&
			    ((bpctl_dev_arr[idx_dev].func == 3)
			     && (pbpctl_dev->func == 2))) {

				return &(bpctl_dev_arr[idx_dev]);
			}
		}
static bpctl_dev_t *get_status_port_fn(bpctl_dev_t *pbpctl_dev)
{
	if (pbpctl_dev) {
		if (pbpctl_dev->func == 0 || pbpctl_dev->func == 2)
			return lookup_port(pbpctl_dev);
	}
	return NULL;
}

static bpctl_dev_t *get_master_port_fn(bpctl_dev_t *pbpctl_dev)
{
	int idx_dev = 0;

	if (pbpctl_dev == NULL)
		return NULL;

	if ((pbpctl_dev->func == 1) || (pbpctl_dev->func == 3)) {
		for (idx_dev = 0;
		     ((bpctl_dev_arr[idx_dev].pdev != NULL)
		      && (idx_dev < device_num)); idx_dev++) {
			if ((bpctl_dev_arr[idx_dev].bus == pbpctl_dev->bus)
			    && (bpctl_dev_arr[idx_dev].slot == pbpctl_dev->slot)
			    && ((bpctl_dev_arr[idx_dev].func == 0)
				&& (pbpctl_dev->func == 1))) {

				return &(bpctl_dev_arr[idx_dev]);
			}
			if ((bpctl_dev_arr[idx_dev].bus == pbpctl_dev->bus) &&
			    (bpctl_dev_arr[idx_dev].slot == pbpctl_dev->slot) &&
			    ((bpctl_dev_arr[idx_dev].func == 2)
			     && (pbpctl_dev->func == 3))) {

				return &(bpctl_dev_arr[idx_dev]);
			}
		}
	if (pbpctl_dev) {
		if (pbpctl_dev->func == 1 || pbpctl_dev->func == 3)
			return lookup_port(pbpctl_dev);
	}
	return NULL;
}