lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <C5176C36-6AE7-446B-A07A-F1F651C1B6EF@marvell.com>
Date:	Sun, 30 Oct 2011 02:57:44 -0700
From:	Philip Rakity <prakity@...vell.com>
To:	"linux-kernel@...r.kernel.org Mailing List" 
	<linux-kernel@...r.kernel.org>
CC:	Eric Miao <eric.y.miao@...il.com>,
	Anton Vorontsov <cbouatmailru@...il.com>
Subject: Re: [PATCH] power: max8925_power:  No temperature interrupts if
  temperature not connected (RESEND)



RESEND

On Aug 24, 2011, at 2:45 PM, Philip Rakity wrote:

> 
> Brownstone does not have temperature reading circuit hooked up.
> This leads to spurious interrupts.
> 
> Allow the platform layer to indicate no temperature circuit
> and do not activate interrupts if no temperature control is set
> 
> Signed-off-by: Philip Rakity <prakity@...vell.com>
> ---
> drivers/power/max8925_power.c |   12 ++++++++----
> include/linux/mfd/max8925.h   |    1 +
> 2 files changed, 9 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/power/max8925_power.c b/drivers/power/max8925_power.c
> index a70e16d..dba07f3 100644
> --- a/drivers/power/max8925_power.c
> +++ b/drivers/power/max8925_power.c
> @@ -78,6 +78,7 @@ struct max8925_power_info {
> 	unsigned		batt_detect:1;	/* detecing MB by ID pin */
> 	unsigned		topoff_threshold:2;
> 	unsigned		fast_charge:3;
> +	unsigned		no_temp_support:1;
> 
> 	int (*set_charger) (int);
> };
> @@ -116,7 +117,7 @@ static irqreturn_t max8925_charger_handler(int irq, void *data)
> 	case MAX8925_IRQ_VCHG_DC_F:
> 		info->ac_online = 0;
> 		__set_charger(info, 0);
> -		dev_dbg(chip->dev, "Adapter is removal\n");
> +		dev_dbg(chip->dev, "Adapter removed\n");
> 		break;
> 	case MAX8925_IRQ_VCHG_USB_R:
> 		info->usb_online = 1;
> @@ -126,7 +127,7 @@ static irqreturn_t max8925_charger_handler(int irq, void *data)
> 	case MAX8925_IRQ_VCHG_USB_F:
> 		info->usb_online = 0;
> 		__set_charger(info, 0);
> -		dev_dbg(chip->dev, "USB is removal\n");
> +		dev_dbg(chip->dev, "USB removed\n");
> 		break;
> 	case MAX8925_IRQ_VCHG_THM_OK_F:
> 		/* Battery is not ready yet */
> @@ -370,8 +371,10 @@ static __devinit int max8925_init_charger(struct max8925_chip *chip,
> 	REQUEST_IRQ(MAX8925_IRQ_VCHG_USB_OVP, "usb-ovp");
> 	REQUEST_IRQ(MAX8925_IRQ_VCHG_USB_F, "usb-remove");
> 	REQUEST_IRQ(MAX8925_IRQ_VCHG_USB_R, "usb-insert");
> -	REQUEST_IRQ(MAX8925_IRQ_VCHG_THM_OK_R, "batt-temp-in-range");
> -	REQUEST_IRQ(MAX8925_IRQ_VCHG_THM_OK_F, "batt-temp-out-range");
> +	if (!info->no_temp_support) {
> +		REQUEST_IRQ(MAX8925_IRQ_VCHG_THM_OK_R, "batt-temp-in-range");
> +		REQUEST_IRQ(MAX8925_IRQ_VCHG_THM_OK_F, "batt-temp-out-range");
> +	}
> 	REQUEST_IRQ(MAX8925_IRQ_VCHG_SYSLOW_F, "vsys-high");
> 	REQUEST_IRQ(MAX8925_IRQ_VCHG_SYSLOW_R, "vsys-low");
> 	REQUEST_IRQ(MAX8925_IRQ_VCHG_RST, "charger-reset");
> @@ -478,6 +481,7 @@ static __devinit int max8925_power_probe(struct platform_device *pdev)
> 	info->topoff_threshold = pdata->topoff_threshold;
> 	info->fast_charge = pdata->fast_charge;
> 	info->set_charger = pdata->set_charger;
> +	info->no_temp_support = pdata->no_temp_support;
> 
> 	max8925_init_charger(chip, info);
> 	return 0;
> diff --git a/include/linux/mfd/max8925.h b/include/linux/mfd/max8925.h
> index 5259dfe..69ec8f0 100644
> --- a/include/linux/mfd/max8925.h
> +++ b/include/linux/mfd/max8925.h
> @@ -223,6 +223,7 @@ struct max8925_power_pdata {
> 	unsigned	batt_detect:1;
> 	unsigned	topoff_threshold:2;
> 	unsigned	fast_charge:3;	/* charge current */
> +	unsigned	no_temp_support:1; /* set if no temperature detect */
> };
> 
> /*
> -- 
> 1.7.6
> 
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ