@@ -115,16 +115,15 @@ struct keystone_pcie {
115
115
struct dw_pcie * pci ;
116
116
/* PCI Device ID */
117
117
u32 device_id ;
118
- int legacy_host_irqs [PCI_NUM_INTX ];
119
- struct device_node * legacy_intc_np ;
118
+ int intx_host_irqs [PCI_NUM_INTX ];
120
119
121
120
int msi_host_irq ;
122
121
int num_lanes ;
123
122
u32 num_viewport ;
124
123
struct phy * * phy ;
125
124
struct device_link * * link ;
126
125
struct device_node * msi_intc_np ;
127
- struct irq_domain * legacy_irq_domain ;
126
+ struct irq_domain * intx_irq_domain ;
128
127
struct device_node * np ;
129
128
130
129
/* Application register space */
@@ -252,8 +251,8 @@ static int ks_pcie_msi_host_init(struct dw_pcie_rp *pp)
252
251
return dw_pcie_allocate_domains (pp );
253
252
}
254
253
255
- static void ks_pcie_handle_legacy_irq (struct keystone_pcie * ks_pcie ,
256
- int offset )
254
+ static void ks_pcie_handle_intx_irq (struct keystone_pcie * ks_pcie ,
255
+ int offset )
257
256
{
258
257
struct dw_pcie * pci = ks_pcie -> pci ;
259
258
struct device * dev = pci -> dev ;
@@ -263,7 +262,7 @@ static void ks_pcie_handle_legacy_irq(struct keystone_pcie *ks_pcie,
263
262
264
263
if (BIT (0 ) & pending ) {
265
264
dev_dbg (dev , ": irq: irq_offset %d" , offset );
266
- generic_handle_domain_irq (ks_pcie -> legacy_irq_domain , offset );
265
+ generic_handle_domain_irq (ks_pcie -> intx_irq_domain , offset );
267
266
}
268
267
269
268
/* EOI the INTx interrupt */
@@ -307,38 +306,37 @@ static irqreturn_t ks_pcie_handle_error_irq(struct keystone_pcie *ks_pcie)
307
306
return IRQ_HANDLED ;
308
307
}
309
308
310
- static void ks_pcie_ack_legacy_irq (struct irq_data * d )
309
+ static void ks_pcie_ack_intx_irq (struct irq_data * d )
311
310
{
312
311
}
313
312
314
- static void ks_pcie_mask_legacy_irq (struct irq_data * d )
313
+ static void ks_pcie_mask_intx_irq (struct irq_data * d )
315
314
{
316
315
}
317
316
318
- static void ks_pcie_unmask_legacy_irq (struct irq_data * d )
317
+ static void ks_pcie_unmask_intx_irq (struct irq_data * d )
319
318
{
320
319
}
321
320
322
- static struct irq_chip ks_pcie_legacy_irq_chip = {
323
- .name = "Keystone-PCI-Legacy -IRQ" ,
324
- .irq_ack = ks_pcie_ack_legacy_irq ,
325
- .irq_mask = ks_pcie_mask_legacy_irq ,
326
- .irq_unmask = ks_pcie_unmask_legacy_irq ,
321
+ static struct irq_chip ks_pcie_intx_irq_chip = {
322
+ .name = "Keystone-PCI-INTX -IRQ" ,
323
+ .irq_ack = ks_pcie_ack_intx_irq ,
324
+ .irq_mask = ks_pcie_mask_intx_irq ,
325
+ .irq_unmask = ks_pcie_unmask_intx_irq ,
327
326
};
328
327
329
- static int ks_pcie_init_legacy_irq_map (struct irq_domain * d ,
330
- unsigned int irq ,
331
- irq_hw_number_t hw_irq )
328
+ static int ks_pcie_init_intx_irq_map (struct irq_domain * d ,
329
+ unsigned int irq , irq_hw_number_t hw_irq )
332
330
{
333
- irq_set_chip_and_handler (irq , & ks_pcie_legacy_irq_chip ,
331
+ irq_set_chip_and_handler (irq , & ks_pcie_intx_irq_chip ,
334
332
handle_level_irq );
335
333
irq_set_chip_data (irq , d -> host_data );
336
334
337
335
return 0 ;
338
336
}
339
337
340
- static const struct irq_domain_ops ks_pcie_legacy_irq_domain_ops = {
341
- .map = ks_pcie_init_legacy_irq_map ,
338
+ static const struct irq_domain_ops ks_pcie_intx_irq_domain_ops = {
339
+ .map = ks_pcie_init_intx_irq_map ,
342
340
.xlate = irq_domain_xlate_onetwocell ,
343
341
};
344
342
@@ -605,30 +603,30 @@ static void ks_pcie_msi_irq_handler(struct irq_desc *desc)
605
603
}
606
604
607
605
/**
608
- * ks_pcie_legacy_irq_handler () - Handle legacy interrupt
606
+ * ks_pcie_intx_irq_handler () - Handle INTX interrupt
609
607
* @desc: Pointer to irq descriptor
610
608
*
611
- * Traverse through pending legacy interrupts and invoke handler for each. Also
609
+ * Traverse through pending INTX interrupts and invoke handler for each. Also
612
610
* takes care of interrupt controller level mask/ack operation.
613
611
*/
614
- static void ks_pcie_legacy_irq_handler (struct irq_desc * desc )
612
+ static void ks_pcie_intx_irq_handler (struct irq_desc * desc )
615
613
{
616
614
unsigned int irq = irq_desc_get_irq (desc );
617
615
struct keystone_pcie * ks_pcie = irq_desc_get_handler_data (desc );
618
616
struct dw_pcie * pci = ks_pcie -> pci ;
619
617
struct device * dev = pci -> dev ;
620
- u32 irq_offset = irq - ks_pcie -> legacy_host_irqs [0 ];
618
+ u32 irq_offset = irq - ks_pcie -> intx_host_irqs [0 ];
621
619
struct irq_chip * chip = irq_desc_get_chip (desc );
622
620
623
- dev_dbg (dev , ": Handling legacy irq %d\n" , irq );
621
+ dev_dbg (dev , ": Handling INTX irq %d\n" , irq );
624
622
625
623
/*
626
624
* The chained irq handler installation would have replaced normal
627
625
* interrupt driver handler so we need to take care of mask/unmask and
628
626
* ack operation.
629
627
*/
630
628
chained_irq_enter (chip , desc );
631
- ks_pcie_handle_legacy_irq (ks_pcie , irq_offset );
629
+ ks_pcie_handle_intx_irq (ks_pcie , irq_offset );
632
630
chained_irq_exit (chip , desc );
633
631
}
634
632
@@ -686,18 +684,18 @@ static int ks_pcie_config_msi_irq(struct keystone_pcie *ks_pcie)
686
684
return ret ;
687
685
}
688
686
689
- static int ks_pcie_config_legacy_irq (struct keystone_pcie * ks_pcie )
687
+ static int ks_pcie_config_intx_irq (struct keystone_pcie * ks_pcie )
690
688
{
691
689
struct device * dev = ks_pcie -> pci -> dev ;
692
- struct irq_domain * legacy_irq_domain ;
690
+ struct irq_domain * intx_irq_domain ;
693
691
struct device_node * np = ks_pcie -> np ;
694
692
struct device_node * intc_np ;
695
693
int irq_count , irq , ret = 0 , i ;
696
694
697
695
intc_np = of_get_child_by_name (np , "legacy-interrupt-controller" );
698
696
if (!intc_np ) {
699
697
/*
700
- * Since legacy interrupts are modeled as edge-interrupts in
698
+ * Since INTX interrupts are modeled as edge-interrupts in
701
699
* AM6, keep it disabled for now.
702
700
*/
703
701
if (ks_pcie -> is_am6 )
@@ -719,22 +717,21 @@ static int ks_pcie_config_legacy_irq(struct keystone_pcie *ks_pcie)
719
717
ret = - EINVAL ;
720
718
goto err ;
721
719
}
722
- ks_pcie -> legacy_host_irqs [i ] = irq ;
720
+ ks_pcie -> intx_host_irqs [i ] = irq ;
723
721
724
722
irq_set_chained_handler_and_data (irq ,
725
- ks_pcie_legacy_irq_handler ,
723
+ ks_pcie_intx_irq_handler ,
726
724
ks_pcie );
727
725
}
728
726
729
- legacy_irq_domain =
730
- irq_domain_add_linear (intc_np , PCI_NUM_INTX ,
731
- & ks_pcie_legacy_irq_domain_ops , NULL );
732
- if (!legacy_irq_domain ) {
733
- dev_err (dev , "Failed to add irq domain for legacy irqs\n" );
727
+ intx_irq_domain = irq_domain_add_linear (intc_np , PCI_NUM_INTX ,
728
+ & ks_pcie_intx_irq_domain_ops , NULL );
729
+ if (!intx_irq_domain ) {
730
+ dev_err (dev , "Failed to add irq domain for INTX irqs\n" );
734
731
ret = - EINVAL ;
735
732
goto err ;
736
733
}
737
- ks_pcie -> legacy_irq_domain = legacy_irq_domain ;
734
+ ks_pcie -> intx_irq_domain = intx_irq_domain ;
738
735
739
736
for (i = 0 ; i < PCI_NUM_INTX ; i ++ )
740
737
ks_pcie_app_writel (ks_pcie , IRQ_ENABLE_SET (i ), INTx_EN );
@@ -808,7 +805,7 @@ static int __init ks_pcie_host_init(struct dw_pcie_rp *pp)
808
805
if (!ks_pcie -> is_am6 )
809
806
pp -> bridge -> child_ops = & ks_child_pcie_ops ;
810
807
811
- ret = ks_pcie_config_legacy_irq (ks_pcie );
808
+ ret = ks_pcie_config_intx_irq (ks_pcie );
812
809
if (ret )
813
810
return ret ;
814
811
@@ -881,7 +878,7 @@ static void ks_pcie_am654_ep_init(struct dw_pcie_ep *ep)
881
878
dw_pcie_writel_dbi (pci , PCI_BASE_ADDRESS_0 , flags );
882
879
}
883
880
884
- static void ks_pcie_am654_raise_legacy_irq (struct keystone_pcie * ks_pcie )
881
+ static void ks_pcie_am654_raise_intx_irq (struct keystone_pcie * ks_pcie )
885
882
{
886
883
struct dw_pcie * pci = ks_pcie -> pci ;
887
884
u8 int_pin ;
@@ -907,7 +904,7 @@ static int ks_pcie_am654_raise_irq(struct dw_pcie_ep *ep, u8 func_no,
907
904
908
905
switch (type ) {
909
906
case PCI_IRQ_INTX :
910
- ks_pcie_am654_raise_legacy_irq (ks_pcie );
907
+ ks_pcie_am654_raise_intx_irq (ks_pcie );
911
908
break ;
912
909
case PCI_IRQ_MSI :
913
910
dw_pcie_ep_raise_msi_irq (ep , func_no , interrupt_num );
0 commit comments