]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
greybus: get rid of gbuf->hdpriv
authorAlex Elder <elder@linaro.org>
Mon, 6 Oct 2014 11:53:13 +0000 (06:53 -0500)
committerGreg Kroah-Hartman <greg@kroah.com>
Mon, 6 Oct 2014 15:56:43 +0000 (08:56 -0700)
Last time I tried to kill off gbuf->context my efforts were shot
down.  Now that I've got the connection infrastructure in place,
maybe I'll have more luck getting rid of gbuf->hdpriv.

The only place it's used is to stash the es1_ap_dev structure
pointer in the buffer.  But that information is now available
through the buffer's connection, so we don't need to use the
hdpriv field any more.

So get rid of it, and use hd_to_es1(gbuf->connection->hd) to
get at what we need.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
drivers/staging/greybus/es1-ap-usb.c
drivers/staging/greybus/greybus.h

index ef0ac7f424cfd2badce7c7611870c7c09e6c173d..97dd9b6a2bc1bb01eef6d63c252498adcf855da0 100644 (file)
@@ -96,7 +96,6 @@ static void cport_out_callback(struct urb *urb);
 static int alloc_gbuf_data(struct gbuf *gbuf, unsigned int size,
                                gfp_t gfp_mask)
 {
-       struct es1_ap_dev *es1 = hd_to_es1(gbuf->connection->hd);
        u32 cport_reserve = gbuf->outbound ? 1 : 0;
        u8 *buffer;
 
@@ -135,9 +134,6 @@ static int alloc_gbuf_data(struct gbuf *gbuf, unsigned int size,
        gbuf->transfer_buffer = buffer;
        gbuf->transfer_buffer_length = size;
 
-       /* When we send the gbuf, we need this pointer to be here */
-       gbuf->hdpriv = es1;
-
        return 0;
 }
 
@@ -337,7 +333,7 @@ exit:
 static void cport_out_callback(struct urb *urb)
 {
        struct gbuf *gbuf = urb->context;
-       struct es1_ap_dev *es1 = gbuf->hdpriv;
+       struct es1_ap_dev *es1 = hd_to_es1(gbuf->connection->hd);
        unsigned long flags;
        int i;
 
index 12a6cbf15b9e603e32e8c41e59018408ae2e92b9..851f5ae095cc1856699f0b5c7a94ae530077c8bd 100644 (file)
@@ -124,7 +124,6 @@ typedef void (*gbuf_complete_t)(struct gbuf *gbuf);
 
 struct gbuf {
        struct kref kref;
-       void *hdpriv;
 
        struct gb_connection *connection;
        int status;