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] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 14 Nov 2012 16:06:47 -0600
From:	Kent Yoder <key@...ux.vnet.ibm.com>
To:	Mathias Leblanc <mathias.leblanc@...com>
Cc:	Rajiv Andrade <mail@...jiv.net>,
	Marcel Selhorst <tpmdd@...horst.net>,
	Sirrix AG <tpmdd@...rix.com>,
	tpmdd-devel@...ts.sourceforge.net,
	Debora Velarde <debora@...ux.vnet.ibm.com>,
	linux-kernel@...r.kernel.org,
	Jean-Luc Blanc <jean-luc.blanc@...com>
Subject: Re: [PATCH 1/1] TPM: STMicroelectronics ST33 I2C

Hi Mathias,

On Wed, Nov 14, 2012 at 03:31:42PM +0100, Mathias Leblanc wrote:
>  * STMicroelectronics version 1.2.0, Copyright (C) 2010
>  * STMicroelectronics comes with ABSOLUTELY NO WARRANTY.
>  * This is free software, and you are welcome to redistribute it
>  * under certain conditions.
> 
> This is the driver for TPM chip from ST Microelectronics.
> 
> If you have a TPM security chip from STMicroelectronics working with
> an I2C, in menuconfig or .config choose the tpm driver on
> device --> tpm and activate the protocol of your choice before compiling
> the kernel.
> The driver will be accessible from within Linux.
> 
> Tested on linux x86/x64, beagleboard REV B & XM REV C and CHROMIUM OS

  Getting some build errors here:

drivers/char/tpm/tpm_stm_st33_i2c.c: In function ‘__check_interrupts’:
drivers/char/tpm/tpm_stm_st33_i2c.c:615:1: warning: return from
incompatible pointer type [enabled by default]
drivers/char/tpm/tpm_stm_st33_i2c.c: In function ‘__check_power_mgt’:
drivers/char/tpm/tpm_stm_st33_i2c.c:619:1: warning: return from
incompatible pointer type [enabled by default]
drivers/char/tpm/tpm_stm_st33_i2c.c: In function ‘tpm_st33_i2c_probe’:
drivers/char/tpm/tpm_stm_st33_i2c.c:725:3: warning: suggest parentheses
around arithmetic in operand of ‘|’ [-Wparentheses]
drivers/char/tpm/tpm_stm_st33_i2c.c: In function
‘tpm_st33_i2c_pm_suspend’:
drivers/char/tpm/tpm_stm_st33_i2c.c:826:3: error: too many arguments to
function ‘tpm_pm_suspend’
In file included from drivers/char/tpm/tpm_stm_st33_i2c.h:55:0,
                 from drivers/char/tpm/tpm_stm_st33_i2c.c:35:
		 drivers/char/tpm/tpm.h:326:12: note: declared here
		 drivers/char/tpm/tpm_stm_st33_i2c.c: In function
		 ‘tpm_st33_i2c_pm_resume’:
		 drivers/char/tpm/tpm_stm_st33_i2c.c:855:3: error:
		 implicit declaration of function
		 ‘tpm_continue_selftest’
		 [-Werror=implicit-function-declaration]

[cut]
> +/*
> + * _wait_for_interrupt_serirq_timeout
> + * @param: tpm, the chip description
> + * @param: timeout, the timeout of the interrupt
> + * @return: the status of the interruption.
> + */
> +static int _wait_for_interrupt_serirq_timeout(struct tpm_chip *chip,
> +						unsigned long timeout)
> +{
> +	int status;
> +	struct i2c_client *client;
> +	struct st33zp24_platform_data *pin_infos;
> +
> +	client = (struct i2c_client *) chip->vendor.iobase;
> +	pin_infos = client->dev.platform_data;
> +
> +	status = wait_for_completion_interruptible_timeout(
> +					&pin_infos->irq_detection,
> +						timeout);

  status should be a long here.

[cut]
> +
> +	if (client == NULL) {
> +		pr_info("client is NULL. exiting.\n");
> +		err = -ENODEV;
> +		goto end;
> +	}
> +
> +	if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C)) {
> +		pr_info("client not i2c capable\n");
> +		err = -ENODEV;
> +		goto end;
> +	}
> +
> +	chip = tpm_register_hardware(&client->dev, &st_i2c_tpm);
> +	if (!chip) {
> +		pr_info("fail chip\n");

  Please use dev_info() in place of pr_info().

Thanks,
Kent

--
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