Age | Commit message (Collapse) | Author |
|
Because of some driver base on DMA, changed the initcall order as subsys_initcall.
Signed-off-by: Yuan Yao <yao.yuan@freescale.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
---
This patch is pulled back from upstream:
commit 8edc51c197b8f409bef7b21755254e6f3ce7ed23
|
|
The static checker reports following warning:
drivers/dma/fsl-edma.c:732 fsl_edma_xlate()
error: we previously assumed 'chan' could be null (see line 737)
The changes of the loop cursor in the iteration may result in
NULL dereference when dma_get_slave_channel failed but loop
will continue. So use list_for_each_entry_safe() instead of
list_for_each_entry() to against this.
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jingchang Lu <b35083@freescale.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
---
This patch is pulled back from upstream:
commit 178c81e58e91559fd2c6b1cae43c8f573a2ead36
|
|
Add Freescale enhanced direct memory(eDMA) controller support.
This module can be found on Vybrid and LS-1 SoCs.
Signed-off-by: Alison Wang <b18965@freescale.com>
Signed-off-by: Jingchang Lu <b35083@freescale.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
---
This patch is pulled back from upstream:
commit d6be34fbd39b7d577d25cb4edec538e8990ba07c
|
|
This add the big-endian 32-bit register version LPUART support.
Signed-off-by: Jingchang Lu <jingchang.lu@freescale.com>
---
This patch has been sent to upstream:
https://patchwork.kernel.org/patch/4544291/
|
|
Signed-off-by: Jingchang Lu <jingchang.lu@freescale.com>
|
|
WARNING: drivers/built-in.o(.data+0x10258):
Section mismatch in reference from the variable ppc_corenet_clk_driver
to the (unknown reference) .init.rodata:(unknown)
The variable ppc_corenet_clk_driver references
the (unknown reference) __initconst (unknown)
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console
Signed-off-by: Jingchang Lu <jingchang.lu@freescale.com>
---
This patch is pulled back from upstream:
commit da788acb28386aa896224e784954bb73c99ff26c
|
|
|
|
With the current implementation the user has the possibility to initialize
some queues that exit the offline port. The format of the device tree format
is:
fsl,qman-frame-queues-egress = <base_id1 count1 ... base_idn countn>;
fsl,qman-channel-ids-egress = <channel_id1 ... channel_idn>;
Intuitively, the base_id1, count1 frame queues batch are placed in the
channel_id1 QMan channel. Because the list_add() adds an entry at the beginning
of the list, the map between the frame queues and their channel ID is reversed.
This patch adds a particular entry at the end of the fq list using
list_add_tail() function.
Signed-off-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
Change-Id: I8d3a2fd3c36f63d15837ffe90bf6e4e8b041a3e5
Reviewed-on: http://git.am.freescale.net:8181/20154
Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
Tested-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
Change-Id: I17411cd51bb88c5294bbdf97b8bd18609a00a7f6
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/17708
Reviewed-by: Igal Liberman <Igal.Liberman@freescale.com>
Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com>
Tested-by: Mandy Lavi <Mandy.Lavi@freescale.com>
|
|
RFC 791 states that the minimum MTU needs to be 68 in order to
allow datagram forwarding without further fragmentation.
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: I4f9602c49a5a9aaac0030f511a6abbf32954f82f
Reviewed-on: http://git.am.freescale.net:8181/17073
Reviewed-by: Ruxandra Ioana Radulescu <ruxandra.radulescu@freescale.com>
|
|
Because the pause frame settings of a MAC device are forced to false
when the link goes half-duplex and cannot be restored if
autonegotiation is disabled, this patch introduces 2 sets of settings:
requested and active.
Requested settings are introduced by the users, via user-space
programs such as ethtool, whereas active settings reflect whether
FMan truly enables/disables PAUSE frames on TX/RX.
Requested settings can only be changed by the user. Active settings
can be changed by events such as auto-negotiation or a change in
link duplexity and are derived from requested settings.
Signed-off-by: Cristian Bercaru <cristian.bercaru@freescale.com>
Change-Id: I5ea563614b28d6ba1827b571097861d39ff8751a
Reviewed-on: http://git.am.freescale.net:8181/15553
Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
|
|
This patch changes the type of PAUSE frames settings to boolean
because they only accept the values true/false.
Signed-off-by: Cristian Bercaru <cristian.bercaru@freescale.com>
Change-Id: I6a3926054d4821f12937e96198c8435df38bf95c
Reviewed-on: http://git.am.freescale.net:8181/15552
Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
Tested-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
|
|
Channel value is uint16_t, return adequate type.
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: I4295b7f706e9db36ac9d6d02b8896fa11067f612
Reviewed-on: http://git.am.freescale.net:8181/18840
Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
Coverity issue
Change-Id: If0a7e1dffa09e3513b7ccb13a1dc09bf91056238
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/18831
Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com>
Tested-by: Mandy Lavi <Mandy.Lavi@freescale.com>
Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
|
|
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: I20f1609771d66778acfbbca65e6d0b8ceecb326a
Reviewed-on: http://git.am.freescale.net:8181/19077
Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
The continue jumps to the end of the loop, condition is evaluated
and if ret is not > 0 the loop ends. Setting ret to 1 to continue
processing until pool is drained.
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: If0acf0eba9e1fc814ef61b939d717819a48c7e29
Reviewed-on: http://git.am.freescale.net:8181/19071
Reviewed-by: Bogdan Hamciuc <bogdan.hamciuc@freescale.com>
Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: Idc795a681df8b11532e1fdbd2f18c365bfa8a671
Reviewed-on: http://git.am.freescale.net:8181/19007
Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
Add static qualifier for several functions.
Change channel parameter type to uint16_t.
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: I759e8174d9bfe915ee11f25f572160d33bf4a9d3
Reviewed-on: http://git.am.freescale.net:8181/18843
Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: Ica8066db566093bc89e50c23694b519820bf7ae8
Reviewed-on: http://git.am.freescale.net:8181/18842
Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: Ife32e1984f5dc8f481dad223602163229526b861
Reviewed-on: http://git.am.freescale.net:8181/18841
Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: I6fe0041436e52d76a0677380935d15d8363ddbeb
Reviewed-on: http://git.am.freescale.net:8181/18839
Reviewed-by: Marian Cristian Rotariu <marian.rotariu@freescale.com>
|
|
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: I5594b9f26210f9a7237bdd51f529d40a2b008115
Reviewed-on: http://git.am.freescale.net:8181/17400
Reviewed-by: Cristian Bercaru <cristian.bercaru@freescale.com>
|
|
Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
Change-Id: I21558e105b5c3092e96b7e98b570e5613e8bc771
Reviewed-on: http://git.am.freescale.net:8181/17399
Reviewed-by: Cristian Bercaru <cristian.bercaru@freescale.com>
|
|
Change-Id: I3de0664e687cb75564d08758889c0cd0878acfb4
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/19953
Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com>
Tested-by: Mandy Lavi <Mandy.Lavi@freescale.com>
|
|
fm_soc_resume
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com>
Change-Id: I888b95ca0c7f2e13266ecf81c41e779666a6e612
Reviewed-on: http://git.am.freescale.net:8181/19106
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Cristian-Constantin Sovaiala <Cristian.Sovaiala@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Signed-off-by: Zhao Qiang <B45475@freescale.com>
Change-Id: Id21f861ffec995ad68378a9d2eda245ef989b489
Reviewed-on: http://git.am.freescale.net:8181/19009
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Xiaobo Xie <X.Xie@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
qe-hdlc worked in internal-loopback without TDMR ds26522,
now it can work with TDMR ds26522 in normal mode,
so modify it to normal mode.
Signed-off-by: Zhao Qiang <B45475@freescale.com>
Change-Id: I7eeb4ec196d74cb53f3bffced0889637c72ed5d6
Reviewed-on: http://git.am.freescale.net:8181/19008
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Xiaobo Xie <X.Xie@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
pq_mds_t1 card need 1 bit delay for qe-tdm,
while others doesn't need.
Signed-off-by: Zhao Qiang <B45475@freescale.com>
Change-Id: I80e3e4c83206b292023e6ecb24867b6cb3b5984f
Reviewed-on: http://git.am.freescale.net:8181/19001
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Xiaobo Xie <X.Xie@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
add driver for maxim ds26522
Signed-off-by: Zhao Qiang <B45475@freescale.com>
Change-Id: Icc4076540b5a72efa47778b52a7d455038ba2b99
Reviewed-on: http://git.am.freescale.net:8181/18999
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Xiaobo Xie <X.Xie@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
In FMan v3, special transmission queues, called recycle queues, were created
because it was believed that the FCO flag from the FD is not enough to
differentiate between frames that are recyclable and those who are not. The
frame queue flags were used to signal the BMI to release the buffers back to
the default buffer pool.
The last findings and FMan improvements permit recycling activation only by
using FD fields. With this patch, the recycling frame queues are not needed
anymore.
This patch also removes the code dependency on the FMan version and improves
TCP traffic in forwarding scenarios due to single transmission queues, reducing
the out-of-order segments.
Signed-off-by: Marian Rotariu <marian.rotariu@freescale.com>
Change-Id: Idd4fea4ef7883563df67cf21dea9e87435b2dee8
Reviewed-on: http://git.am.freescale.net:8181/16872
Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
Tested-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
|
|
.resume
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com>
|
|
Commit bfa709b (cpufreq: ppc-corenet-cpufreq: Fix __udivdi3 modpost
error) used the remainder from do_div instead of the quotient. Fix that
and add one to ensure minimum is met.
Fixes: bfa709b (cpufreq: ppc-corenet-cpufreq: Fix __udivdi3 modpost error)
Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
Cc: 3.15+ <stable@vger.kernel.org> # 3.15+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Zhang Zhuoyu <Zhuoyu.Zhang@freescale.com>
|
|
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com>
|
|
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com>
|
|
auto_res_snmp_entry
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com>
|
|
LAG is hacking bond_3ad_xmit_xor() with Freescale PCD.
Original xmit policy is calculated by CPU and software,
after hacking, this part is replaced with FMan Keygen
hashing to instead.
This patch is fixing an errors on missing readunlock()
after called readlock() while hacking.
Signed-off-by: Jianhua Xie <jianhua.xie@freescale.com>
Change-Id: Ieffe4b340c83e6f2d6f20fd01124eaf1865c81a5
Reviewed-on: http://git.am.freescale.net:8181/17717
Reviewed-by: Honghua Yin <Hong-Hua.Yin@freescale.com>
Reviewed-by: Chenhui Zhao <chenhui.zhao@freescale.com>
|
|
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com>
Change-Id: I8b02d8538c564fb2deb849a2053c5a6b82661fc6
Reviewed-on: http://git.am.freescale.net:8181/17192
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Mandy Lavi <Mandy.Lavi@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
|
|
1. Correct FM_PCD_KgSchemeDelete() error in LAG:
In FMD UM, at the chapter Frame Manager PCD Runtime Unit API,
FM_PCD_KgSchemeDelete() is told to be run at run-time, and
FM_PCD_KgSchemeDelete() is allowed only following FM_PCD_Init()
& FM_PCD_KgSchemeSet(). But in HW LAG test codes, even follows
FM_PCD_Init() & FM_PCD_KgSchemeSet(), this API reports errors:
cpu3/3: ! MINOR FM-PCD Error [CPU03,
drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_kg.c:983
InvalidateSchemeSw]: Invalid State;
cpu3/3: Trying to delete a scheme that has ports bound tocpu3/3:
cpu3/3: ! MINOR FM-PCD Error [CPU03,
drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_kg.c:3046
FM_PCD_KgSchemeDelete]: Invalid State;
cpu3/3: cpu3/3:
KgSchemeDelete(h_Schemes[0]) = c00000002e4c0038 Err.
In order to simply the HW LAG codes, and get rid of this error,
insert FM_PORT_DeletePCD() before FM_PCD_KgSchemeDelete().
2. Adjust multiple schemes order with FM_PCD_KgSchemeSet:
To ensure distribution order, adjust multiple schemes order,
please refer to the chapter "The dist_order Element" of FMCTUG.
Change-Id: I4aeef84e796b624d8625db48c0c3098bf9f81abd
Signed-off-by: Jianhua Xie <jianhua.xie@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/14202
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jiafei Pan <Jiafei.Pan@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Add a flag to avoid re-allocation PCD memory for HW LAG.
Without this patch, old codes can introduce memory leak
when call alloc_pcd_mem() in HW LAG.
Change-Id: I92065867c8a2e8ea8315f4cd0de1b3ec99c512e7
Signed-off-by: Jianhua Xie <jianhua.xie@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/14201
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jiafei Pan <Jiafei.Pan@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
fix wrong memset parameters for PCD Extract field
ethernet.dst.
Signed-off-by: Jianhua Xie <jianhua.xie@freescale.com>
Change-Id: I8f240ccce2743f1d4da7825e7cfaf0894e5fa33d
Reviewed-on: http://git.am.freescale.net:8181/14200
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jiafei Pan <Jiafei.Pan@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Old codes were helping to fill parser result only
when FMan calculated CSUM. This patch is helping
FMan to fill parser result no matter whether FMan
calculates CSUM or not.
Signed-off-by: Jianhua Xie <jianhua.xie@freescale.com>
Change-Id: I812f78a4b8f40dec3ef4d36e2624f4e140995112
Reviewed-on: http://git.am.freescale.net:8181/13581
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jiafei Pan <Jiafei.Pan@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
fix unfit debug description, add caller source.
Signed-off-by: Jianhua Xie <jianhua.xie@freescale.com>
Change-Id: I9266df0244ba7fb3918b1bfbbd89fc54f7d97175
Reviewed-on: http://git.am.freescale.net:8181/13580
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jiafei Pan <Jiafei.Pan@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
|
|
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com>
|
|
Signed-off-by: Eyal Harari <Eyal.Harari@freesacle.com>
|
|
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
|
|
Due to external constraints (modules loading order and registry
configuration order in Auto Response mode) we need to implement
suspend/resume instead of suspend_noirq/resume_noirq callbacks.
Signed-off-by: Cristian Sovaiala <cristian.sovaiala@freescale.com>
|
|
Macless is a type of generic DPAA driver that does not know its immediate
underlying HW block on TX. It can be connected with an OH port, a TX port,
directly with another Macless driver in Macless-Macless scenario or with
another HW module.
Because not all HW modules know how to calculate CSUM, Macless triggers
software computation of the CSUM. If another HW block modifies the frame it
needs to trigger the Parser to recalculate CSUM.
This patch adds different default values for the parse results structure
that forbids the Parser from doing CSUM validation or computation. The _DTC and
_RPD flags inside the Frame Descriptor are enabled together. This is the only
way to deactivate HW CSUM in all the flows.
Signed-off-by: Marian Rotariu <marian.rotariu@freescale.com>
Change-Id: I6f2e27825f082c9319ff44241d19b06bda3faf47
Reviewed-on: http://git.am.freescale.net:8181/13671
Reviewed-by: Cristian-Constantin Sovaiala <Cristian.Sovaiala@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
|
|
Remove unused local variable and unnecessary CGR function calls. Macless does
not use CGR capabilities or specific port fqs.
Signed-off-by: Marian Rotariu <marian.rotariu@freescale.com>
Change-Id: I13ac2037266948a22ab16606bd65e9e965d9aa32
Reviewed-on: http://git.am.freescale.net:8181/13672
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Cristian-Constantin Sovaiala <Cristian.Sovaiala@freescale.com>
Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
|
|
In unidirectional flows, like UDP, generated by kernel through onic driver, the
traffic can block because of numerous frames that are in HW and not released
fast enough by the driver.
This patch adds a timer that releases frames periodically, regardless of the
reception and transmission rates.
This mechanism was chosen instead of the workqueue mechanism because of its
higher priority, larger than RX and TX procedures.
Change-Id: I141fcb7c2857a726e5e3954cabefb923c8ac0aac
Signed-off-by: Marian Rotariu <marian.rotariu@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/13569
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Madalin-Cristian Bucur <madalin.bucur@freescale.com>
|