summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.h
AgeCommit message (Collapse)Author
2015-11-25fmd: PCD: fix offline port blocked by fragmented IPV6Mandy Lavi
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
2015-04-21fmd: rtc: consider RCW[FM_MAC_RAT] when calcuating rtc ref clockMandy Lavi
Change-Id: I1b8a2966ad45f995e7e6b3cdca7f8ed5e0dd397a Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/35026 Reviewed-by: Igal Liberman <Igal.Liberman@freescale.com> Reviewed-by: Yangbo Lu <yangbo.lu@freescale.com> Reviewed-by: Honghua Yin <Hong-Hua.Yin@freescale.com> Tested-by: Honghua Yin <Hong-Hua.Yin@freescale.com>
2015-03-20fmd: update FmanV3L constantsMandy Lavi
Change-Id: I8b2b5e146358ab5aa9ce995c458471b4d037310b Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/29110 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Jianhua Xie <jianhua.xie@freescale.com> Reviewed-by: Honghua Yin <Hong-Hua.Yin@freescale.com>
2015-03-09FMD: Reset FManV3L DEFAULT_totalFifoSize to default 156KJianhua Xie
In T1040RMDPAAAP_Rev.C, at page 103, Figure A-38 says that the Reset value of FMan_V3L of BMI Configuration 1 Register (FMBM_CFG1) is 0x026F0000, which implies that FBPS should be 0x26F = 623. So the size of free buffer pool is 624 * 256bytes = 156KB, and 156K = 5*0x6400 + 0xa00 + 2*0x3200 = 5*1G + 1*OH + 2*OP. So it is OK to most cases while keep the default reset value for FMBM_CFG1. Without this vaule, sometimes DPA Eth driver (offline port) and FMD driver might report errors like below while more than 1 offline ports are added in t1040rdb/qds dts. dpa-fman0-oh@2 { compatible = "fsl,dpa-oh"; /* Define frame queues for the OH port*/ /* <OH Rx error, OH Rx default> */ fsl,qman-frame-queues-oh = <0x68 1 0x69 1>; fsl,bman-buffer-pools = <&bp6>; fsl,qman-frame-queues-tx = <0x90 8>; fsl,fman-oh-port = <&fman0_oh2>; }; dpa-fman0-oh@3 { compatible = "fsl,dpa-oh"; fsl,bman-buffer-pools = <&bp6>; /* Define frame queues for the OH port*/ /* <OH Rx error, OH Rx default> */ fsl,qman-frame-queues-oh = <0x52 1 0x53 1>; fsl,fman-oh-port = <&fman0_oh3>; }; /* The following OP is used as inbound OP*/ dpa-fman0-oh@4 { compatible = "fsl,dpa-oh"; fsl,bman-buffer-pools = <&bp6>; /* Define frame queues for the OH port*/ /* <OH Rx error, OH Rx default> */ fsl,qman-frame-queues-oh = <0x54 1 0x55 1>; fsl,fman-oh-port = <&fman0_oh4>; }; DPA offline port reports errors as below: ...... fsl_dpa_proxy: FSL DPAA Proxy initialization driver () fsl_oh: FSL FMan Offline Parsing port driver () fsl_oh dpa-fman0-oh.24: Found OH node handle compatible with fsl,dpa-oh. fsl_oh dpa-fman0-oh.24: Allocating 0 ingress frame queues duples fsl_oh dpa-fman0-oh.24: OH port /soc@ffe000000/fman@400000/port@83000 enabled. fsl_oh dpa-fman0-oh.24: Default egress frame queue: 105 fsl_oh dpa-fman0-oh.24: Default error frame queue: 104 fsl_oh dpa-fman0-oh.24: Initialized queues: fsl_oh dpa-fman0-oh.25: Found OH node handle compatible with fsl,dpa-oh. fsl_oh dpa-fman0-oh.25: Allocating 0 ingress frame queues duples fsl_oh dpa-fman0-oh.25: OH port /soc@ffe000000/fman@400000/port@84000 enabled. fsl_oh dpa-fman0-oh.25: Default egress frame queue: 83 fsl_oh dpa-fman0-oh.25: Default error frame queue: 82 fsl_oh dpa-fman0-oh.25: Initialized queues: fsl_oh dpa-fman0-oh.26: Found OH node handle compatible with fsl,dpa-oh. fsl_oh dpa-fman0-oh.26: Allocating 0 ingress frame queues duples cpu1/1: ! MAJOR FM Error [CPU01, drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c:2669 FmSetSizeOfFifo]: Resource Is Unavailable; cpu1/1: Requested fifo size and extra size exceed total FIFO size.cpu1/1: cpu1/1: ! MAJOR FM Error [CPU01, drivers/net/ethernet/freescale/fman/Peripherals/FM/fm.c:2060 FmGetSetPortParams]: Resource Is Unavailable; cpu1/1: cpu1/1: cpu1/1: ! MAJOR FM-Port Error [CPU01, drivers/net/ethernet/freescale/fman/Peripherals/FM/Port/fm_port.c:2392 FM_PORT_Init]: Resource Is Unavailable; cpu1/1: cpu1/1: cpu1/1: ! MAJOR FM Error [CPU01, drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_fm_port.c:871 InitFmPortDev]: Invalid State; cpu1/1: cpu1/1: cpu1/1: ! CRITICAL FM-Port Error [CPU01, drivers/net/ethernet/freescale/fman/Peripherals/FM/Port/fm_port.c:3174 FM_PORT_Enable]: Invalid State; cpu1/1: cpu1/1: fsl_oh: probe of dpa-fman0-oh.26 failed with error 39 Reviewed-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-by: Jiafei Pan <Jiafei.Pan@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/28233 Reviewed-on: http://git.am.freescale.net:8181/28619 Change-Id: If44ede3d08bd079bef710e12c527101485d1ba29 CC: Jiafei Pan <Jiafei.Pan@freescale.com> Signed-off-by: Jianhua Xie <jianhua.xie@freescale.com>
2014-12-11fmd: add support for t1024 featuresMandy Lavi
Change-Id: I37dbffe63e57af8a783b251d0f78087400b09d99 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/23940 Reviewed-by: Eyal Harari <Eyal.Harari@freescale.com> Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
2014-12-11fmd: fix static analysis issuesMandy Lavi
Change-Id: I2d6cead7b62116cd6a264ec91d82f3bdc3a03c10 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/23939 Reviewed-by: Igal Liberman <Igal.Liberman@freescale.com> Tested-by: Richard Schmitt <richard.schmitt@freescale.com> Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
2014-12-11Revert "fmd: fix static analysis issues"Matthew Weigel
This reverts commit 5e921ed07acbc6f05536aac89b9edc2578663840. Change-Id: Ic4d1166b5ad6419f369e3be278f41ea5764ff6fc Reviewed-on: http://git.am.freescale.net:8181/23784 Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com> Tested-by: Matthew Weigel <Matthew.Weigel@freescale.com>
2014-12-11fmd: fix static analysis issuesMandy Lavi
Change-Id: I428d24ec05b1e6ef2137ad2ba6385ddfa3a01872 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/22882 Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com> Tested-by: Matthew Weigel <Matthew.Weigel@freescale.com>
2014-07-21FMD: DSAR - fix deep sleep entry sequenceEyal Harari
The current sequence fixes the order of operations executed when entering deep sleep state. It also implements a workaround for a hardware bug by writing to fm_cld register - disabling DMA after a short idle period. Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com> Change-Id: I2c73406543495dad5a7fb240a2e8fab01b81e05e
2014-05-19fmd: change p1023 DEFAULT_totalFifoSize to 49KBMandy Lavi
49KB can accomodate buffers for 2x1G + 1xOH + 1xOP Change-Id: Ib2da4bb8e9d393f207bb756cf1b5a3ab1e75cdd2 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12499 Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-05-19fmd: change fmanV3L DEFAULT_totalFifoSize to 142KMandy Lavi
142KB can accomodate buffers for 5x1G + 1xOH + 1xOP 5*0x6400+0xa00+0x3200=140KB Change-Id: I37d7a1713101796cf3ab942ad4981d0070df4a98 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/12473 Reviewed-by: Jianhua Xie <jianhua.xie@freescale.com> Reviewed-by: Nir Erez <nir.erez@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com>
2014-03-07FMD: DSAR: added accumulate mode when entering deep sleepEyal Harari
Change-Id: Iad7a7c608e738661c1a9205fa2da45681ab2bc84 Signed-off-by: Eyal Harari <Eyal.Harari@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/9305 Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com> Reviewed-by: Sunil Kumar Kori <Sunil.Kori@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/9446
2014-03-07fmd: adjust allocation of fifo resources for fmanv3lMandy Lavi
Change-Id: I249456d0f157547fab221286e1c18e59ce5345d3 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/9257 Reviewed-by: Igal Liberman <Igal.Liberman@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Tested-by: Jose Rivera <German.Rivera@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/9448
2014-01-06fmd: fmd22 integrationMandy Lavi
- Fix for PCD: key mask not properly enabled in exact match table - Fix for PFC mapping function - Added counters for miss entry in match and hash tables - Added counter for IPv4 options in IP fragmentation Change-Id: I1626afc661d412c518172d405860a33d801cd005 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/6251 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Marian-Cornel Chereji <marian.chereji@freescale.com> Reviewed-by: Jose Rivera <German.Rivera@freescale.com> Conflicts: drivers/net/ethernet/freescale/fman/Peripherals/FM/Port/fm_port.c drivers/net/ethernet/freescale/fman/Peripherals/FM/Port/fm_port.h Change-Id: If356927d0cd4e22e8949a0106c2a403fcf1343a2 Reviewed-on: http://git.am.freescale.net:8181/7665 Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com> Tested-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
2013-05-24fmd: fmd21.1 integrationMandy Lavi
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> - PFC Adjustments for PFC configuration constraints and limitations related to port prefetch mode - workaround ucode issues Fix the following HW erratas regarding discard/error frames on V3: FM_OP_NO_VSP_NO_RELEASE_ERRATA_FMAN_A006675 - Description: OP without VSP will cause buffer leaks when instructed to discard a frame. Workaround: FW will release the buffers. FM_ERROR_VSP_NO_MATCH_SW006 - Description: Any port with VSP enabled and multiple VSPs are configured on this port can cause a situation where an error frame will be enqueued to the error queue not with the default VSP. Workaround: FW will replaced the current VSP with the default VSP just before the frame is being enqueued to the error queue. - Chosen-node new parameter support errors-to-discard Usage: optional Value type: <u32> Definition: Specifies which errors should be discarded. Errors that are not in the mask, will not be discarded; I.e. those errors will be enqueued and sent to the default error queue. Change-Id: Ib468c67de88376e17d9c39ab5a0c8fc5b33b7b82 Reviewed-on: http://git.am.freescale.net:8181/2605 Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com> Reviewed-by: Bucur Madalin-Cristian-B32716 <madalin.bucur@freescale.com> Reviewed-by: Garg Vakul-B16394 <vakul@freescale.com> Reviewed-by: Radulescu Ruxandra Ioana-B05472 <ruxandra.radulescu@freescale.com> Reviewed-by: Chereji Marian-Cornel-R27762 <marian.chereji@freescale.com> Reviewed-by: Wang Haiying-R54964 <Haiying.Wang@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-29fmd21 integrationMandy Lavi
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Prev fmd integration was fmd19 Diffs from fmd19 to fmd21: Added kgHashShift to t_FmPcdHashTableParams Added nonConsistentSp to t_FmPcdManipReassemIpStats sp - 2 layers separation - for future flib integration rtc - 2 layers separation - for future flib integration PFC enhancement (B4 Rev2 FMAN) API addition (for B4 rev 2): FM_PORT_SetPfcPrioritiesMappingToQmanWQ File fsl_fman.h renamed to lnxwrp_fsl_fman.h The name fsl_fman.h has been applied to other fman internal header file In dpaa_eth: Due to renaming of fsl_fman.h to lnxwrp_fsl_fman.h The relevant include lines in some of the files had to change accordingly Change-Id: I8f25c758963a44a75ca8676aad45f7f96767b0b5 Reviewed-on: http://git.am.freescale.net:8181/2069 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
2013-04-08fmd: fmd19 integrationMandy Lavi
Add fmd19 codebase, plus a minimal set of sources from dpaa-eth, necessary for bare compilation Change-Id: I390df8717671204e3d98a987135393bef4534e95 Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com> Signed-off-by: Bogdan Hamciuc <bogdan.hamciuc@freescale.com> Reviewed-on: http://git.am.freescale.net:8181/1029 Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>