arm_gic: GICD_ICFGR: Write model only for pre v1 GICs
Setting the model is only available in pre-v1 GIC models. Acked-by: Christoffer Dall <christoffer.dall@linaro.org> Signed-off-by: Adam Lackorzynski <adam@os.inf.tu-dresden.de> Message-id: 1408372255-12358-3-git-send-email-adam@os.inf.tu-dresden.de Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
		
							parent
							
								
									71a62046ae
								
							
						
					
					
						commit
						24b790df43
					
				@ -561,11 +561,13 @@ static void gic_dist_writeb(void *opaque, hwaddr offset,
 | 
				
			|||||||
        if (irq < GIC_INTERNAL)
 | 
					        if (irq < GIC_INTERNAL)
 | 
				
			||||||
            value |= 0xaa;
 | 
					            value |= 0xaa;
 | 
				
			||||||
        for (i = 0; i < 4; i++) {
 | 
					        for (i = 0; i < 4; i++) {
 | 
				
			||||||
 | 
					            if (s->revision == REV_11MPCORE || s->revision == REV_NVIC) {
 | 
				
			||||||
                if (value & (1 << (i * 2))) {
 | 
					                if (value & (1 << (i * 2))) {
 | 
				
			||||||
                    GIC_SET_MODEL(irq + i);
 | 
					                    GIC_SET_MODEL(irq + i);
 | 
				
			||||||
                } else {
 | 
					                } else {
 | 
				
			||||||
                    GIC_CLEAR_MODEL(irq + i);
 | 
					                    GIC_CLEAR_MODEL(irq + i);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
            if (value & (2 << (i * 2))) {
 | 
					            if (value & (2 << (i * 2))) {
 | 
				
			||||||
                GIC_SET_EDGE_TRIGGER(irq + i);
 | 
					                GIC_SET_EDGE_TRIGGER(irq + i);
 | 
				
			||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user