提交 a40b260d 编写于 作者: T Tomas Winkler 提交者: Greg Kroah-Hartman

mei: move me client storage allocation to hbm.c

rename function to mei_me_cl_allocate to match the current
names convention: mei_hbm_me_cl_allocate
Signed-off-by: NTomas Winkler <tomas.winkler@intel.com>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 d91aaed3
...@@ -23,6 +23,43 @@ ...@@ -23,6 +23,43 @@
#include "hbm.h" #include "hbm.h"
#include "hw-me.h" #include "hw-me.h"
/**
* mei_hbm_me_cl_allocate - allocates storage for me clients
*
* @dev: the device structure
*
* returns none.
*/
static void mei_hbm_me_cl_allocate(struct mei_device *dev)
{
struct mei_me_client *clients;
int b;
/* count how many ME clients we have */
for_each_set_bit(b, dev->me_clients_map, MEI_CLIENTS_MAX)
dev->me_clients_num++;
if (dev->me_clients_num <= 0)
return;
kfree(dev->me_clients);
dev->me_clients = NULL;
dev_dbg(&dev->pdev->dev, "memory allocation for ME clients size=%zd.\n",
dev->me_clients_num * sizeof(struct mei_me_client));
/* allocate storage for ME clients representation */
clients = kcalloc(dev->me_clients_num,
sizeof(struct mei_me_client), GFP_KERNEL);
if (!clients) {
dev_err(&dev->pdev->dev, "memory allocation for ME clients failed.\n");
dev->dev_state = MEI_DEV_RESETING;
mei_reset(dev, 1);
return;
}
dev->me_clients = clients;
return;
}
/** /**
* mei_hbm_cl_hdr - construct client hbm header * mei_hbm_cl_hdr - construct client hbm header
* @cl: - client * @cl: - client
...@@ -593,7 +630,7 @@ void mei_hbm_dispatch(struct mei_device *dev, struct mei_msg_hdr *hdr) ...@@ -593,7 +630,7 @@ void mei_hbm_dispatch(struct mei_device *dev, struct mei_msg_hdr *hdr)
dev->init_clients_timer = 0; dev->init_clients_timer = 0;
dev->me_client_presentation_num = 0; dev->me_client_presentation_num = 0;
dev->me_client_index = 0; dev->me_client_index = 0;
mei_allocate_me_clients_storage(dev); mei_hbm_me_cl_allocate(dev);
dev->init_clients_state = dev->init_clients_state =
MEI_CLIENT_PROPERTIES_MESSAGE; MEI_CLIENT_PROPERTIES_MESSAGE;
......
...@@ -278,44 +278,5 @@ void mei_reset(struct mei_device *dev, int interrupts_enabled) ...@@ -278,44 +278,5 @@ void mei_reset(struct mei_device *dev, int interrupts_enabled)
} }
/**
* allocate_me_clients_storage - allocates storage for me clients
*
* @dev: the device structure
*
* returns none.
*/
void mei_allocate_me_clients_storage(struct mei_device *dev)
{
struct mei_me_client *clients;
int b;
/* count how many ME clients we have */
for_each_set_bit(b, dev->me_clients_map, MEI_CLIENTS_MAX)
dev->me_clients_num++;
if (dev->me_clients_num <= 0)
return ;
if (dev->me_clients != NULL) {
kfree(dev->me_clients);
dev->me_clients = NULL;
}
dev_dbg(&dev->pdev->dev, "memory allocation for ME clients size=%zd.\n",
dev->me_clients_num * sizeof(struct mei_me_client));
/* allocate storage for ME clients representation */
clients = kcalloc(dev->me_clients_num,
sizeof(struct mei_me_client), GFP_KERNEL);
if (!clients) {
dev_dbg(&dev->pdev->dev, "memory allocation for ME clients failed.\n");
dev->dev_state = MEI_DEV_RESETING;
mei_reset(dev, 1);
return ;
}
dev->me_clients = clients;
return ;
}
...@@ -328,7 +328,6 @@ void mei_reset(struct mei_device *dev, int interrupts); ...@@ -328,7 +328,6 @@ void mei_reset(struct mei_device *dev, int interrupts);
int mei_hw_init(struct mei_device *dev); int mei_hw_init(struct mei_device *dev);
int mei_task_initialize_clients(void *data); int mei_task_initialize_clients(void *data);
int mei_initialize_clients(struct mei_device *dev); int mei_initialize_clients(struct mei_device *dev);
void mei_allocate_me_clients_storage(struct mei_device *dev);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册