aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/octeon-usb (follow)
AgeCommit message (Collapse)AuthorFilesLines
2020-02-23staging: Replace zero-length array with flexible-array memberGustavo A. R. Silva1-1/+1
The current codebase makes use of the zero-length array language extension to the C90 standard, but the preferred mechanism to declare variable-length types such as these ones is a flexible array member[1][2], introduced in C99: struct foo { int stuff; struct boo array[]; }; By making use of the mechanism above, we will get a compiler warning in case the flexible array does not occur last in the structure, which will help us prevent some kind of undefined behavior bugs from being inadvertently introduced[3] to the codebase from now on. Also, notice that, dynamic memory allocations won't be affected by this change: "Flexible array members have incomplete type, and so the sizeof operator may not be applied. As a quirk of the original implementation of zero-length arrays, sizeof evaluates to zero."[1] This issue was found with the help of Coccinelle. [1] https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html [2] https://github.com/KSPP/linux/issues/21 [3] commit 76497732932f ("cxgb3/l2t: Fix undefined behaviour") Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> Link: https://lore.kernel.org/r/20200220132908.GA30501@embeddedor Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-02-12Revert "staging: octeon-usb: delete the octeon usb host controller driver"Chris Packham5-0/+5605
This reverts commit 95ace52e4036482da1895b6e19f15141802cc3dd. Re-instate the code so subsequent commits can clean it up and get it building properly. Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz> Link: https://lore.kernel.org/r/20200205001116.14096-2-chris.packham@alliedtelesis.co.nz Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-12-17staging: octeon-usb: delete the octeon usb host controller driverGreg Kroah-Hartman5-5605/+0
This driver was merged back in 2013 and shows no progress toward every being merged into the "correct" part of the kernel. The code doesn't even build for anyone unless you have the specific hardware platform selected, so odds are it doesn't even work anymore. Remove it for now and is someone comes along that has the hardware and is willing to fix it up, it can be reverted. Cc: Aaro Koskinen <aaro.koskinen@iki.fi> Cc: David Daney <ddaney.cavm@gmail.com> Cc: Nishka Dasgupta <nishkadg.linux@gmail.com> Cc: Himadri Pandya <himadri18.07@gmail.com> Cc: "Frank A. Cancio Bello" <frank@generalsoftwareinc.com> Cc: Sumit Pundir <pundirsumit11@gmail.com> Cc: Laura Lazzati <laura.lazzati.15@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://lore.kernel.org/r/20191210091509.3546251-2-gregkh@linuxfoundation.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-10-28staging: octeon-usb: Fix line ending with a '('Frank A. Cancio Bello1-2/+1
checkpatch.pl message: "CHECK:OPEN_ENDED_LINE: Lines should not end with a '('" Signed-off-by: Frank A. Cancio Bello <frank@generalsoftwareinc.com> Link: https://lore.kernel.org/r/20191028042111.tzfhugs6f4erohir@linux-kernel-dev Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-08-21usb: add a HCD_DMA flag instead of guestimating DMA capabilitiesChristoph Hellwig1-1/+1
The usb core is the only major place in the kernel that checks for a non-NULL device dma_mask to see if a device is DMA capable. This is generally a bad idea, as all major busses always set up a DMA mask, even if the device is not DMA capable - in fact bus layers like PCI can't even know if a device is DMA capable at enumeration time. This leads to lots of workaround in HCD drivers, and also prevented us from setting up a DMA mask for platform devices by default last time we tried. Replace this guess with an explicit HCD_DMA that is set by drivers that appear to have DMA support. Signed-off-by: Christoph Hellwig <hch@lst.de> Link: https://lore.kernel.org/r/20190816062435.881-4-hch@lst.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-05-30staging: octeon-usb: Remove return variableNishka Dasgupta1-2/+1
Remove return variable result and return the value directly. Issue found using Coccinelle. Signed-off-by: Nishka Dasgupta <nishkadg.linux@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-04-03staging: add missing SPDX lines to Kconfig filesGreg Kroah-Hartman1-0/+1
There are a few remaining drivers/staging/*/Kconfig files that do not have SPDX identifiers in them. Add the correct GPL-2.0 identifier to them to make scanning tools happy. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-03-18staging: octeon-usb octeon-hcd: Fix several typos.Laura Lazzati1-4/+4
I found that the comments had several typos such as "aenable", "internaly" and some others. I fixed them all. Signed-off-by: Laura Lazzati <laura.lazzati.15@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-03-18staging: octeon-usb: remove unnecessary variable frame_numberHimadri Pandya1-3/+1
Remove unnecessary local variable "frame_number" and its assignments from function cvmx_usb_get_frame_numbe. Suggested by Coccinelle. Signed-off-by: Himadri Pandya <himadri18.07@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-21staging: octeon-usb: fix misspelled "re-enable"Sumit Pundir1-1/+1
Fixes misspelled "re-enable" in comment. Reported by checkpatch.pl Signed-off-by: Sumit Pundir <pundirsumit11@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-12-05staging: octeon-usb: use a helper function to set the DMA maskAaro Koskinen1-2/+4
Use a helper function to set the DMA mask. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-09-14staging: octeon-hcd: remove unnecessary unlikely()Igor Stoppa1-1/+1
WARN_ON() already contains an unlikely(), so it's not necessary to wrap it into another. Signed-off-by: Igor Stoppa <igor.stoppa@huawei.com> Cc: Aaro Koskinen <aaro.koskinen@iki.fi> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: devel@driverdev.osuosl.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-08-27Staging: octeon-usb: Replaces CVMX_WAIT_FOR_FIELD32 macro with a functionGeorgios Tsotsos1-27/+29
Replaces CVMX_WAIT_FOR_FIELD32 macro with equivalent function. Signed-off-by: Georgios Tsotsos <tsotsos@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-07-27Staging: octeon-usb: Adding SPDX license identifierGeorgios Tsotsos3-0/+3
Adding appropriate SPDX-License-Identifier (GPL-2) that were missing from code, header and make files. Signed-off-by: Georgios Tsotsos <tsotsos@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-11-28staging: octeon-usb: use __delay() instead of cvmx_wait()Aaro Koskinen1-3/+3
Commit edf188bee1d9 ("MIPS: Octeon: Remove usage of cvmx_wait() everywhere.") deleted cvmx_wait() but forgot to update OCTEON USB staging driver. Fix that to allow driver build. Fixes: edf188bee1d9 ("MIPS: Octeon: Remove usage of cvmx_wait() everywhere.") Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Reviewed-by: James Hogan <jhogan@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-05-15staging: octeon-usb: use correct function for hcd cleanupAnton Bondarenko1-3/+3
Use usb_put_hdc to release hdc allocated by usb_create_hcd. This is needed to handle sub-allocations and HCD sharing correctly. Signed-off-by: Anton Bondarenko <anton.bondarenko.sama@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-09-22staging: octeon-usb: Remove unnecessary assignmentRehas Sachdeva1-1/+0
Remove 'x=a;' from a consecutive double assignment of the form 'x=a; x=b;'. Issue detected by the semantic patch found here: https://github.com/coccinelle/coccinellery/blob/master/write2/write2.cocci Signed-off-by: Rehas Sachdeva <aquannie@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-08-30staging: octeon-usb: correct driver name in Kconfig help textRandy Dunlap1-1/+1
The module name in the Makefile and in the driver source file is octeon-hcd, so correct the Kconfig text to be the same. Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Cc: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: update TODOAaro Koskinen1-5/+2
Update TODO. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: avoid an overlong lineAaro Koskinen1-2/+2
Avoid an overlong line. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: move next pipe selection into a separate functionAaro Koskinen1-21/+28
Move next pipe selection into a separate function to avoid deep nesting. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: move isoc transfer handling into separate functionAaro Koskinen1-53/+53
Move isochronous transfer handling into a separate function to avoid deep indentation. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: move interrupt transfer handling into separate functionAaro Koskinen1-46/+28
Move bulk transfer handling into a separate function to avoid deep indentation. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: move bulk transfer handling into separate functionAaro Koskinen1-0/+38
Move bulk transfer handling into a separate function to avoid deep indentation. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: move control transfer handling into separate functionAaro Koskinen1-86/+88
Move control transfer handling into a separate function to avoid deep indentation. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: fold cvmx_usb_state into octeon_hcdAaro Koskinen1-137/+118
Fold cvmx_usb_state into octeon_hcd. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: rename STATUS_SUCCESS to STATUS_OKAaro Koskinen1-14/+14
Rename STATUS_SUCCESS to STATUS_OK. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: rename cvmx_usb_perform_complete to cvmx_usb_completeAaro Koskinen1-47/+42
Rename cvmx_usb_perform_complete to cvmx_usb_complete. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: rename cvmx_usb_complete to cvmx_usb_statusAaro Koskinen1-53/+52
Rename cvmx_usb_complete to cvmx_usb_status. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: simplify if statementAaro Koskinen1-18/+15
Simplify if statement to avoid deep nesting. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: pass transfer type to find_ready_pipeAaro Koskinen1-6/+7
Since we always search the same list, we can just pass the transfer type. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: eliminate redundant parameter from find_ready_pipeAaro Koskinen1-12/+6
current_frame always equals usb->frame_number. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: align split lines to match open parenthesisAaro Koskinen1-89/+81
Align split lines to match open parenthesis. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-25staging: octeon-usb: use preferred style for NULL comparisonAaro Koskinen1-2/+2
Use preferred coding style for NULL comparison. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon-usb: make driver name to match the file nameAaro Koskinen1-1/+1
Make driver name to match the file name. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon-usb: add spaces around operatorAaro Koskinen1-15/+15
Add spaces around operator to improve readability. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon-usb: switch to use kernel typesAaro Koskinen2-306/+305
Switch to use kernel types: uint64_t -> u64 uint32_t -> u32 uint16_t -> u16 uint8_t -> u8 int8_t -> s8 Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon-usb: clean up includesAaro Koskinen1-18/+4
Clean up includes. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon-usb: delete space after castAaro Koskinen1-4/+4
Delete space after cast. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon-usb: add missing bracesAaro Koskinen1-5/+6
Some if branches are missing braces as required by coding style. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-20staging: octeon-usb: delete redundant blank linesAaro Koskinen1-21/+0
Delete redundant blank lines. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-14staging: octeon-usb: support official bindingsAaro Koskinen1-4/+10
Support official DT bindings alongside with the deprecated ones. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-11staging: octeon: Remove unneeded parentheses in assignmentJanani Ravichandran1-1/+1
Remove parentheses around the right hand side of assignments as they are not needed. Semantic patch used: @@ expression a, b, c; @@ ( a = (b == c) | a = - ( b - ) ) Signed-off-by: Janani Ravichandran <janani.rvchndrn@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-07drivers: staging: octeon-usb: octeon-hcd.c: fixed coding style related warningsSaatvik Arya1-1/+2
fixed coding style warnings related to comment blocks Signed-off-by: Saatvik Arya <aryasaatvik@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-10-24staging: octeon-usb: Replace kmalloc with kmalloc_arrayCristina Moraru1-3/+3
Replace kmalloc with specialized function kmalloc_array when the size is a multiplication of: number_of_elements * size_of_element Signed-off-by: Cristina Moraru <cristina.moraru09@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-09-12staging: octeon-usb: Fix module autoload for OF platform driverLuis de Bethencourt1-0/+1
This platform driver has a OF device ID table but the OF module alias information is not created so module autoloading won't work. Signed-off-by: Luis de Bethencourt <luis@debethencourt.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-05-08Staging: fixed multiple spelling errors.Carlos E. Garcia2-3/+3
Fixed multiple spelling errors. Signed-off-by: Carlos E. Garcia <carlos@cgarcia.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-04-28staging: octeon-usb: fix unaligned isochronous transfersJohan Hovold1-3/+9
Make sure to copy the whole transfer buffer when releasing the temporary buffer used for unaligned isochronous transfers as the data is not necessarily contiguous in that case. Signed-off-by: Johan Hovold <johan@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-04-03staging: octeon-usb: make CVMX_WAIT_FOR_FIELD32 to take condition expressionAaro Koskinen1-5/+6
Make CVMX_WAIT_FOR_FIELD32 to take full condition expression. This should make the usage simpler, and the macro more readable. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-04-03staging: octeon-usb: assume union type for FIELD32 macrosAaro Koskinen1-43/+36
Assume union type for FIELD32 macros to simplify usage. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>