perfmon: Add simple hardware events on domain 1 for nva3 chipset

These events use a 8-bits signal and the 0xaaaa logic operation.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: Store the signal source (8-bits) in the nouveau_perfsig struct

This will allow us to monitor hardware events using up to 4 signals
(32-bits).

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: Remove unused function nouveau_perfsig_wrap()

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: Replace nouveau_perfsig in favour of nouveau_specsig

These two data structs are similar.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: s/signal/src in nouveau_specsig struct

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: Do not use the signal source as index

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: Make use of 32-bits signal

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: Store the logical operation of a signal in nouveau_specsig

The logical operation of complex hardware events using up to 4 signals
is not 0xaaaa and have to be specified.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: Add more hardware events for nva3 chipset

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
perfmon: Add support for complexe hardware events using mux (split this)