X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Fbouncebuf.h;h=7427bd12e27c29d114e605387bd7f024505a5f0e;hb=6864fc8704661878294d1f0f981f47e864ef470f;hp=707b588c733c06d936a0a2fa517b9c4fad47095a;hpb=96764df1b47ddebfb50fadf5af72530b07b5fc89;p=platform%2Fkernel%2Fu-boot.git diff --git a/include/bouncebuf.h b/include/bouncebuf.h index 707b588..7427bd1 100644 --- a/include/bouncebuf.h +++ b/include/bouncebuf.h @@ -1,25 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * Generic bounce buffer implementation * * Copyright (C) 2012 Marek Vasut - * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA */ #ifndef __INCLUDE_BOUNCEBUF_H__ @@ -79,6 +62,21 @@ struct bounce_buffer { */ int bounce_buffer_start(struct bounce_buffer *state, void *data, size_t len, unsigned int flags); + +/** + * bounce_buffer_start() -- Start the bounce buffer session with external align check function + * state: stores state passed between bounce_buffer_{start,stop} + * data: pointer to buffer to be aligned + * len: length of the buffer + * flags: flags describing the transaction, see above. + * alignment: alignment of the newly allocated bounce buffer + * addr_is_aligned: function for checking the alignment instead of the default one + */ +int bounce_buffer_start_extalign(struct bounce_buffer *state, void *data, + size_t len, unsigned int flags, + size_t alignment, + int (*addr_is_aligned)(struct bounce_buffer *state)); + /** * bounce_buffer_stop() -- Finish the bounce buffer session * state: stores state passed between bounce_buffer_{start,stop}