Search Linux Wireless

Re: [PATCH v3] rt2x00: rt2800lib: add support for RT3352 with 20MHz crystal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Daniel

On Fri, Jan 20, 2017 at 12:42:44AM +0100, Daniel Golle wrote:
> +int rt2800_probe_clk(struct rt2x00_dev *rt2x00dev)
> +{
> +	struct hw_mode_spec *spec = &rt2x00dev->spec;
> +	struct clk *clk = clk_get(rt2x00dev->dev, NULL);
> +
> +	if (IS_ERR(clk))
> +		return PTR_ERR(clk);
> +
> +	if (clk_get_rate(clk) == 20000000)
> +		spec->clk_is_20mhz = 1;
> +
> +	return 0;
> +}
> +
>  int rt2800_probe_hw(struct rt2x00_dev *rt2x00dev)
>  {
>  	int retval;
> @@ -7864,6 +7903,15 @@ int rt2800_probe_hw(struct rt2x00_dev *rt2x00dev)
>  	rt2800_register_write(rt2x00dev, GPIO_CTRL, reg);
>  
>  	/*
> +	 * Probe SoC clock.
> +	 */
> +	if (rt2x00_is_soc(rt2x00dev)) {
> +		retval = rt2800_probe_clk(rt2x00dev);
> +		if (retval)
> +			return retval;
> +	}
<snip>
> @@ -415,6 +416,7 @@ struct hw_mode_spec {
>  	const struct channel_info *channels_info;
>  
>  	struct ieee80211_sta_ht_cap ht;
> +	int clk_is_20mhz;

I dislike adding this variable to structure that is intended to describe
wireless capabilities. Additionally we do not actually "probe" the
clock but just read it value from rt2x00dev->dev, this can be handled
better. I'll post different patch reading clk and on top of if this
patch and "add support for RT5350 WiSoC" .

Regards
Stanislaw




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux