Refactor ice_sq_send_cmd() and ice_shutdown_sq() to be able to use
a simpler locking, e.g. for new methods, which depend on the control
queue.
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_controlq.c | 155 --
1 file changed
eue
type. Use ice_sq_spin_lock/unlock for sideband queue and
ice_sq_mutex_lock/unlock for other queues.
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 8 +-
drivers/net/ethernet/intel/ice/ice_common.h | 3 +-
drivers/net/ether
llows reading the sideband queue in the top half of the interrupt
and allows to avoid bottom half scheduling delays, which speeds up Tx
timestamping process significantly.
Introduce new structure ice_sq_ops, which allows to assign lock/unlock
operations based on the queue type on queue init.
With sideband queue using delays and spin locks, it is possible to
read timestamps from the PHY in the top half of the interrupt.
This removes bottom half scheduling delays and improves timestamping
read times significantly, from >2 ms to <50 us.
Reviewed-by: Milena Olech
Signed-off-by:
SBQ by reading address 0 from the PHY 0 before issuing SYNC
command to ensure that writes to all PHYs were completed and skip SBQ
message completion if it's posted.
Reviewed-by: Przemek Kitszel
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet
kworker and use do_aux_work for PTP periodic work and
system_unbound_wq for ov_work.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_ptp.c | 223 +++
drivers/net/ethernet/intel/ice/ice_ptp.h | 6 +-
2 files changed, 110
Move ice_ptp_maybe_trigger_tx_interrupt() and ice_ptp_periodic_work().
This will allow to assign ice_ptp_periodic_work() to PTP API's
do_aux_work function pointer.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_ptp.c
Add helpers for checking TSPLL params, disabling sticky bits,
configuring TSPLL and getting default clock frequency to simplify
the code flows.
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_tspll.c | 156 ++---
1 file changed
: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.h | 212 +++---
drivers/net/ethernet/intel/ice/ice_tspll.c | 236 +++-
2 files changed, 157 insertions(+), 291 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_common.h
b/drivers/net/ethernet
Add a helper function to print new/current TSPLL config. This helps
avoid unnecessary casts from u8 to enums.
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_tspll.c | 54 --
1 file changed, 30
Initialize TSPLL after initializing PHC in ice_ptp.c instead of calling
for each product in PHC init in ice_ptp_hw.c.
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_ptp.c| 11 +++
drivers/net/ethernet
To ensure proper operation, wait for 10 to 20 microseconds before
enabling TSPLL.
Adjust wait time after enabling TSPLL from 1-5 ms to 1-2 ms.
Those values are empirical and tested on multiple HW configurations.
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net
TSPLL can fail when trying to lock to TIME_REF as a clock source, e.g.
when the external clock source is not stable or connected to the board.
To continue operation after failure, try to lock again to internal TCXO
and inform user about this.
Reviewed-by: Milena Olech
Signed-off-by: Karol
Add ICE_READ_CGU_REG_OR_DIE() and ICE_WRITE_CGU_REG_OR_DIE() helpers to
avoid multiple error checks after calling read/write functions.
Suggested-by: Przemek Kitszel
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice
TIME_REF clock source.
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.h | 19 +-
drivers/net/ethernet/intel/ice/ice_tspll.c | 203
drivers/net/ethernet/intel/ice/ice_tspll.h | 29 +--
3 files
Collect TSPLL related functions and definitions and move them to
a separate file to have all TSPLL functionality in one place.
Move CGU related functions and definitions to ice_common.*
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net
Rename TSPLL and CGU functions, definitions etc. to match the file name
and have consistent naming scheme.
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 32 +-
drivers/net/ethernet/intel/ice
Separate TSPLL related functions and definitions from all PTP-related
files and clean up the code by implementing multiple helpers.
Adjust TSPLL wait times and fall back to TCXO on lock failure to ensure
proper init flow of TSPLL.
Karol Kolacinski (10):
ice: move TSPLL functions to a separate
Add ICE_READ_CGU_REG_OR_DIE() and ICE_WRITE_CGU_REG_OR_DIE() helpers to
avoid multiple error checks after calling read/write functions.
Suggested-by: Przemek Kitszel
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice
Separate TSPLL related functions and definitions from all PTP-related
files and clean up the code by implementing multiple helpers.
Adjust TSPLL wait times and fall back to TCXO on lock failure to ensure
proper init flow of TSPLL.
Karol Kolacinski (10):
ice: move TSPLL functions to a separate
: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.h | 197 +++-
drivers/net/ethernet/intel/ice/ice_tspll.c | 236 +++-
2 files changed, 157 insertions(+), 276 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_common.h
b/drivers/net/ethernet
Initialize TSPLL after initializing PHC in ice_ptp.c instead of calling
for each product in PHC init in ice_ptp_hw.c.
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_ptp.c| 11 ++
drivers/net/ethernet
To ensure proper operation, wait for 10 to 20 microseconds before
enabling TSPLL.
Adjust wait time after enabling TSPLL from 1-5 ms to 1-2 ms.
Those values are empirical and tested on multiple HW configurations.
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net
TSPLL can fail when trying to lock to TIME_REF as a clock source, e.g.
when the external clock source is not stable or connected to the board.
To continue operation after failure, try to lock again to internal TCXO
and inform user about this.
Reviewed-by: Milena Olech
Signed-off-by: Karol
Add helpers for checking TSPLL params, disabling sticky bits,
configuring TSPLL and getting default clock frequency to simplify
the code flows.
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_tspll.c | 152 ++---
1 file changed
Add a helper function to print new/current TSPLL config. This helps
avoid unnecessary casts from u8 to enums.
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_tspll.c | 54 --
1 file changed, 30
TIME_REF clock source.
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_tspll.c | 199 -
drivers/net/ethernet/intel/ice/ice_tspll.h | 29 +--
2 files changed, 45 insertions(+), 183 deletions(-)
diff --git
Collect TSPLL related functions and definitions and move them to
a separate file to have all TSPLL functionality in one place.
Move CGU related functions and definitions to ice_common.*
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net
Rename TSPLL and CGU functions, definitions etc. to match the file name
and have constistent naming scheme.
Reviewed-by: Michal Kubiak
Reviewed-by: Milena Olech
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 28 +-
drivers/net/ethernet/intel/ice
delays based on HW spec.
Implement external timestamp (input) delay compensation.
Remove existing definitions and wrappers for periodic output propagation
delays.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V2 -> V3: rebased, renamed prop_delay to prop_delay_ns, rewor
t PTP init for 2x50G E825C devices")
Reviewed-by: Przemek Kitszel
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 40 +
drivers/net/ethernet/intel/ice/ice_common.h | 1 +
drivers/net/ethernet/intel/ice/
based on port.
Rename rmn_0 to phy_0 and remove rmn_1 and rmn_2 as E82X HW does not
support it. Rename eth56g_phy_1 to phy_0_peer.
Fixes: 7cab44f1c35f ("ice: Introduce ETH56G PHY model for E825C products")
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V
)
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_ptp_consts.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_consts.h
b/drivers/net/ethernet/intel/ice/ice_ptp_consts.h
index e6
ned-off-by: Karol Kolacinski
---
V1 -> V2: Removed net-next hunks
drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 22 -
drivers/net/ethernet/intel/ice/ice_ptp_hw.h | 3 ++-
2 files changed, 10 insertions(+), 15 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_hw
addition, E825 uses PF ID for indexing per PF registers and as
a primary PHY lane number, which is incorrect.
Karol Kolacinski (4):
ice: Fix E825 initialization
ice: Fix quad registers read on E825
ice: Fix ETH56G FC-FEC Rx offset value
ice: Add correct PHY lane assignment
drivers/net
t PTP init for 2x50G E825C devices")
Reviewed-by: Przemek Kitszel
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 40 +
drivers/net/ethernet/intel/ice/ice_common.h | 1 +
drivers/net/ethernet/intel/ice/
)
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_ptp_consts.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_consts.h
b/drivers/net/ethernet/intel/ice/ice_ptp_consts.h
index e6
based on port.
Rename rmn_0 to phy_0 and remove rmn_1 and rmn_2 as E82X HW does not
support it. Rename eth56g_phy_1 to phy_0_peer.
Fixes: 7cab44f1c35f ("ice: Introduce ETH56G PHY model for E825C products")
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V
ned-off-by: Karol Kolacinski
---
V1 -> V2: Removed net-next hunks
drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 22 -
drivers/net/ethernet/intel/ice/ice_ptp_hw.h | 3 ++-
2 files changed, 10 insertions(+), 15 deletions(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_hw
addition, E825 uses PF ID for indexing per PF registers and as a primary
PHY
lane number, which is incorrect.
Karol Kolacinski (4):
ice: Fix E825 initialization
ice: Fix quad registers read on E825
ice: Fix ETH56G FC-FEC Rx offset value
ice: Add correct PHY lane assignment
drivers/net
-by: Karol Kolacinski
---
V1 -> V2: removed duplicate gpio_pin variable and restored missing
ICE_E810_E830_SYNC_DELAY
drivers/net/ethernet/intel/ice/ice_ptp.c | 82 +++
drivers/net/ethernet/intel/ice/ice_ptp.h | 2 +
.../net/ethernet/intel/ice/ice_ptp_const
-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_ptp.c | 81 +++
drivers/net/ethernet/intel/ice/ice_ptp.h | 2 +
.../net/ethernet/intel/ice/ice_ptp_consts.h | 12 ---
drivers/net/ethernet/intel/ice/ice_ptp_hw.h | 24 --
4 files changed, 49 insertions
-by: Milena Olech
Co-developed-by: Paul Greenwalt
Signed-off-by: Paul Greenwalt
Signed-off-by: Michal Michalik
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
---
V11 -> V12: Fixed missing E830 case in ice_get_base_incval()
V10 -> V11: Fixed adjustments not working on E
Instead of using shifts and casts, use FIELD_PREP after reading 40b
timestamp values.
Reviewed-by: Simon Horman
Signed-off-by: Karol Kolacinski
---
V5 -> V6: Replaced removed macros with the new ones
drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 9 ++---
drivers/net/ethernet/intel/
Unify ice_ptp_init_tx_* functions for most of the MAC types except E82X.
This simplifies the code for the future use with new MAC types.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Renamed the patch and reworded the commit message
drivers/net/ethernet/intel/
iewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 timestamp handling to "ice: Implement PTP support for E830
devices"
drivers/net/ethernet/intel/ice/ice_main.c | 18 +
drivers/net/ethernet/intel/ice/ice_ptp.c | 49 ++
Reviewed-by: Przemek Kitszel
Signed-off-by: Jacob Keller
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 cross timestamp handling to "ice: Implement PTP support for
E830 devices" and explained the rest of previous changes in the commit
description
V4 -&g
nally, because all further
function calls check the MAC type anyway and this allows simpler code
in the future with addition of the new MAC types.
Reorder ICE_MAC_* cases in switches in ice_ptp* as in enum ice_mac_type.
Signed-off-by: Karol Kolacinski
---
V9 -> V10: Fixed E825C MAC cond
ce_id first, then set other variables.
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 90
drivers/net/ethernet/intel/ice/ice_common.h | 2 +
drivers/net/ethernet/intel/ice/ice_gnss.c | 29 +++
drivers/net/ethernet/intel/ice/ice_gnss.h
.
Jacob Keller (1):
ice: Add unified ice_capture_crosststamp
Karol Kolacinski (5):
ice: Don't check device type when checking GNSS presence
ice: Remove unncecessary ice_is_e8xx() functions
ice: Use FIELD_PREP for timestamp values
ice: Process TSYN IRQ in a separate function
ice: Ref
t PTP init for 2x50G E825C devices")
Reviewed-by: Przemek Kitszel
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 40 +
drivers/net/ethernet/intel/ice/ice_common.h | 1 +
drivers/net/ethernet/intel/ice/
uot;)
Fixes: 03cb4473be92 ("ice: add low level PTP clock access functions")
Fixes: 13a64f0b9894 ("ice: support crosstimestamping on E822 devices if
supported")
Reviewed-by: Przemek Kitszel
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Jacob Keller
Signed-off-by: Karol Ko
)
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_ptp_consts.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_ptp_consts.h
b/drivers/net/ethernet/intel/ice/ice_ptp_consts.h
index e6
PF_SB_REM_DEV_CTL modification.
Configure synchronization delay for E825 product to ensure proper PHY
timers initialization on SYNC command.
Fixes: 7cab44f1c35f ("ice: Introduce ETH56G PHY model for E825C products")
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
d
based on port.
Rename rmn_0 to phy_0 and remove rmn_1 and rmn_2 as E82X HW does not
support it. Rename eth56g_phy_1 to phy_0_peer.
Fixes: 7cab44f1c35f ("ice: Introduce ETH56G PHY model for E825C products")
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
drivers/ne
addition, E825 uses PF ID for indexing per PF registers and as a primary
PHY
lane number, which is incorrect.
Jacob Keller (1):
ice: Remove unnecessary offset calculation for PF scoped registers
Karol Kolacinski (4):
ice: Fix E825 initialization
ice: Fix quad registers read on E825
ice: Fix
-by: Milena Olech
Co-developed-by: Paul Greenwalt
Signed-off-by: Paul Greenwalt
Signed-off-by: Michal Michalik
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
---
V10 -> V11: Fixed adjustments not working on E830
V9 -> V10: Removed ICE_FLAG_PTP_SUPPORTED check for E830,
Unify ice_ptp_init_tx_* functions for most of the MAC types except E82X.
This simplifies the code for the future use with new MAC types.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Renamed the patch and reworded the commit message
drivers/net/ethernet/intel/
Reviewed-by: Przemek Kitszel
Signed-off-by: Jacob Keller
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 cross timestamp handling to "ice: Implement PTP support for
E830 devices" and explained the rest of previous changes in the commit
description
V4 -&g
iewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 timestamp handling to "ice: Implement PTP support for E830
devices"
drivers/net/ethernet/intel/ice/ice_main.c | 18 +
drivers/net/ethernet/intel/ice/ice_ptp.c | 49 ++
Instead of using shifts and casts, use FIELD_PREP after reading 40b
timestamp values.
Reviewed-by: Simon Horman
Signed-off-by: Karol Kolacinski
---
V5 -> V6: Replaced removed macros with the new ones
drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 9 ++---
drivers/net/ethernet/intel/
.
Jacob Keller (1):
ice: Add unified ice_capture_crosststamp
Karol Kolacinski (5):
ice: Don't check device type when checking GNSS presence
ice: Remove unncecessary ice_is_e8xx() functions
ice: Use FIELD_PREP for timestamp values
ice: Process TSYN IRQ in a separate function
ice: Ref
nally, because all further
function calls check the MAC type anyway and this allows simpler code
in the future with addition of the new MAC types.
Reorder ICE_MAC_* cases in switches in ice_ptp* as in enum ice_mac_type.
Signed-off-by: Karol Kolacinski
---
V9 -> V10: Fixed E825C MAC cond
ce_id first, then set other variables.
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 90
drivers/net/ethernet/intel/ice/ice_common.h | 2 +
drivers/net/ethernet/intel/ice/ice_gnss.c | 29 +++
drivers/net/ethernet/intel/ice/ice_gnss.h
-by: Milena Olech
Co-developed-by: Paul Greenwalt
Signed-off-by: Paul Greenwalt
Signed-off-by: Michal Michalik
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
---
V9 -> V10: Removed ICE_FLAG_PTP_SUPPORTED check for E830, which was disabling
PTP only for E830
V7 -&
Unify ice_ptp_init_tx_* functions for most of the MAC types except E82X.
This simplifies the code for the future use with new MAC types.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Renamed the patch and reworded the commit message
drivers/net/ethernet/intel/
Reviewed-by: Przemek Kitszel
Signed-off-by: Jacob Keller
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 cross timestamp handling to "ice: Implement PTP support for
E830 devices" and explained the rest of previous changes in the commit
description
V4 -&g
iewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 timestamp handling to "ice: Implement PTP support for E830
devices"
drivers/net/ethernet/intel/ice/ice_main.c | 18 +
drivers/net/ethernet/intel/ice/ice_ptp.c | 49 ++
Instead of using shifts and casts, use FIELD_PREP after reading 40b
timestamp values.
Reviewed-by: Simon Horman
Signed-off-by: Karol Kolacinski
---
V5 -> V6: Replaced removed macros with the new ones
drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 9 ++---
drivers/net/ethernet/intel/
nally, because all further
function calls check the MAC type anyway and this allows simpler code
in the future with addition of the new MAC types.
Reorder ICE_MAC_* cases in switches in ice_ptp* as in enum ice_mac_type.
Signed-off-by: Karol Kolacinski
---
V9 -> V10: Fixed E825C MAC cond
ce_id first, then set other variables.
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 90
drivers/net/ethernet/intel/ice/ice_common.h | 2 +
drivers/net/ethernet/intel/ice/ice_gnss.c | 29 +++
drivers/net/ethernet/intel/ice/ice_gnss.h
.
Jacob Keller (1):
ice: Add unified ice_capture_crosststamp
Karol Kolacinski (5):
ice: Don't check device type when checking GNSS presence
ice: Remove unncecessary ice_is_e8xx() functions
ice: Use FIELD_PREP for timestamp values
ice: Process TSYN IRQ in a separate function
ice: Ref
.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Yochai Hagvi
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
Reviewed-by: Simon Horman
---
.../net/ethernet/intel/ice/ice_adminq_cmd.h | 9 ++
drivers/net/ethernet/intel/ice/ice_ptp.c | 138 ++
drivers
Kubalewski
Signed-off-by: Sergey Temerkhanov
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
Reviewed-by: Simon Horman
---
V1 -> V2: Added return value description, renamed the function and
enable parameter. Reworded commit message.
drivers/net/ethernet/intel/
When setting a new supported function for a pin on E810, disable other
enabled pin that shares the same GPIO.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
Reviewed-by: Simon Horman
---
V1 -> V2: Fixed incorrect call to ice_ptp_set_sma_cfg_e810t()
drivers/net/ether
Signed-off-by: Karol Kolacinski
Reviewed-by: Simon Horman
---
V1 -> V2: Fixed unresolved merge conflict
drivers/net/ethernet/intel/ice/ice_ptp.c | 360 +-
drivers/net/ethernet/intel/ice/ice_ptp.h | 27 +-
.../net/ethernet/intel/ice/ice_ptp_consts.h | 2 +-
drivers/
Instead of having separate PTP GPIO implementation for E810T, use
existing one from all other products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
Reviewed-by: Simon Horman
---
V1 -> V2: restored blank line and moved enable and verify assignment
drivers/net/ether
Add support of PTP SDPs (Software Definable Pins) for E825C products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
Reviewed-by: Simon Horman
---
V1 -> V2: Removed redundant n_pins assignment and enable and verify move
drivers/net/ethernet/intel/ice/ice_ptp.c |
Add a new internal structure describing PTP pins.
Use the new structure for all non-E810T products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
Reviewed-by: Simon Horman
---
V1 -> V2: Removed unused err variable
drivers/net/ethernet/intel/ice/ice_ptp.c |
This series cleans up current PTP GPIO pin handling, fixes minor bugs,
refactors implementation for all products, introduces SDP (Software
Definable Pins) for E825C and implements reading SDP section from NVM
for E810 products.
Karol Kolacinski (5):
ice: Implement ice_ptp_pin_desc
ice: Add
-by: Milena Olech
Co-developed-by: Paul Greenwalt
Signed-off-by: Paul Greenwalt
Signed-off-by: Michal Michalik
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 parts of other patches to this patch
V6 -> V7: Fixed timestamp acquisition
V4 -> V
Unify ice_ptp_init_tx_* functions for most of the MAC types except E82X.
This simplifies the code for the future use with new MAC types.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Renamed the patch and reworded the commit message
drivers/net/ethernet/intel/
Reviewed-by: Przemek Kitszel
Signed-off-by: Jacob Keller
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 cross timestamp handling to "ice: Implement PTP support for
E830 devices" and explained the rest of previous changes in the commit
description
V4 -&g
nally, because all further
function calls check the MAC type anyway and this allows simpler code
in the future with addition of the new MAC types.
Reorder ICE_MAC_* cases in switches in ice_ptp* as in enum ice_mac_type.
Signed-off-by: Karol Kolacinski
---
V8 -> V9: Fixed compilation issue after r
iewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 timestamp handling to "ice: Implement PTP support for E830
devices"
drivers/net/ethernet/intel/ice/ice_main.c | 18 +
drivers/net/ethernet/intel/ice/ice_ptp.c | 49 ++
Instead of using shifts and casts, use FIELD_PREP after reading 40b
timestamp values.
Reviewed-by: Simon Horman
Signed-off-by: Karol Kolacinski
---
V5 -> V6: Replaced removed macros with the new ones
drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 9 ++---
drivers/net/ethernet/intel/
ce_id first, then set other variables.
Signed-off-by: Karol Kolacinski
---
drivers/net/ethernet/intel/ice/ice_common.c | 90
drivers/net/ethernet/intel/ice/ice_common.h | 2 +
drivers/net/ethernet/intel/ice/ice_gnss.c | 29 +++
drivers/net/ethernet/intel/ice/ice_gnss.h
.
Jacob Keller (1):
ice: Add unified ice_capture_crosststamp
Karol Kolacinski (5):
ice: Don't check device type when checking GNSS presence
ice: Remove unncecessary ice_is_e8xx() functions
ice: Use FIELD_PREP for timestamp values
ice: Process TSYN IRQ in a separate function
ice: Ref
Kubalewski
Signed-off-by: Sergey Temerkhanov
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: Added return value description, renamed the function and
enable parameter. Reworded commit message.
drivers/net/ethernet/intel/ice/ice_ptp.c|
.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Yochai Hagvi
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
---
.../net/ethernet/intel/ice/ice_adminq_cmd.h | 9 ++
drivers/net/ethernet/intel/ice/ice_ptp.c | 138 ++
drivers/net/ethernet/intel/ice
When setting a new supported function for a pin on E810, disable other
enabled pin that shares the same GPIO.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: Fixed incorrect call to ice_ptp_set_sma_cfg_e810t()
drivers/net/ethernet/intel/ice/ice_ptp.c |
Signed-off-by: Karol Kolacinski
---
V1 -> V2: Fixed unresolved merge conflict
drivers/net/ethernet/intel/ice/ice_ptp.c | 354 +-
drivers/net/ethernet/intel/ice/ice_ptp.h | 27 +-
.../net/ethernet/intel/ice/ice_ptp_consts.h | 2 +-
drivers/net/ethernet/intel/
Instead of having separate PTP GPIO implementation for E810T, use
existing one from all other products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: restored blank line and moved enable and verify assignment
drivers/net/ethernet/intel/ice/ice_gnss.c |
Add support of PTP SDPs (Software Definable Pins) for E825C products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: Removed redundant n_pins assignment and enable and verify move
drivers/net/ethernet/intel/ice/ice_ptp.c | 20 ++--
1 f
Add a new internal structure describing PTP pins.
Use the new structure for all non-E810T products.
Reviewed-by: Arkadiusz Kubalewski
Signed-off-by: Karol Kolacinski
---
V1 -> V2: Removed unused err variable
drivers/net/ethernet/intel/ice/ice_ptp.c | 270 +++
drivers/
This series cleans up current PTP GPIO pin handling, fixes minor bugs,
refactors implementation for all products, introduces SDP (Software
Definable Pins) for E825C and implements reading SDP section from NVM
for E810 products.
Karol Kolacinski (5):
ice: Implement ice_ptp_pin_desc
ice: Add
-by: Milena Olech
Co-developed-by: Paul Greenwalt
Signed-off-by: Paul Greenwalt
Signed-off-by: Michal Michalik
Co-developed-by: Karol Kolacinski
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 parts of other patches to this patch
V6 -> V7: Fixed timestamp acquisition
V4 -> V
Unify ice_ptp_init_tx_* functions for most of the MAC types except E82X.
This simplifies the code for the future use with new MAC types.
Reviewed-by: Przemek Kitszel
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Renamed the patch and reworded the commit message
drivers/net/ethernet/intel/
Reviewed-by: Przemek Kitszel
Signed-off-by: Jacob Keller
Signed-off-by: Karol Kolacinski
---
V7 -> V8: Moved E830 cross timestamp handling to "ice: Implement PTP support for
E830 devices" and explained the rest of previous changes in the commit
description
V4 -&g
Instead of using shifts and casts, use FIELD_PREP after reading 40b
timestamp values.
Reviewed-by: Simon Horman
Signed-off-by: Karol Kolacinski
---
V5 -> V6: Replaced removed macros with the new ones
drivers/net/ethernet/intel/ice/ice_ptp_hw.c | 9 ++---
drivers/net/ethernet/intel/
1 - 100 of 367 matches
Mail list logo