This patch series parse remaining port info from device tree storing
it in mt7621_pcie_port struct created for this. It also performs a lot
of cleanups to get the driver in a good shape to give it a try to get
mainlined. All of this changes are only compile-tested.
Cleanups performed here:
- Style cleanups.
- Use PERST_N instead of GPIO control.
- Remove not used macros.
- Use kernel reset_control functions.
- Remove unused code.
Changes in v6:
- PATCHES 18-33 added:
* Review defines and macros and create some news to get code more
readable.
* Avoid globals.
* Factor out new 'mt7621_pcie_enable_port' and
'mt7621_pcie_enable_ports'
functions.
* Use PERST_N instead of GPIO control.
* Use msleep instead of mdelay.
- Rebased onto staging-next
Changes in v5:
- Patch 18 removed from the series. Already submited by Mamta Shukla (also
applied)
- Rebased onto staging-next
Changes in v4:
- Some patches of this series was previously added to staging.
- Rebased onto staging-next.
Changes in v3:
- 'mt7621_pcie_enable_port' now returns an error instead of void
to avoid a layering violation.
- Delete 'mt7621_pcie_port_free' function and just delete
port from the list in probe function.
- Use parent node to get base address registers for each port.
Changes in v2:
- Rewrite phy part of the driver
- fix some checkpatch complains
- make use of sysctl from DT
Hope this helps.
Best regards,
Sergio Paracuellos
Sergio Paracuellos (33):
staging: mt7621-pci: parse and init port data from device tree
staging: mt7621-pci: replace return value if
devm_pci_alloc_host_bridge call fails
staging: mt7621-pci: add two helpers for read and write pcie register
ports
staging: mt7621-pci: factor out 'mt7621_pcie_enable_port' function
staging: mt7621-pci: remove [ASSERT|DEASSERT]_SYSRST_PCIE macros
staging: mt7621-pci: remove GPL2+ text from license header
staging: mt7621-pci: remove two commented code lines
staging: mt7621-pci: remove reset related unused macros
staging: mt7621-pci: reagroup reset related macros all together
staging: mt7621-pci: rewrite pcie phy related functions
staging: mt7621-pci: factor out 'mt7621_enable_phy' function
staging: mt7621-pci: debug port N_FTS inside 'mt7621_pcie_enable_port'
staging: mt7621-pci: rename 'mt7621_pcie_enable_port' into
'mt7621_pcie_init_port'
staging: mt7621-dts: add sysctl registers base address to pcie
staging: mt7621-pci: remap and use sysctl from device tree
staging: mt7621-pci: use a trailing */ on a separate line
staging: mt7621-pci: use dev_* functions instead of printk
staging: mt7621-pci: factor out 'mt7621_pcie_enable_ports' function
staging: mt7621-pci: avoid use of global variable 'pcie_link_status'
staging: mt7621-pci: factor out 'mt7621_pcie_init_ports' function
staging: mt7621-pci: remove unused preprocessor definitions
staging: mt7621-pci: reorder preprocessor definitions
staging: mt7621-pci: remove non sense comment
staging: mt7621-pci: align function definition style along the code
staging: mt7621-pci: rewrite RC FTS configuration
staging: mt7621-pci: rewrite hardcoded code for enabling ports
staging: mt7621-pci: add some definitions for enabling and disabling
GEN and GEN1 clocks
staging: mt7621-pci: use PERST_N instead of gpio control
staging: mt7621-pci: use PCIE_PORT_LINKUP instead of hardcode value
staging: mt7621-pci: enable interrupt when port is being enabled
staging: mt7621-pci: factor out 'mt7621_pcie_enable_port' function
staging: mt7621-pci: move some code into 'mt7621_pcie_init_ports'
staging: mt7621-pci: replace 'mdelay()' with 'msleep()'
drivers/staging/mt7621-dts/mt7621.dtsi | 4 +-
drivers/staging/mt7621-pci/pci-mt7621.c | 927 +++++++++++++++++++-------------
2 files changed, 558 insertions(+), 373 deletions(-)
--
2.7.4
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel