This post is also available at:
Português

When trying to create a SPFILE in an ASM instance, I got the following error: ORA-15221: ASM operation requires compatible.asm of 11.2.0.0.0 or higher.
This error was due to the compatibility being below the minimum requested.
SQL> select group_number, name,compatibility, database_compatibility from v$asm_diskgroup
GROUP_NUMBER NAME COMPATIBILITY DATABASE_COMPATIBILITY
------------ --------- ------------- ----------------------
1 ARCHIVE 10.1.0.0.0 10.1.0.0.0
2 DATA 10.1.0.0.0 10.1.0.0.0
3 REDO01 10.1.0.0.0 10.1.0.0.0
4 REDO02 10.1.0.0.0 10.1.0.0.0
5 REDO03 10.1.0.0.0 10.1.0.0.0
6 REDO04 10.1.0.0.0 10.1.0.0.0
SQLAs we can see, the compatibility was 10.1.0.0.0.
The solution is very simple.
We must change the compatibility to at least 11.2.0.0.0:
alter diskgroup set attribute 'compatible.asm'='11.2.0.0.0';
SQLBelow is the command I used to make the command for all diskgroups.
SQL> select 'alter diskgroup '||name|| ' set attribute ''compatible.asm''=''11.2.0.0.0'';' from v$asm_diskgroup;
'ALTERDISKGROUP'||NAME||'SETATTRIBUTE''COMPATIBLE.ASM''=''11.2.0.0.0'';'
-------------------------------------------------------------------------------------------
alter diskgroup ARCHIVE set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup DATA set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup REDO01 set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup REDO02 set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup REDO03 set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup REDO04 set attribute 'compatible.asm'='11.2.0.0.0';
SQLSQL> alter diskgroup ARCHIVE set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup DATA set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup REDO01 set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup REDO02 set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup REDO03 set attribute 'compatible.asm'='11.2.0.0.0';
alter diskgroup REDO04 set attribute 'compatible.asm'='11.2.0.0.0';
Diskgroup altered.
SQL>
Diskgroup altered.
SQL>
Diskgroup altered.
SQL>
Diskgroup altered.
SQL>
Diskgroup altered.
SQL>
Diskgroup altered.
SQLAfter the change, you can now create the SPFILE as you wanted it from the start.
SQL> create spfile='+DATA/ASM/spfileASM.ora' from pfile;
File created.
SQL