Search Linux Wireless

Re: [PATCH 08/12] wilc1000: invoke chip reset register while FW download

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

 



<Ajay.Kathat@xxxxxxxxxxxxx> writes:

> From: Ajay Singh <ajay.kathat@xxxxxxxxxxxxx>
>
> Added chip-reset command before firmware download to initialize the
> chip. Also configure chip in wake state, ready to accept the FW
> binary.

"Added" -> "Add"

This repeats many times, so I don't comment on that anymore.

> @@ -1088,10 +1089,22 @@ int wilc_wlan_firmware_download(struct wilc *wilc, const u8 *buffer,
>  		return -EIO;
>  
>  	offset = 0;
> +	pr_info("%s: Downloading firmware size = %d\n", __func__, buffer_size);
> +
> +	acquire_bus(wilc, WILC_BUS_ACQUIRE_AND_WAKEUP);
> +
> +	wilc->hif_func->hif_read_reg(wilc, WILC_GLB_RESET_0, &reg);
> +	reg &= ~BIT(10);
> +	ret = wilc->hif_func->hif_write_reg(wilc, WILC_GLB_RESET_0, reg);
> +	wilc->hif_func->hif_read_reg(wilc, WILC_GLB_RESET_0, &reg);
> +	if (reg & BIT(10))
> +		pr_err("%s: Failed to reset\n", __func__);
> +
> +	release_bus(wilc, WILC_BUS_RELEASE_ONLY);
>  	do {
>  		addr = get_unaligned_le32(&buffer[offset]);
>  		size = get_unaligned_le32(&buffer[offset + 4]);
> -		acquire_bus(wilc, WILC_BUS_ACQUIRE_ONLY);
> +		acquire_bus(wilc, WILC_BUS_ACQUIRE_AND_WAKEUP);
>  		offset += 8;
>  		while (((int)size) && (offset < buffer_size)) {
>  			if (size <= blksz)
> @@ -1109,10 +1122,13 @@ int wilc_wlan_firmware_download(struct wilc *wilc, const u8 *buffer,
>  			offset += size2;
>  			size -= size2;
>  		}
> -		release_bus(wilc, WILC_BUS_RELEASE_ONLY);
> +		release_bus(wilc, WILC_BUS_RELEASE_ALLOW_SLEEP);
>  
> -		if (ret)
> +		if (ret) {
> +			pr_err("%s Bus error\n", __func__);
>  			goto fail;
> +		}
> +		pr_info("%s Offset = %d\n", __func__, offset);

Please use pr_info() sparingly, it's only for important messages like
hardware info, firmware version/features and so on. I think pr_info()
calls in this function should be debug messages instead.

-- 
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches



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

  Powered by Linux