Displaying 15 results from an estimated 15 matches for "max_w".
Did you mean:
max_e
2016 Nov 30
3
[PATCH v3 1/3] nvbios/power_budget: Add basic power budget parsing
...b/drm/nouveau/include/nvkm/subdev/bios/power_budget.h
> @@ -0,0 +1,25 @@
> +#ifndef __NVBIOS_POWER_BUDGET_H__
> +#define __NVBIOS_POWER_BUDGET_H__
> +
> +#include <nvkm/subdev/bios.h>
> +
> +struct nvbios_power_budget_entry {
> + u32 min_w;
> + u32 avg_w;
> + u32 max_w;
> +};
> +
> +struct nvbios_power_budget {
> + u32 offset;
> + u8 hlen;
> + u8 elen;
> + u8 ecount;
> + u8 cap_entry;
> +};
> +
> +int nvbios_power_budget_header(struct nvkm_bios *,
> + struct nvbios_power_budget *);
> +int nv...
2016 Nov 30
1
[PATCH v3 1/3] nvbios/power_budget: Add basic power budget parsing
...> +#ifndef __NVBIOS_POWER_BUDGET_H__
>>> +#define __NVBIOS_POWER_BUDGET_H__
>>> +
>>> +#include <nvkm/subdev/bios.h>
>>> +
>>> +struct nvbios_power_budget_entry {
>>> + u32 min_w;
>>> + u32 avg_w;
>>> + u32 max_w;
>>> +};
>>> +
>>> +struct nvbios_power_budget {
>>> + u32 offset;
>>> + u8 hlen;
>>> + u8 elen;
>>> + u8 ecount;
>>> + u8 cap_entry;
>>> +};
>>> +
>>> +int nvbios_power_budget...
2016 Oct 25
1
[PATCH 1/3] nvbios/power_budget: Add basic power budget parsing
...b/drm/nouveau/include/nvkm/subdev/bios/power_budget.h
> @@ -0,0 +1,20 @@
> +#ifndef __NVBIOS_POWER_BUDGET_H__
> +#define __NVBIOS_POWER_BUDGET_H__
> +
> +#include <nvkm/subdev/bios.h>
> +
> +struct nvbios_power_budget_entry {
> + u32 min_w;
> + u32 avg_w;
> + u32 max_w;
> +};
> +
> +struct nvbios_power_budget {
> + u8 nr_entry;
> + u8 cap_entry;
> + struct nvbios_power_budget_entry *entries;
> +};
> +
> +int nvbios_power_budget_parse(struct nvkm_bios *, struct nvbios_power_budget *);
> +
> +#endif
> diff --git a/drm/nouveau/n...
2016 Nov 12
1
[PATCH 1/3] nvbios/power_budget: Add basic power budget parsing
...b/drm/nouveau/include/nvkm/subdev/bios/power_budget.h
> @@ -0,0 +1,24 @@
> +#ifndef __NVBIOS_POWER_BUDGET_H__
> +#define __NVBIOS_POWER_BUDGET_H__
> +
> +#include <nvkm/subdev/bios.h>
> +
> +struct nvbios_power_budget_entry {
> + u32 min_w;
> + u32 avg_w;
> + u32 max_w;
> +};
> +
> +struct nvbios_power_budget {
> + u32 offset;
> + u8 header_len;
> + u8 entry_len;
> + u8 entry_count;
> + u8 cap_entry;
> +};
> +
> +int nvbios_power_budget_header(struct nvkm_bios *, struct nvbios_power_budget *);
> +int nvbios_power_budget_ent...
2016 Nov 12
4
[PATCH 0/3] Expose power budget cap via hwmon
There is an optinal header field in the power budget table we can use to
read out the power cap of the GPU.
We should have this in the kernel before actually using it to catch errors
and see how reliable this is, but as it seems it works on all GPUs as
expected on Kepler und Maxwells with the power cap field set in the vbios.
This series keeps things really simple for now until we figure out
2016 Nov 30
4
[PATCH v3 0/3] Expose power budget cap via hwmon
There is an optinal header field in the power budget table we can use to
read out the power cap of the GPU.
We should have this in the kernel before actually using it to catch errors
and see how reliable this is, but as it seems it works on all GPUs as
expected on Kepler und Maxwells with the power cap field set in the vbios.
This series keeps things really simple for now until we figure out
2016 Oct 24
0
[PATCH 1/3] nvbios/power_budget: Add basic power budget parsing
...e 100644
index 0000000..dd65c08
--- /dev/null
+++ b/drm/nouveau/include/nvkm/subdev/bios/power_budget.h
@@ -0,0 +1,20 @@
+#ifndef __NVBIOS_POWER_BUDGET_H__
+#define __NVBIOS_POWER_BUDGET_H__
+
+#include <nvkm/subdev/bios.h>
+
+struct nvbios_power_budget_entry {
+ u32 min_w;
+ u32 avg_w;
+ u32 max_w;
+};
+
+struct nvbios_power_budget {
+ u8 nr_entry;
+ u8 cap_entry;
+ struct nvbios_power_budget_entry *entries;
+};
+
+int nvbios_power_budget_parse(struct nvkm_bios *, struct nvbios_power_budget *);
+
+#endif
diff --git a/drm/nouveau/nvkm/subdev/bios/Kbuild b/drm/nouveau/nvkm/subdev/bios/Kbuild...
2016 Oct 24
7
RFC [PATCH 0/3] Expose power budget cap via hwmon
There is an optinal header field in the power budget table we can use to
read out the power cap of the GPU.
Sadly it is optional and if that field isn't sad, things beome
complicated.
Anyhow, this is good enough for most cards and we can use it later for
capping the power consumption of the GPUs, but first, just export those
values through hwmon.
First design, will change stuff, want
2016 Nov 12
0
[PATCH 1/3] nvbios/power_budget: Add basic power budget parsing
...e 100644
index 0000000..f295cc7
--- /dev/null
+++ b/drm/nouveau/include/nvkm/subdev/bios/power_budget.h
@@ -0,0 +1,24 @@
+#ifndef __NVBIOS_POWER_BUDGET_H__
+#define __NVBIOS_POWER_BUDGET_H__
+
+#include <nvkm/subdev/bios.h>
+
+struct nvbios_power_budget_entry {
+ u32 min_w;
+ u32 avg_w;
+ u32 max_w;
+};
+
+struct nvbios_power_budget {
+ u32 offset;
+ u8 header_len;
+ u8 entry_len;
+ u8 entry_count;
+ u8 cap_entry;
+};
+
+int nvbios_power_budget_header(struct nvkm_bios *, struct nvbios_power_budget *);
+int nvbios_power_budget_entry(struct nvkm_bios *, struct nvbios_power_budget *,
+...
2016 Nov 30
0
[PATCH v3 1/3] nvbios/power_budget: Add basic power budget parsing
...100644
index 00000000..89fd4a7a
--- /dev/null
+++ b/drm/nouveau/include/nvkm/subdev/bios/power_budget.h
@@ -0,0 +1,25 @@
+#ifndef __NVBIOS_POWER_BUDGET_H__
+#define __NVBIOS_POWER_BUDGET_H__
+
+#include <nvkm/subdev/bios.h>
+
+struct nvbios_power_budget_entry {
+ u32 min_w;
+ u32 avg_w;
+ u32 max_w;
+};
+
+struct nvbios_power_budget {
+ u32 offset;
+ u8 hlen;
+ u8 elen;
+ u8 ecount;
+ u8 cap_entry;
+};
+
+int nvbios_power_budget_header(struct nvkm_bios *,
+ struct nvbios_power_budget *);
+int nvbios_power_budget_entry(struct nvkm_bios *, struct nvbios_power_b...
2016 Nov 30
0
[PATCH v3 1/3] nvbios/power_budget: Add basic power budget parsing
...h
>> @@ -0,0 +1,25 @@
>> +#ifndef __NVBIOS_POWER_BUDGET_H__
>> +#define __NVBIOS_POWER_BUDGET_H__
>> +
>> +#include <nvkm/subdev/bios.h>
>> +
>> +struct nvbios_power_budget_entry {
>> + u32 min_w;
>> + u32 avg_w;
>> + u32 max_w;
>> +};
>> +
>> +struct nvbios_power_budget {
>> + u32 offset;
>> + u8 hlen;
>> + u8 elen;
>> + u8 ecount;
>> + u8 cap_entry;
>> +};
>> +
>> +int nvbios_power_budget_header(struct nvkm_bios *,
>> +...
2017 Jan 23
3
[PATCH v4 0/3] Expose power budget cap via hwmon
There is an optinal header field in the power budget table we can use to
read out the power cap of the GPU.
The meaning of this header field was confirmed with nvidia-smi -q:
The rows "Min Power Limit", "Power Limit" and "Max Power Limit" are set
to the "min", "avg" and "max" values from the referenced power budget
entry respectively.
2016 Oct 24
0
[PATCH 2/3] subdev/iccsense: Parse max and crit power level
...bl.nr_entry)
+ if (!bios)
+ return 0;
+
+ if (!nvbios_power_budget_parse(bios, &budget) && budget.nr_entry &&
+ budget.cap_entry != 0xff) {
+ iccsense->power_w_max = budget.entries[budget.cap_entry].avg_w;
+ iccsense->power_w_crit = budget.entries[budget.cap_entry].max_w;
+ }
+
+ if (nvbios_iccsense_parse(bios, &stbl) || !stbl.nr_entry)
return 0;
iccsense->data_valid = true;
--
2.10.0
2010 Jan 18
0
[PATCH] nv04-nv40: Rewrite and unify miptree and transfer code
...= ((struct nv04_miptree*)src->texture)->bo;
+ struct nouveau_bo *dst_bo = ((struct nv04_miptree*)dst->texture)->bo;
const unsigned src_pitch = ((struct nv04_surface *)src)->pitch;
/* Max width & height may not be the same on all HW, but must be POT */
const unsigned max_w = 1024;
@@ -205,8 +205,8 @@ nv04_surface_copy_m2mf(struct nv04_surface_2d *ctx,
{
struct nouveau_channel *chan = ctx->m2mf->channel;
struct nouveau_grobj *m2mf = ctx->m2mf;
- struct nouveau_bo *src_bo = nouveau_bo(ctx->buf(src));
- struct nouveau_bo *dst_bo = nouveau_bo(ctx->buf...
2010 Jan 18
0
[PATCH] nv04-nv40: Rewrite and unify miptree and transfer code (v2)
...= ((struct nv04_miptree*)src->texture)->bo;
+ struct nouveau_bo *dst_bo = ((struct nv04_miptree*)dst->texture)->bo;
const unsigned src_pitch = ((struct nv04_surface *)src)->pitch;
/* Max width & height may not be the same on all HW, but must be POT */
const unsigned max_w = 1024;
@@ -205,8 +205,8 @@ nv04_surface_copy_m2mf(struct nv04_surface_2d *ctx,
{
struct nouveau_channel *chan = ctx->m2mf->channel;
struct nouveau_grobj *m2mf = ctx->m2mf;
- struct nouveau_bo *src_bo = nouveau_bo(ctx->buf(src));
- struct nouveau_bo *dst_bo = nouveau_bo(ctx->buf...