Displaying 7 results from an estimated 7 matches for "nvbios_init_opcode".
2016 Jun 04
0
[PATCH 3/3] nvkm/init: Add support for opcode 0xaf
...= 0; i < sets; i++) {
+ for (j = 0; j < regs; j++, init->offset += 4) {
+ addr = nvbios_rd32(bios, reg_off + (j * 4));
+ data = nvbios_rd32(bios, init->offset);
+ init_wr32(init, addr, data);
+ trace("\tR[0x%06x] = 0x%08x\n", addr, data);
+ }
+ }
+}
+
static struct nvbios_init_opcode {
void (*exec)(struct nvbios_init *);
} init_opcode[] = {
@@ -2268,6 +2294,7 @@ static struct nvbios_init_opcode {
[0x9a] = { init_i2c_long_if },
[0xa9] = { init_gpio_ne },
[0xaa] = { init_reserved },
+ [0xaf] = { init_zm_reg_set_loop },
};
#define init_opcode_nr (sizeof(init_opcode) /...
2019 Jun 02
3
[PATCH 0/2] drm/nouveau/bios/init: Improve pre-PMU devinit opcode coverage
NVIDIA GPUs include a common scripting language (devinit) that can be
interpreted by a number of "engines", e.g. within a kernel-mode software
driver, the VGA BIOS or an on-board small microcontroller which provides
certain security assertions (the 'PMU').
This system allows a GPU programming sequence to be shared by multiple
entities that would not otherwise be able to execute
2016 Jun 04
3
PM + Init work
Following a series of three patches, two of which have been sitting in my tree
for a while, the third is the result of some inspection of an NV134 BIOS that
seems to use the 0xaf upcode to upload training patterns. Please test!
Roy
Ps. Sorry they come from yet another e-mail address. My previous provider,
eclipso, actively blocks users of git send-email. Inquiries fall on deaf
ears, hence I
2017 Sep 03
0
[PATCH 4/10] drm/nouveau/bios/init: Use ARRAY_SIZE macro
...km/subdev/bios/init.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/init.c
@@ -21,6 +21,7 @@
*
* Authors: Ben Skeggs
*/
+#include <linux/kernel.h>
#include <subdev/bios.h>
#include <subdev/bios/bit.h>
#include <subdev/bios/bmp.h>
@@ -2271,7 +2272,7 @@ static struct nvbios_init_opcode {
[0xaa] = { init_reserved },
};
-#define init_opcode_nr (sizeof(init_opcode) / sizeof(init_opcode[0]))
+#define init_opcode_nr (ARRAY_SIZE(init_opcode))
int
nvbios_exec(struct nvbios_init *init)
2017 Oct 16
0
[PATCH] drm/nouveau/bios/init: use ARRAY_SIZE
...t;linux/kernel.h>
+
#define bioslog(lvl, fmt, args...) do { \
nvkm_printk(init->subdev, lvl, info, "0x%08x[%c]: "fmt, \
init->offset, init_exec(init) ? \
@@ -2271,8 +2273,6 @@ static struct nvbios_init_opcode {
[0xaa] = { init_reserved },
};
-#define init_opcode_nr (sizeof(init_opcode) / sizeof(init_opcode[0]))
-
int
nvbios_exec(struct nvbios_init *init)
{
@@ -2281,7 +2281,8 @@ nvbios_exec(struct nvbios_init *init)
init->nested++;
while (init->offset) {
u8 opcode = nvbios_rd08(bios,...
2017 Oct 01
0
[PATCH 06/18] drm: use ARRAY_SIZE
...t;linux/kernel.h>
+
#define bioslog(lvl, fmt, args...) do { \
nvkm_printk(init->subdev, lvl, info, "0x%08x[%c]: "fmt, \
init->offset, init_exec(init) ? \
@@ -2271,8 +2273,6 @@ static struct nvbios_init_opcode {
[0xaa] = { init_reserved },
};
-#define init_opcode_nr (sizeof(init_opcode) / sizeof(init_opcode[0]))
-
int
nvbios_exec(struct nvbios_init *init)
{
@@ -2281,7 +2281,8 @@ nvbios_exec(struct nvbios_init *init)
init->nested++;
while (init->offset) {
u8 opcode = nvbios_rd08(bios,...
2017 Oct 01
6
[PATCH 00/18] use ARRAY_SIZE macro
Hi everyone,
Using ARRAY_SIZE improves the code readability. I used coccinelle (I
made a change to the array_size.cocci file [1]) to find several places
where ARRAY_SIZE could be used instead of other macros or sizeof
division.
I tried to divide the changes into a patch per subsystem (excepted for
staging). If one of the patch should be split into several patches, let
me know.
In order to reduce