Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
2094dd82
Commit
2094dd82
authored
Jul 27, 2012
by
Ben Skeggs
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
drm/nouveau/device: include the official chipset names
Signed-off-by:
Ben Skeggs
<
bskeggs@redhat.com
>
parent
51a3d342
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
61 additions
and
1 deletion
+61
-1
drivers/gpu/drm/nouveau/core/subdev/device/base.c
drivers/gpu/drm/nouveau/core/subdev/device/base.c
+2
-1
drivers/gpu/drm/nouveau/core/subdev/device/nv04.c
drivers/gpu/drm/nouveau/core/subdev/device/nv04.c
+2
-0
drivers/gpu/drm/nouveau/core/subdev/device/nv10.c
drivers/gpu/drm/nouveau/core/subdev/device/nv10.c
+8
-0
drivers/gpu/drm/nouveau/core/subdev/device/nv20.c
drivers/gpu/drm/nouveau/core/subdev/device/nv20.c
+4
-0
drivers/gpu/drm/nouveau/core/subdev/device/nv30.c
drivers/gpu/drm/nouveau/core/subdev/device/nv30.c
+5
-0
drivers/gpu/drm/nouveau/core/subdev/device/nv40.c
drivers/gpu/drm/nouveau/core/subdev/device/nv40.c
+16
-0
drivers/gpu/drm/nouveau/core/subdev/device/nv50.c
drivers/gpu/drm/nouveau/core/subdev/device/nv50.c
+14
-0
drivers/gpu/drm/nouveau/core/subdev/device/nvc0.c
drivers/gpu/drm/nouveau/core/subdev/device/nvc0.c
+8
-0
drivers/gpu/drm/nouveau/core/subdev/device/nve0.c
drivers/gpu/drm/nouveau/core/subdev/device/nve0.c
+2
-0
No files found.
drivers/gpu/drm/nouveau/core/subdev/device/base.c
View file @
2094dd82
...
@@ -204,7 +204,8 @@ nouveau_devobj_ctor(struct nouveau_object *parent,
...
@@ -204,7 +204,8 @@ nouveau_devobj_ctor(struct nouveau_object *parent,
}
}
nv_info
(
device
,
"BOOT0 : 0x%08x
\n
"
,
boot0
);
nv_info
(
device
,
"BOOT0 : 0x%08x
\n
"
,
boot0
);
nv_info
(
device
,
"Chipset: NV%02X
\n
"
,
device
->
chipset
);
nv_info
(
device
,
"Chipset: %s (NV%02X)
\n
"
,
device
->
cname
,
device
->
chipset
);
nv_info
(
device
,
"Family : NV%02X
\n
"
,
device
->
card_type
);
nv_info
(
device
,
"Family : NV%02X
\n
"
,
device
->
card_type
);
/* determine frequency of timing crystal */
/* determine frequency of timing crystal */
...
...
drivers/gpu/drm/nouveau/core/subdev/device/nv04.c
View file @
2094dd82
...
@@ -44,6 +44,7 @@ nv04_identify(struct nouveau_device *device)
...
@@ -44,6 +44,7 @@ nv04_identify(struct nouveau_device *device)
{
{
switch
(
device
->
chipset
)
{
switch
(
device
->
chipset
)
{
case
0x04
:
case
0x04
:
device
->
cname
=
"NV04"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_CLOCK
]
=
&
nv04_clock_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_CLOCK
]
=
&
nv04_clock_oclass
;
...
@@ -60,6 +61,7 @@ nv04_identify(struct nouveau_device *device)
...
@@ -60,6 +61,7 @@ nv04_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x05
:
case
0x05
:
device
->
cname
=
"NV05"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_CLOCK
]
=
&
nv04_clock_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_CLOCK
]
=
&
nv04_clock_oclass
;
...
...
drivers/gpu/drm/nouveau/core/subdev/device/nv10.c
View file @
2094dd82
...
@@ -45,6 +45,7 @@ nv10_identify(struct nouveau_device *device)
...
@@ -45,6 +45,7 @@ nv10_identify(struct nouveau_device *device)
{
{
switch
(
device
->
chipset
)
{
switch
(
device
->
chipset
)
{
case
0x10
:
case
0x10
:
device
->
cname
=
"NV10"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -60,6 +61,7 @@ nv10_identify(struct nouveau_device *device)
...
@@ -60,6 +61,7 @@ nv10_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x15
:
case
0x15
:
device
->
cname
=
"NV15"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -77,6 +79,7 @@ nv10_identify(struct nouveau_device *device)
...
@@ -77,6 +79,7 @@ nv10_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x16
:
case
0x16
:
device
->
cname
=
"NV16"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -94,6 +97,7 @@ nv10_identify(struct nouveau_device *device)
...
@@ -94,6 +97,7 @@ nv10_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x1a
:
case
0x1a
:
device
->
cname
=
"nForce"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -111,6 +115,7 @@ nv10_identify(struct nouveau_device *device)
...
@@ -111,6 +115,7 @@ nv10_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x11
:
case
0x11
:
device
->
cname
=
"NV11"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -128,6 +133,7 @@ nv10_identify(struct nouveau_device *device)
...
@@ -128,6 +133,7 @@ nv10_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x17
:
case
0x17
:
device
->
cname
=
"NV17"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -145,6 +151,7 @@ nv10_identify(struct nouveau_device *device)
...
@@ -145,6 +151,7 @@ nv10_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x1f
:
case
0x1f
:
device
->
cname
=
"nForce2"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -162,6 +169,7 @@ nv10_identify(struct nouveau_device *device)
...
@@ -162,6 +169,7 @@ nv10_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x18
:
case
0x18
:
device
->
cname
=
"NV18"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
...
drivers/gpu/drm/nouveau/core/subdev/device/nv20.c
View file @
2094dd82
...
@@ -45,6 +45,7 @@ nv20_identify(struct nouveau_device *device)
...
@@ -45,6 +45,7 @@ nv20_identify(struct nouveau_device *device)
{
{
switch
(
device
->
chipset
)
{
switch
(
device
->
chipset
)
{
case
0x20
:
case
0x20
:
device
->
cname
=
"NV20"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -62,6 +63,7 @@ nv20_identify(struct nouveau_device *device)
...
@@ -62,6 +63,7 @@ nv20_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x25
:
case
0x25
:
device
->
cname
=
"NV25"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -79,6 +81,7 @@ nv20_identify(struct nouveau_device *device)
...
@@ -79,6 +81,7 @@ nv20_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x28
:
case
0x28
:
device
->
cname
=
"NV28"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -96,6 +99,7 @@ nv20_identify(struct nouveau_device *device)
...
@@ -96,6 +99,7 @@ nv20_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x2a
:
case
0x2a
:
device
->
cname
=
"NV2A"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
...
drivers/gpu/drm/nouveau/core/subdev/device/nv30.c
View file @
2094dd82
...
@@ -46,6 +46,7 @@ nv30_identify(struct nouveau_device *device)
...
@@ -46,6 +46,7 @@ nv30_identify(struct nouveau_device *device)
{
{
switch
(
device
->
chipset
)
{
switch
(
device
->
chipset
)
{
case
0x30
:
case
0x30
:
device
->
cname
=
"NV30"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -63,6 +64,7 @@ nv30_identify(struct nouveau_device *device)
...
@@ -63,6 +64,7 @@ nv30_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x35
:
case
0x35
:
device
->
cname
=
"NV35"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -80,6 +82,7 @@ nv30_identify(struct nouveau_device *device)
...
@@ -80,6 +82,7 @@ nv30_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x31
:
case
0x31
:
device
->
cname
=
"NV31"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -98,6 +101,7 @@ nv30_identify(struct nouveau_device *device)
...
@@ -98,6 +101,7 @@ nv30_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x36
:
case
0x36
:
device
->
cname
=
"NV36"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -116,6 +120,7 @@ nv30_identify(struct nouveau_device *device)
...
@@ -116,6 +120,7 @@ nv30_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x34
:
case
0x34
:
device
->
cname
=
"NV34"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
...
drivers/gpu/drm/nouveau/core/subdev/device/nv40.c
View file @
2094dd82
...
@@ -46,6 +46,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -46,6 +46,7 @@ nv40_identify(struct nouveau_device *device)
{
{
switch
(
device
->
chipset
)
{
switch
(
device
->
chipset
)
{
case
0x40
:
case
0x40
:
device
->
cname
=
"NV40"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -64,6 +65,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -64,6 +65,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x41
:
case
0x41
:
device
->
cname
=
"NV41"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -82,6 +84,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -82,6 +84,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x42
:
case
0x42
:
device
->
cname
=
"NV42"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -100,6 +103,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -100,6 +103,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x43
:
case
0x43
:
device
->
cname
=
"NV43"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -118,6 +122,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -118,6 +122,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x45
:
case
0x45
:
device
->
cname
=
"NV45"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -136,6 +141,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -136,6 +141,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x47
:
case
0x47
:
device
->
cname
=
"G70"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -154,6 +160,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -154,6 +160,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x49
:
case
0x49
:
device
->
cname
=
"G71"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -172,6 +179,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -172,6 +179,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x4b
:
case
0x4b
:
device
->
cname
=
"G73"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -190,6 +198,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -190,6 +198,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x44
:
case
0x44
:
device
->
cname
=
"NV44"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -208,6 +217,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -208,6 +217,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x46
:
case
0x46
:
device
->
cname
=
"G72"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -226,6 +236,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -226,6 +236,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x4a
:
case
0x4a
:
device
->
cname
=
"NV44A"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -244,6 +255,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -244,6 +255,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x4c
:
case
0x4c
:
device
->
cname
=
"C61"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -262,6 +274,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -262,6 +274,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x4e
:
case
0x4e
:
device
->
cname
=
"C51"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -280,6 +293,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -280,6 +293,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x63
:
case
0x63
:
device
->
cname
=
"C73"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -298,6 +312,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -298,6 +312,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x67
:
case
0x67
:
device
->
cname
=
"C67"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -316,6 +331,7 @@ nv40_identify(struct nouveau_device *device)
...
@@ -316,6 +331,7 @@ nv40_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv04_disp_oclass
;
break
;
break
;
case
0x68
:
case
0x68
:
device
->
cname
=
"C68"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv10_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
...
drivers/gpu/drm/nouveau/core/subdev/device/nv50.c
View file @
2094dd82
...
@@ -53,6 +53,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -53,6 +53,7 @@ nv50_identify(struct nouveau_device *device)
{
{
switch
(
device
->
chipset
)
{
switch
(
device
->
chipset
)
{
case
0x50
:
case
0x50
:
device
->
cname
=
"G80"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -73,6 +74,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -73,6 +74,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0x84
:
case
0x84
:
device
->
cname
=
"G84"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -96,6 +98,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -96,6 +98,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0x86
:
case
0x86
:
device
->
cname
=
"G86"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -119,6 +122,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -119,6 +122,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0x92
:
case
0x92
:
device
->
cname
=
"G92"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -142,6 +146,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -142,6 +146,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0x94
:
case
0x94
:
device
->
cname
=
"G94"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -165,6 +170,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -165,6 +170,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0x96
:
case
0x96
:
device
->
cname
=
"G96"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -188,6 +194,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -188,6 +194,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0x98
:
case
0x98
:
device
->
cname
=
"G98"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -211,6 +218,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -211,6 +218,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xa0
:
case
0xa0
:
device
->
cname
=
"G200"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -234,6 +242,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -234,6 +242,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xaa
:
case
0xaa
:
device
->
cname
=
"MCP77/MCP78"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -257,6 +266,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -257,6 +266,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xac
:
case
0xac
:
device
->
cname
=
"MCP79/MCP7A"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -280,6 +290,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -280,6 +290,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xa3
:
case
0xa3
:
device
->
cname
=
"GT215"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -304,6 +315,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -304,6 +315,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xa5
:
case
0xa5
:
device
->
cname
=
"GT216"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -327,6 +339,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -327,6 +339,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xa8
:
case
0xa8
:
device
->
cname
=
"GT218"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -350,6 +363,7 @@ nv50_identify(struct nouveau_device *device)
...
@@ -350,6 +363,7 @@ nv50_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xaf
:
case
0xaf
:
device
->
cname
=
"MCP89"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
...
drivers/gpu/drm/nouveau/core/subdev/device/nvc0.c
View file @
2094dd82
...
@@ -52,6 +52,7 @@ nvc0_identify(struct nouveau_device *device)
...
@@ -52,6 +52,7 @@ nvc0_identify(struct nouveau_device *device)
{
{
switch
(
device
->
chipset
)
{
switch
(
device
->
chipset
)
{
case
0xc0
:
case
0xc0
:
device
->
cname
=
"GF100"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -77,6 +78,7 @@ nvc0_identify(struct nouveau_device *device)
...
@@ -77,6 +78,7 @@ nvc0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xc4
:
case
0xc4
:
device
->
cname
=
"GF104"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -102,6 +104,7 @@ nvc0_identify(struct nouveau_device *device)
...
@@ -102,6 +104,7 @@ nvc0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xc3
:
case
0xc3
:
device
->
cname
=
"GF106"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -127,6 +130,7 @@ nvc0_identify(struct nouveau_device *device)
...
@@ -127,6 +130,7 @@ nvc0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xce
:
case
0xce
:
device
->
cname
=
"GF114"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -152,6 +156,7 @@ nvc0_identify(struct nouveau_device *device)
...
@@ -152,6 +156,7 @@ nvc0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xcf
:
case
0xcf
:
device
->
cname
=
"GF116"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -177,6 +182,7 @@ nvc0_identify(struct nouveau_device *device)
...
@@ -177,6 +182,7 @@ nvc0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xc1
:
case
0xc1
:
device
->
cname
=
"GF108"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -202,6 +208,7 @@ nvc0_identify(struct nouveau_device *device)
...
@@ -202,6 +208,7 @@ nvc0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xc8
:
case
0xc8
:
device
->
cname
=
"GF110"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nv50_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -227,6 +234,7 @@ nvc0_identify(struct nouveau_device *device)
...
@@ -227,6 +234,7 @@ nvc0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nv50_disp_oclass
;
break
;
break
;
case
0xd9
:
case
0xd9
:
device
->
cname
=
"GF119"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nvd0_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nvd0_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
...
drivers/gpu/drm/nouveau/core/subdev/device/nve0.c
View file @
2094dd82
...
@@ -48,6 +48,7 @@ nve0_identify(struct nouveau_device *device)
...
@@ -48,6 +48,7 @@ nve0_identify(struct nouveau_device *device)
{
{
switch
(
device
->
chipset
)
{
switch
(
device
->
chipset
)
{
case
0xe4
:
case
0xe4
:
device
->
cname
=
"GK104"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nvd0_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nvd0_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
@@ -68,6 +69,7 @@ nve0_identify(struct nouveau_device *device)
...
@@ -68,6 +69,7 @@ nve0_identify(struct nouveau_device *device)
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nvd0_disp_oclass
;
device
->
oclass
[
NVDEV_ENGINE_DISP
]
=
&
nvd0_disp_oclass
;
break
;
break
;
case
0xe7
:
case
0xe7
:
device
->
cname
=
"GK107"
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_VBIOS
]
=
&
nouveau_bios_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nvd0_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_GPIO
]
=
&
nvd0_gpio_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
device
->
oclass
[
NVDEV_SUBDEV_I2C
]
=
&
nouveau_i2c_oclass
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment