Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
4d08a363
Commit
4d08a363
authored
Mar 10, 2015
by
James Morris
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'for-current' of
https://github.com/PeterHuewe/linux-tpmdd
into for-linus
parents
9eccca08
19913b6d
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
22 additions
and
28 deletions
+22
-28
drivers/char/tpm/tpm-chip.c
drivers/char/tpm/tpm-chip.c
+14
-20
drivers/char/tpm/tpm_ibmvtpm.c
drivers/char/tpm/tpm_ibmvtpm.c
+5
-5
drivers/char/tpm/tpm_ibmvtpm.h
drivers/char/tpm/tpm_ibmvtpm.h
+3
-3
No files found.
drivers/char/tpm/tpm-chip.c
View file @
4d08a363
...
...
@@ -140,24 +140,24 @@ static int tpm_dev_add_device(struct tpm_chip *chip)
{
int
rc
;
rc
=
device_add
(
&
chip
->
dev
);
rc
=
cdev_add
(
&
chip
->
cdev
,
chip
->
dev
.
devt
,
1
);
if
(
rc
)
{
dev_err
(
&
chip
->
dev
,
"unable to
device_register
() %s, major %d, minor %d, err=%d
\n
"
,
"unable to
cdev_add
() %s, major %d, minor %d, err=%d
\n
"
,
chip
->
devname
,
MAJOR
(
chip
->
dev
.
devt
),
MINOR
(
chip
->
dev
.
devt
),
rc
);
device_unregister
(
&
chip
->
dev
);
return
rc
;
}
rc
=
cdev_add
(
&
chip
->
cdev
,
chip
->
dev
.
devt
,
1
);
rc
=
device_add
(
&
chip
->
dev
);
if
(
rc
)
{
dev_err
(
&
chip
->
dev
,
"unable to
cdev_add
() %s, major %d, minor %d, err=%d
\n
"
,
"unable to
device_register
() %s, major %d, minor %d, err=%d
\n
"
,
chip
->
devname
,
MAJOR
(
chip
->
dev
.
devt
),
MINOR
(
chip
->
dev
.
devt
),
rc
);
device_unregister
(
&
chip
->
dev
);
return
rc
;
}
...
...
@@ -174,27 +174,17 @@ static void tpm_dev_del_device(struct tpm_chip *chip)
* tpm_chip_register() - create a character device for the TPM chip
* @chip: TPM chip to use.
*
* Creates a character device for the TPM chip and adds sysfs
interfac
es for
* the device
, PPI and TCPA. As the last step this function adds the
* chip
to the list of TPM chips available for
use.
* Creates a character device for the TPM chip and adds sysfs
attribut
es for
* the device
. As the last step this function adds the chip to the list of TPM
* chip
s available for in-kernel
use.
*
* NOTE: This function should be only called after the chip initialization
* is complete.
*
* Called from tpm_<specific>.c probe function only for devices
* the driver has determined it should claim. Prior to calling
* this function the specific probe function has called pci_enable_device
* upon errant exit from this function specific probe function should call
* pci_disable_device
* This function should be only called after the chip initialization is
* complete.
*/
int
tpm_chip_register
(
struct
tpm_chip
*
chip
)
{
int
rc
;
rc
=
tpm_dev_add_device
(
chip
);
if
(
rc
)
return
rc
;
/* Populate sysfs for TPM1 devices. */
if
(
!
(
chip
->
flags
&
TPM_CHIP_FLAG_TPM2
))
{
rc
=
tpm_sysfs_add_device
(
chip
);
...
...
@@ -208,6 +198,10 @@ int tpm_chip_register(struct tpm_chip *chip)
chip
->
bios_dir
=
tpm_bios_log_setup
(
chip
->
devname
);
}
rc
=
tpm_dev_add_device
(
chip
);
if
(
rc
)
return
rc
;
/* Make the chip available. */
spin_lock
(
&
driver_lock
);
list_add_rcu
(
&
chip
->
list
,
&
tpm_chip_list
);
...
...
drivers/char/tpm/tpm_ibmvtpm.c
View file @
4d08a363
...
...
@@ -124,7 +124,7 @@ static int tpm_ibmvtpm_send(struct tpm_chip *chip, u8 *buf, size_t count)
{
struct
ibmvtpm_dev
*
ibmvtpm
;
struct
ibmvtpm_crq
crq
;
u64
*
word
=
(
u64
*
)
&
crq
;
__be64
*
word
=
(
__be64
*
)
&
crq
;
int
rc
;
ibmvtpm
=
(
struct
ibmvtpm_dev
*
)
TPM_VPRIV
(
chip
);
...
...
@@ -145,11 +145,11 @@ static int tpm_ibmvtpm_send(struct tpm_chip *chip, u8 *buf, size_t count)
memcpy
((
void
*
)
ibmvtpm
->
rtce_buf
,
(
void
*
)
buf
,
count
);
crq
.
valid
=
(
u8
)
IBMVTPM_VALID_CMD
;
crq
.
msg
=
(
u8
)
VTPM_TPM_COMMAND
;
crq
.
len
=
(
u16
)
count
;
crq
.
data
=
ibmvtpm
->
rtce_dma_handle
;
crq
.
len
=
cpu_to_be16
(
count
)
;
crq
.
data
=
cpu_to_be32
(
ibmvtpm
->
rtce_dma_handle
)
;
rc
=
ibmvtpm_send_crq
(
ibmvtpm
->
vdev
,
cpu_to_be64
(
word
[
0
]),
cpu_to_be64
(
word
[
1
]));
rc
=
ibmvtpm_send_crq
(
ibmvtpm
->
vdev
,
be64_to_cpu
(
word
[
0
]),
be64_to_cpu
(
word
[
1
]));
if
(
rc
!=
H_SUCCESS
)
{
dev_err
(
ibmvtpm
->
dev
,
"tpm_ibmvtpm_send failed rc=%d
\n
"
,
rc
);
rc
=
0
;
...
...
drivers/char/tpm/tpm_ibmvtpm.h
View file @
4d08a363
...
...
@@ -22,9 +22,9 @@
struct
ibmvtpm_crq
{
u8
valid
;
u8
msg
;
u
16
len
;
u
32
data
;
u
64
reserved
;
__be
16
len
;
__be
32
data
;
__be
64
reserved
;
}
__attribute__
((
packed
,
aligned
(
8
)));
struct
ibmvtpm_crq_queue
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment