[PATCH 1/3] Import r92_llt.c from FreeBSD.

Christian Mauderer list at c-mauderer.de
Mon Jul 31 18:02:28 UTC 2017


Hello Sichen,

the patches don't apply on the current libbsd master. Please rebase them.

I think that this is maybe my fault: I updated some of the rtwn drivers
recently during a test for another project. That has lead to some
changes that now give a conflict:

Patch 1: Should be superfluous now.

Patch 2: I think some lines in libbsd.py have moved. Therefore it
doesn't apply. Beneath that I think that the files for r92eu are now
already ported. So most likely you can drop most (all?) of the ifdefs
regarding that like Sebastian already suggested in his mail today.

Patch 3: Looks good to me. Just rebase it.

Kind Regards

Christian

Am 31.07.2017 um 08:42 schrieb Sichen Zhao:
> ---
>  freebsd/sys/dev/rtwn/rtl8192c/r92c_llt.c | 75 ++++++++++++++++++++++++++++++++
>  1 file changed, 75 insertions(+)
>  create mode 100644 freebsd/sys/dev/rtwn/rtl8192c/r92c_llt.c
> 
> diff --git a/freebsd/sys/dev/rtwn/rtl8192c/r92c_llt.c b/freebsd/sys/dev/rtwn/rtl8192c/r92c_llt.c
> new file mode 100644
> index 0000000..595d79e
> --- /dev/null
> +++ b/freebsd/sys/dev/rtwn/rtl8192c/r92c_llt.c
> @@ -0,0 +1,75 @@
> +#include <machine/rtems-bsd-kernel-space.h>
> +
> +/*	$OpenBSD: if_urtwn.c,v 1.16 2011/02/10 17:26:40 jakemsr Exp $	*/
> +
> +/*-
> + * Copyright (c) 2010 Damien Bergamini <damien.bergamini at free.fr>
> + * Copyright (c) 2014 Kevin Lo <kevlo at FreeBSD.org>
> + * Copyright (c) 2015-2016 Andriy Voskoboinyk <avos at FreeBSD.org>
> + *
> + * Permission to use, copy, modify, and distribute this software for any
> + * purpose with or without fee is hereby granted, provided that the above
> + * copyright notice and this permission notice appear in all copies.
> + *
> + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
> + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
> + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
> + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
> + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
> + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
> + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
> + */
> +
> +#include <sys/cdefs.h>
> +__FBSDID("$FreeBSD$");
> +
> +#include <rtems/bsd/local/opt_wlan.h>
> +
> +#include <sys/param.h>
> +#include <sys/lock.h>
> +#include <sys/mutex.h>
> +#include <sys/mbuf.h>
> +#include <sys/kernel.h>
> +#include <sys/socket.h>
> +#include <sys/systm.h>
> +#include <sys/malloc.h>
> +#include <sys/queue.h>
> +#include <sys/taskqueue.h>
> +#include <sys/bus.h>
> +#include <sys/endian.h>
> +#include <sys/linker.h>
> +
> +#include <net/if.h>
> +#include <net/ethernet.h>
> +#include <net/if_media.h>
> +
> +#include <net80211/ieee80211_var.h>
> +#include <net80211/ieee80211_radiotap.h>
> +
> +#include <dev/rtwn/if_rtwnreg.h>
> +#include <dev/rtwn/if_rtwnvar.h>
> +
> +#include <dev/rtwn/rtl8192c/r92c.h>
> +#include <dev/rtwn/rtl8192c/r92c_reg.h>
> +#include <dev/rtwn/rtl8192c/r92c_var.h>
> +
> +int
> +r92c_llt_write(struct rtwn_softc *sc, uint32_t addr, uint32_t data)
> +{
> +	int ntries, error;
> +
> +	error = rtwn_write_4(sc, R92C_LLT_INIT,
> +	    SM(R92C_LLT_INIT_OP, R92C_LLT_INIT_OP_WRITE) |
> +	    SM(R92C_LLT_INIT_ADDR, addr) |
> +	    SM(R92C_LLT_INIT_DATA, data));
> +	if (error != 0)
> +		return (error);
> +	/* Wait for write operation to complete. */
> +	for (ntries = 0; ntries < 20; ntries++) {
> +		if (MS(rtwn_read_4(sc, R92C_LLT_INIT), R92C_LLT_INIT_OP) ==
> +		    R92C_LLT_INIT_OP_NO_ACTIVE)
> +			return (0);
> +		rtwn_delay(sc, 10);
> +	}
> +	return (ETIMEDOUT);
> +}
> 



More information about the devel mailing list