Merge branch 'upstream-fixes'
This commit is contained in:
@@ -1537,6 +1537,9 @@ _STATIC(__boot_from_prom)
|
|||||||
mr r28,r6
|
mr r28,r6
|
||||||
mr r27,r7
|
mr r27,r7
|
||||||
|
|
||||||
|
/* Align the stack to 16-byte boundary for broken yaboot */
|
||||||
|
rldicr r1,r1,0,59
|
||||||
|
|
||||||
/* Make sure we are running in 64 bits mode */
|
/* Make sure we are running in 64 bits mode */
|
||||||
bl .enable_64b_mode
|
bl .enable_64b_mode
|
||||||
|
|
||||||
|
@@ -131,7 +131,9 @@ enum {
|
|||||||
rng_hw_none,
|
rng_hw_none,
|
||||||
rng_hw_intel,
|
rng_hw_intel,
|
||||||
rng_hw_amd,
|
rng_hw_amd,
|
||||||
|
#ifdef __i386__
|
||||||
rng_hw_via,
|
rng_hw_via,
|
||||||
|
#endif
|
||||||
rng_hw_geode,
|
rng_hw_geode,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -37,7 +37,7 @@
|
|||||||
#include <linux/config.h>
|
#include <linux/config.h>
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/device.h>
|
#include <linux/platform_device.h>
|
||||||
#include <linux/mm.h>
|
#include <linux/mm.h>
|
||||||
#include <linux/interrupt.h>
|
#include <linux/interrupt.h>
|
||||||
#include <linux/dma-mapping.h>
|
#include <linux/dma-mapping.h>
|
||||||
@@ -194,7 +194,7 @@ static int au1xmmc_send_command(struct au1xmmc_host *host, int wait,
|
|||||||
|
|
||||||
u32 mmccmd = (cmd->opcode << SD_CMD_CI_SHIFT);
|
u32 mmccmd = (cmd->opcode << SD_CMD_CI_SHIFT);
|
||||||
|
|
||||||
switch (mmc_rsp_type(cmd->flags)) {
|
switch (mmc_resp_type(cmd)) {
|
||||||
case MMC_RSP_R1:
|
case MMC_RSP_R1:
|
||||||
mmccmd |= SD_CMD_RT_1;
|
mmccmd |= SD_CMD_RT_1;
|
||||||
break;
|
break;
|
||||||
@@ -740,7 +740,6 @@ static void au1xmmc_set_ios(struct mmc_host* mmc, struct mmc_ios* ios)
|
|||||||
static void au1xmmc_dma_callback(int irq, void *dev_id, struct pt_regs *regs)
|
static void au1xmmc_dma_callback(int irq, void *dev_id, struct pt_regs *regs)
|
||||||
{
|
{
|
||||||
struct au1xmmc_host *host = (struct au1xmmc_host *) dev_id;
|
struct au1xmmc_host *host = (struct au1xmmc_host *) dev_id;
|
||||||
u32 status;
|
|
||||||
|
|
||||||
/* Avoid spurious interrupts */
|
/* Avoid spurious interrupts */
|
||||||
|
|
||||||
@@ -887,7 +886,7 @@ struct mmc_host_ops au1xmmc_ops = {
|
|||||||
.set_ios = au1xmmc_set_ios,
|
.set_ios = au1xmmc_set_ios,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int au1xmmc_probe(struct device *dev)
|
static int __devinit au1xmmc_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
|
|
||||||
int i, ret = 0;
|
int i, ret = 0;
|
||||||
@@ -904,7 +903,7 @@ static int au1xmmc_probe(struct device *dev)
|
|||||||
disable_irq(AU1100_SD_IRQ);
|
disable_irq(AU1100_SD_IRQ);
|
||||||
|
|
||||||
for(i = 0; i < AU1XMMC_CONTROLLER_COUNT; i++) {
|
for(i = 0; i < AU1XMMC_CONTROLLER_COUNT; i++) {
|
||||||
struct mmc_host *mmc = mmc_alloc_host(sizeof(struct au1xmmc_host), dev);
|
struct mmc_host *mmc = mmc_alloc_host(sizeof(struct au1xmmc_host), &pdev->dev);
|
||||||
struct au1xmmc_host *host = 0;
|
struct au1xmmc_host *host = 0;
|
||||||
|
|
||||||
if (!mmc) {
|
if (!mmc) {
|
||||||
@@ -967,7 +966,7 @@ static int au1xmmc_probe(struct device *dev)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int au1xmmc_remove(struct device *dev)
|
static int __devexit au1xmmc_remove(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
|
|
||||||
int i;
|
int i;
|
||||||
@@ -997,23 +996,24 @@ static int au1xmmc_remove(struct device *dev)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct device_driver au1xmmc_driver = {
|
static struct platform_driver au1xmmc_driver = {
|
||||||
.name = DRIVER_NAME,
|
|
||||||
.bus = &platform_bus_type,
|
|
||||||
.probe = au1xmmc_probe,
|
.probe = au1xmmc_probe,
|
||||||
.remove = au1xmmc_remove,
|
.remove = au1xmmc_remove,
|
||||||
.suspend = NULL,
|
.suspend = NULL,
|
||||||
.resume = NULL
|
.resume = NULL,
|
||||||
|
.driver = {
|
||||||
|
.name = DRIVER_NAME,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init au1xmmc_init(void)
|
static int __init au1xmmc_init(void)
|
||||||
{
|
{
|
||||||
return driver_register(&au1xmmc_driver);
|
return platform_driver_register(&au1xmmc_driver);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __exit au1xmmc_exit(void)
|
static void __exit au1xmmc_exit(void)
|
||||||
{
|
{
|
||||||
driver_unregister(&au1xmmc_driver);
|
platform_driver_unregister(&au1xmmc_driver);
|
||||||
}
|
}
|
||||||
|
|
||||||
module_init(au1xmmc_init);
|
module_init(au1xmmc_init);
|
||||||
|
@@ -296,9 +296,7 @@ void t1_espi_destroy(struct peespi *espi)
|
|||||||
|
|
||||||
struct peespi *t1_espi_create(adapter_t *adapter)
|
struct peespi *t1_espi_create(adapter_t *adapter)
|
||||||
{
|
{
|
||||||
struct peespi *espi = kmalloc(sizeof(*espi), GFP_KERNEL);
|
struct peespi *espi = kzalloc(sizeof(*espi), GFP_KERNEL);
|
||||||
|
|
||||||
memset(espi, 0, sizeof(*espi));
|
|
||||||
|
|
||||||
if (espi)
|
if (espi)
|
||||||
espi->adapter = adapter;
|
espi->adapter = adapter;
|
||||||
|
@@ -247,7 +247,7 @@ static int linear_search_in_dir_item(struct cpu_key *key,
|
|||||||
/* mark, that this generation number is used */
|
/* mark, that this generation number is used */
|
||||||
if (de->de_gen_number_bit_string)
|
if (de->de_gen_number_bit_string)
|
||||||
set_bit(GET_GENERATION_NUMBER(deh_offset(deh)),
|
set_bit(GET_GENERATION_NUMBER(deh_offset(deh)),
|
||||||
(unsigned long *)de->de_gen_number_bit_string);
|
de->de_gen_number_bit_string);
|
||||||
|
|
||||||
// calculate pointer to name and namelen
|
// calculate pointer to name and namelen
|
||||||
de->de_entry_num = i;
|
de->de_entry_num = i;
|
||||||
@@ -431,7 +431,7 @@ static int reiserfs_add_entry(struct reiserfs_transaction_handle *th,
|
|||||||
struct reiserfs_de_head *deh;
|
struct reiserfs_de_head *deh;
|
||||||
INITIALIZE_PATH(path);
|
INITIALIZE_PATH(path);
|
||||||
struct reiserfs_dir_entry de;
|
struct reiserfs_dir_entry de;
|
||||||
int bit_string[MAX_GENERATION_NUMBER / (sizeof(int) * 8) + 1];
|
DECLARE_BITMAP(bit_string, MAX_GENERATION_NUMBER + 1);
|
||||||
int gen_number;
|
int gen_number;
|
||||||
char small_buf[32 + DEH_SIZE]; /* 48 bytes now and we avoid kmalloc
|
char small_buf[32 + DEH_SIZE]; /* 48 bytes now and we avoid kmalloc
|
||||||
if we create file with short name */
|
if we create file with short name */
|
||||||
@@ -486,7 +486,7 @@ static int reiserfs_add_entry(struct reiserfs_transaction_handle *th,
|
|||||||
|
|
||||||
/* find the proper place for the new entry */
|
/* find the proper place for the new entry */
|
||||||
memset(bit_string, 0, sizeof(bit_string));
|
memset(bit_string, 0, sizeof(bit_string));
|
||||||
de.de_gen_number_bit_string = (char *)bit_string;
|
de.de_gen_number_bit_string = bit_string;
|
||||||
retval = reiserfs_find_entry(dir, name, namelen, &path, &de);
|
retval = reiserfs_find_entry(dir, name, namelen, &path, &de);
|
||||||
if (retval != NAME_NOT_FOUND) {
|
if (retval != NAME_NOT_FOUND) {
|
||||||
if (buffer != small_buf)
|
if (buffer != small_buf)
|
||||||
@@ -508,7 +508,7 @@ static int reiserfs_add_entry(struct reiserfs_transaction_handle *th,
|
|||||||
}
|
}
|
||||||
|
|
||||||
gen_number =
|
gen_number =
|
||||||
find_first_zero_bit((unsigned long *)bit_string,
|
find_first_zero_bit(bit_string,
|
||||||
MAX_GENERATION_NUMBER + 1);
|
MAX_GENERATION_NUMBER + 1);
|
||||||
if (gen_number > MAX_GENERATION_NUMBER) {
|
if (gen_number > MAX_GENERATION_NUMBER) {
|
||||||
/* there is no free generation number */
|
/* there is no free generation number */
|
||||||
|
@@ -1052,7 +1052,7 @@ struct reiserfs_dir_entry {
|
|||||||
int de_entrylen;
|
int de_entrylen;
|
||||||
int de_namelen;
|
int de_namelen;
|
||||||
char *de_name;
|
char *de_name;
|
||||||
char *de_gen_number_bit_string;
|
unsigned long *de_gen_number_bit_string;
|
||||||
|
|
||||||
__u32 de_dir_id;
|
__u32 de_dir_id;
|
||||||
__u32 de_objectid;
|
__u32 de_objectid;
|
||||||
|
Reference in New Issue
Block a user