Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 256770
b: refs/heads/master
c: c2387cb
h: refs/heads/master
v: v3
  • Loading branch information
Shawn Guo authored and Grant Likely committed Jul 14, 2011
1 parent cce72c8 commit 4a7a318
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 6 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 04ee585495a6d474d1ff9a821b52abf7db99cad3
refs/heads/master: c2387cb9e55f9c85ed33a5bf086f348312158133
12 changes: 7 additions & 5 deletions trunk/drivers/spi/spi-imx.c
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,6 @@ struct spi_imx_data {
int irq;
struct clk *clk;
unsigned long spi_clk;
int *chipselect;

unsigned int count;
void (*tx)(struct spi_imx_data *);
Expand All @@ -94,6 +93,7 @@ struct spi_imx_data {
unsigned int txfifo; /* number of words pushed in tx FIFO */

struct spi_imx_devtype_data *devtype_data;
int chipselect[0];
};

static inline int is_imx27_cspi(struct spi_imx_data *d)
Expand Down Expand Up @@ -741,28 +741,30 @@ static int __devinit spi_imx_probe(struct platform_device *pdev)
struct spi_master *master;
struct spi_imx_data *spi_imx;
struct resource *res;
int i, ret;
int i, ret, num_cs;

mxc_platform_info = dev_get_platdata(&pdev->dev);
if (!mxc_platform_info) {
dev_err(&pdev->dev, "can't get the platform data\n");
return -EINVAL;
}

master = spi_alloc_master(&pdev->dev, sizeof(struct spi_imx_data));
num_cs = mxc_platform_info->num_chipselect;
master = spi_alloc_master(&pdev->dev,
sizeof(struct spi_imx_data) + sizeof(int) * num_cs);
if (!master)
return -ENOMEM;

platform_set_drvdata(pdev, master);

master->bus_num = pdev->id;
master->num_chipselect = mxc_platform_info->num_chipselect;
master->num_chipselect = num_cs;

spi_imx = spi_master_get_devdata(master);
spi_imx->bitbang.master = spi_master_get(master);
spi_imx->chipselect = mxc_platform_info->chipselect;

for (i = 0; i < master->num_chipselect; i++) {
spi_imx->chipselect[i] = mxc_platform_info->chipselect[i];
if (spi_imx->chipselect[i] < 0)
continue;
ret = gpio_request(spi_imx->chipselect[i], DRIVER_NAME);
Expand Down

0 comments on commit 4a7a318

Please sign in to comment.