summaryrefslogtreecommitdiffstats
path: root/target/linux/ps3/patches-2.6.28/0011-mtd-ps3vram-Use-proper-kernel-types.patch
blob: 1268546967469d3ff200b40c57126cadf3f77bbf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
From 993e62e674ba670341f11f60398446bb37a88e8b Mon Sep 17 00:00:00 2001
From: Geoff Levand <geoffrey.levand@am.sony.com>
Date: Tue, 6 Jan 2009 11:32:28 +0000
Subject: [PATCH] mtd/ps3vram: Use proper kernel types

Replace the use of stdint.h types with kernel types
in the ps3vram driver.

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
 drivers/mtd/devices/ps3vram.c |   56 ++++++++++++++++++++++-------------------
 1 files changed, 30 insertions(+), 26 deletions(-)

diff --git a/drivers/mtd/devices/ps3vram.c b/drivers/mtd/devices/ps3vram.c
index f5cc290..91cc2af 100644
--- a/drivers/mtd/devices/ps3vram.c
+++ b/drivers/mtd/devices/ps3vram.c
@@ -65,15 +65,15 @@ struct ps3vram_cache {
 };
 
 struct ps3vram_priv {
-	uint64_t memory_handle;
-	uint64_t context_handle;
-	uint8_t *base;
-	uint32_t *ctrl;
-	uint32_t *reports;
-	uint8_t *xdr_buf;
+	u64 memory_handle;
+	u64 context_handle;
+	u32 *ctrl;
+	u32 *reports;
+	u8 *base;
+	u8 *xdr_buf;
 
-	uint32_t *fifo_base;
-	uint32_t *fifo_ptr;
+	u32 *fifo_base;
+	u32 *fifo_ptr;
 
 	struct device *dev;
 	struct ps3vram_cache cache;
@@ -92,7 +92,7 @@ char *size = "256M-";
 module_param(size, charp, 0);
 MODULE_PARM_DESC(size, "memory size");
 
-static inline uint32_t *ps3vram_get_notifier(uint32_t *reports, int notifier)
+static u32 *ps3vram_get_notifier(u32 *reports, int notifier)
 {
 	return (void *) reports +
 		DMA_NOTIFIER_OFFSET_BASE +
@@ -102,8 +102,9 @@ static inline uint32_t *ps3vram_get_notifier(uint32_t *reports, int notifier)
 static void ps3vram_notifier_reset(struct mtd_info *mtd)
 {
 	int i;
+
 	struct ps3vram_priv *priv = mtd->priv;
-	uint32_t *notify = ps3vram_get_notifier(priv->reports, NOTIFIER);
+	u32 *notify = ps3vram_get_notifier(priv->reports, NOTIFIER);
 	for (i = 0; i < 4; i++)
 		notify[i] = 0xffffffff;
 }
@@ -111,7 +112,7 @@ static void ps3vram_notifier_reset(struct mtd_info *mtd)
 static int ps3vram_notifier_wait(struct mtd_info *mtd, int timeout_ms)
 {
 	struct ps3vram_priv *priv = mtd->priv;
-	uint32_t *notify = ps3vram_get_notifier(priv->reports, NOTIFIER);
+	u32 *notify = ps3vram_get_notifier(priv->reports, NOTIFIER);
 
 	timeout_ms *= 1000;
 
@@ -155,13 +156,13 @@ static int ps3vram_wait_ring(struct mtd_info *mtd, int timeout)
 	return 0;
 }
 
-static inline void ps3vram_out_ring(struct ps3vram_priv *priv, uint32_t data)
+static void ps3vram_out_ring(struct ps3vram_priv *priv, u32 data)
 {
 	*(priv->fifo_ptr)++ = data;
 }
 
-static inline void ps3vram_begin_ring(struct ps3vram_priv *priv, uint32_t chan,
-				      uint32_t tag, uint32_t size)
+static void ps3vram_begin_ring(struct ps3vram_priv *priv, u32 chan,
+				      u32 tag, u32 size)
 {
 	ps3vram_out_ring(priv, (size << 18) | (chan << 13) | tag);
 }
@@ -194,7 +195,7 @@ static void ps3vram_fire_ring(struct mtd_info *mtd)
 	mutex_lock(&ps3_gpu_mutex);
 
 	priv->ctrl[CTRL_PUT] = FIFO_BASE + FIFO_OFFSET +
-		(priv->fifo_ptr - priv->fifo_base) * sizeof(uint32_t);
+		(priv->fifo_ptr - priv->fifo_base) * sizeof(u32);
 
 	/* asking the HV for a blit will kick the fifo */
 	status = lv1_gpu_context_attribute(priv->context_handle,
@@ -204,8 +205,8 @@ static void ps3vram_fire_ring(struct mtd_info *mtd)
 		dev_err(priv->dev, "%s:%d: lv1_gpu_context_attribute failed\n",
 			__func__, __LINE__);
 
-	if ((priv->fifo_ptr - priv->fifo_base) * sizeof(uint32_t) >
-	    FIFO_SIZE - 1024) {
+	if ((priv->fifo_ptr - priv->fifo_base) * sizeof(u32) >
+		FIFO_SIZE - 1024) {
 		dev_dbg(priv->dev, "%s:%d: fifo full, rewinding\n", __func__,
 			__LINE__);
 		ps3vram_wait_ring(mtd, 200);
@@ -538,10 +539,13 @@ static int ps3vram_write(struct mtd_info *mtd, loff_t to, size_t len,
 static int __devinit ps3vram_probe(struct ps3_system_bus_device *dev)
 {
 	struct ps3vram_priv *priv;
-	uint64_t status;
-	uint64_t ddr_lpar, ctrl_lpar, info_lpar, reports_lpar;
-	int64_t ddr_size;
-	uint64_t reports_size;
+	int status;
+	u64 ddr_lpar;
+	u64 ctrl_lpar;
+	u64 info_lpar;
+	u64 reports_lpar;
+	u64 ddr_size;
+	u64 reports_size;
 	int ret = -ENOMEM;
 	char *rest;
 
@@ -555,8 +559,8 @@ static int __devinit ps3vram_probe(struct ps3_system_bus_device *dev)
 	priv->dev = &dev->core;
 
 	/* Allocate XDR buffer (1MiB aligned) */
-	priv->xdr_buf = (uint8_t *) __get_free_pages(GFP_KERNEL,
-						     get_order(XDR_BUF_SIZE));
+	priv->xdr_buf = (void *)__get_free_pages(GFP_KERNEL,
+		get_order(XDR_BUF_SIZE));
 	if (priv->xdr_buf == NULL) {
 		dev_dbg(&dev->core, "%s:%d: could not allocate XDR buffer\n",
 			__func__, __LINE__);
@@ -565,7 +569,7 @@ static int __devinit ps3vram_probe(struct ps3_system_bus_device *dev)
 	}
 
 	/* Put FIFO at begginning of XDR buffer */
-	priv->fifo_base = (uint32_t *) (priv->xdr_buf + FIFO_OFFSET);
+	priv->fifo_base = (u32 *) (priv->xdr_buf + FIFO_OFFSET);
 	priv->fifo_ptr = priv->fifo_base;
 
 	/* XXX: Need to open GPU, in case ps3fb or snd_ps3 aren't loaded */
@@ -593,11 +597,11 @@ static int __devinit ps3vram_probe(struct ps3_system_bus_device *dev)
 		status = lv1_gpu_memory_allocate(ddr_size, 0, 0, 0, 0,
 						 &priv->memory_handle,
 						 &ddr_lpar);
-		if (status == 0)
+		if (!status)
 			break;
 		ddr_size -= 1024*1024;
 	}
-	if (status != 0 || ddr_size <= 0) {
+	if (status || ddr_size <= 0) {
 		dev_err(&dev->core, "%s:%d: lv1_gpu_memory_allocate failed\n",
 			__func__, __LINE__);
 		ret = -ENOMEM;
-- 
1.6.0.4