diff for duplicates of <1490907014.3177.207.camel@kernel.crashing.org> diff --git a/a/1.txt b/N1/1.txt index 8228961..024e001 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,49 +1,49 @@ On Thu, 2017-03-30 at 13:15 -0500, Christopher Bostic wrote: > > > +static void serial_in(struct fsi_master_gpio *master, struct fsi_gpio_msg *msg, -> > > +?????????????????????? uint8_t num_bits) +> > > + uint8_t num_bits) > > > +{ -> > > +?????? uint8_t bit, in_bit; +> > > + uint8_t bit, in_bit; > > > + -> > > +?????? set_sda_input(master); +> > > + set_sda_input(master); > > > + -> > > +?????? for (bit = 0; bit < num_bits; bit++) { -> > > +?????????????? clock_toggle(master, 1); -> > > +?????????????? in_bit = sda_in(master); -> > > +?????????????? msg->msg <<= 1; -> > > +?????????????? msg->msg |= ~in_bit & 0x1;????? /* Data is negative active */ -> > > +?????? } -> > > +?????? msg->bits += num_bi ts; +> > > + for (bit = 0; bit < num_bits; bit++) { +> > > + clock_toggle(master, 1); +> > > + in_bit = sda_in(master); +> > > + msg->msg <<= 1; +> > > + msg->msg |= ~in_bit & 0x1; /* Data is negative active */ +> > > + } +> > > + msg->bits += num_bi ts; > > > +} > > > + > > > +static void serial_out(struct fsi_master_gpio *master, -> > > +?????????????????????? const struct fsi_gpio_msg *cmd) +> > > + const struct fsi_gpio_msg *cmd) > > > +{ -> > > +?????? uint8_t bit; -> > > +?????? uint64_t msg = ~cmd->msg;?????? /* Data is negative active */ -> > > +?????? uint64_t sda_mask = 0x1ULL << (cmd->bits - 1); -> > > +?????? uint64_t last_bit = ~0; -> > > +?????? int next_bit; +> > > + uint8_t bit; +> > > + uint64_t msg = ~cmd->msg; /* Data is negative active */ +> > > + uint64_t sda_mask = 0x1ULL << (cmd->bits - 1); +> > > + uint64_t last_bit = ~0; +> > > + int next_bit; > > > + -> > > +?????? if (!cmd->bits) { -> > > +?????????????? dev_warn(master->dev, "trying to output 0 bits\n"); -> > > +?????????????? return; -> > > +?????? } -> > > +?????? set_sda_output(master, 0); +> > > + if (!cmd->bits) { +> > > + dev_warn(master->dev, "trying to output 0 bits\n"); +> > > + return; +> > > + } +> > > + set_sda_output(master, 0); > > > + -> > > +?????? /* Send the start bit */ -> > > +?????? sda_out(master, 0); -> > > +?????? clock_toggle(master, 1); +> > > + /* Send the start bit */ +> > > + sda_out(master, 0); +> > > + clock_toggle(master, 1); > > > + -> > > +?????? /* Send the message */ -> > > +?????? for (bit = 0; bit < cmd->bits; bit++) { -> > > +?????????????? next_bit = (msg & sda_mask) >> (cmd->bits - 1); -> > > +?????????????? if (last_bit ^ next_bit) { -> > > +?????????????????????? sda_out(master, next_bit); -> > > +?????????????????????? last_bit = next_bit; -> > > +?????????????? } -> > > +?????????????? clock_toggle(master, 1); -> > > +?????????????? msg <<= 1; -> > > +?????? } +> > > + /* Send the message */ +> > > + for (bit = 0; bit < cmd->bits; bit++) { +> > > + next_bit = (msg & sda_mask) >> (cmd->bits - 1); +> > > + if (last_bit ^ next_bit) { +> > > + sda_out(master, next_bit); +> > > + last_bit = next_bit; +> > > + } +> > > + clock_toggle(master, 1); +> > > + msg <<= 1; +> > > + } > > > +} As I mentioned privately, I don't think this is right, unless your @@ -71,3 +71,9 @@ diagram I have is right. Cheers, Ben. + + +_______________________________________________ +linux-arm-kernel mailing list +linux-arm-kernel@lists.infradead.org +http://lists.infradead.org/mailman/listinfo/linux-arm-kernel diff --git a/a/content_digest b/N1/content_digest index f81799a..391f58a 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -2,58 +2,72 @@ "ref\020170329174340.89109-20-cbostic@linux.vnet.ibm.com\0" "ref\0CACPK8XfOSYPidHF6=psC4mP-tkRyWTu0psdcK6EwA2E6FF53Uw@mail.gmail.com\0" "ref\00e1bcf3a-e8d7-9f50-bdf7-2a1e7466665b@linux.vnet.ibm.com\0" - "From\0benh@kernel.crashing.org (Benjamin Herrenschmidt)\0" - "Subject\0[PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master\0" + "From\0Benjamin Herrenschmidt <benh@kernel.crashing.org>\0" + "Subject\0Re: [PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master\0" "Date\0Fri, 31 Mar 2017 07:50:14 +1100\0" - "To\0linux-arm-kernel@lists.infradead.org\0" + "To\0Christopher Bostic <cbostic@linux.vnet.ibm.com>" + " Joel Stanley <joel@jms.id.au>\0" + "Cc\0Mark Rutland <mark.rutland@arm.com>" + devicetree@vger.kernel.org + Andrew Jeffery <andrew@aj.id.au> + Greg KH <gregkh@linuxfoundation.org> + Russell King <linux@armlinux.org.uk> + rostedt@goodmis.org + Linux Kernel Mailing List <linux-kernel@vger.kernel.org> + Rob Herring <robh+dt@kernel.org> + Jeremy Kerr <jk@ozlabs.org> + Edward A . James <eajames@us.ibm.com> + Alistair Popple <alistair@popple.id.au> + mingo@redhat.com + " linux-arm-kernel@lists.infradead.org\0" "\00:1\0" "b\0" "On Thu, 2017-03-30 at 13:15 -0500, Christopher Bostic wrote:\n" "> > > +static void serial_in(struct fsi_master_gpio *master, struct fsi_gpio_msg *msg,\n" - "> > > +?????????????????????? uint8_t num_bits)\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 uint8_t num_bits)\n" "> > > +{\n" - "> > > +?????? uint8_t bit, in_bit;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint8_t bit, in_bit;\n" "> > > +\n" - "> > > +?????? set_sda_input(master);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 set_sda_input(master);\n" "> > > +\n" - "> > > +?????? for (bit = 0; bit < num_bits; bit++) {\n" - "> > > +?????????????? clock_toggle(master, 1);\n" - "> > > +?????????????? in_bit = sda_in(master);\n" - "> > > +?????????????? msg->msg <<= 1;\n" - "> > > +?????????????? msg->msg |= ~in_bit & 0x1;????? /* Data is negative active */\n" - "> > > +?????? }\n" - "> > > +?????? msg->bits += num_bi\tts;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 for (bit = 0; bit < num_bits; bit++) {\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 clock_toggle(master, 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 in_bit = sda_in(master);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 msg->msg <<= 1;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 msg->msg |= ~in_bit & 0x1;\302\240\302\240\302\240\302\240\302\240 /* Data is negative active */\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 }\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 msg->bits += num_bi\tts;\n" "> > > +}\n" "> > > +\n" "> > > +static void serial_out(struct fsi_master_gpio *master,\n" - "> > > +?????????????????????? const struct fsi_gpio_msg *cmd)\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 const struct fsi_gpio_msg *cmd)\n" "> > > +{\n" - "> > > +?????? uint8_t bit;\n" - "> > > +?????? uint64_t msg = ~cmd->msg;?????? /* Data is negative active */\n" - "> > > +?????? uint64_t sda_mask = 0x1ULL << (cmd->bits - 1);\n" - "> > > +?????? uint64_t last_bit = ~0;\n" - "> > > +?????? int next_bit;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint8_t bit;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint64_t msg = ~cmd->msg;\302\240\302\240\302\240\302\240\302\240\302\240 /* Data is negative active */\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint64_t sda_mask = 0x1ULL << (cmd->bits - 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint64_t last_bit = ~0;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 int next_bit;\n" "> > > +\n" - "> > > +?????? if (!cmd->bits) {\n" - "> > > +?????????????? dev_warn(master->dev, \"trying to output 0 bits\\n\");\n" - "> > > +?????????????? return;\n" - "> > > +?????? }\n" - "> > > +?????? set_sda_output(master, 0);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 if (!cmd->bits) {\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 dev_warn(master->dev, \"trying to output 0 bits\\n\");\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 return;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 }\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 set_sda_output(master, 0);\n" "> > > +\n" - "> > > +?????? /* Send the start bit */\n" - "> > > +?????? sda_out(master, 0);\n" - "> > > +?????? clock_toggle(master, 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 /* Send the start bit */\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 sda_out(master, 0);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 clock_toggle(master, 1);\n" "> > > +\n" - "> > > +?????? /* Send the message */\n" - "> > > +?????? for (bit = 0; bit < cmd->bits; bit++) {\n" - "> > > +?????????????? next_bit = (msg & sda_mask) >> (cmd->bits - 1);\n" - "> > > +?????????????? if (last_bit ^ next_bit) {\n" - "> > > +?????????????????????? sda_out(master, next_bit);\n" - "> > > +?????????????????????? last_bit = next_bit;\n" - "> > > +?????????????? }\n" - "> > > +?????????????? clock_toggle(master, 1);\n" - "> > > +?????????????? msg <<= 1;\n" - "> > > +?????? }\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 /* Send the message */\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 for (bit = 0; bit < cmd->bits; bit++) {\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 next_bit = (msg & sda_mask) >> (cmd->bits - 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 if (last_bit ^ next_bit) {\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 sda_out(master, next_bit);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 last_bit = next_bit;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 }\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 clock_toggle(master, 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 msg <<= 1;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 }\n" "> > > +}\n" "\n" "As I mentioned privately, I don't think this is right, unless your\n" @@ -80,6 +94,12 @@ "diagram I have is right.\n" "\n" "Cheers,\n" - Ben. + "Ben.\n" + "\n" + "\n" + "_______________________________________________\n" + "linux-arm-kernel mailing list\n" + "linux-arm-kernel@lists.infradead.org\n" + http://lists.infradead.org/mailman/listinfo/linux-arm-kernel -f5850245ffec3ef0593b11f3bcc3f49052def76da07e521a5f0171be4ea9788b +b31d1ecfd8311c8361aa741d42f0dca8a96b42c8343a7bd365a795e4059e02f7
diff --git a/a/1.txt b/N2/1.txt index 8228961..a11a09a 100644 --- a/a/1.txt +++ b/N2/1.txt @@ -1,49 +1,49 @@ On Thu, 2017-03-30 at 13:15 -0500, Christopher Bostic wrote: > > > +static void serial_in(struct fsi_master_gpio *master, struct fsi_gpio_msg *msg, -> > > +?????????????????????? uint8_t num_bits) +> > > + uint8_t num_bits) > > > +{ -> > > +?????? uint8_t bit, in_bit; +> > > + uint8_t bit, in_bit; > > > + -> > > +?????? set_sda_input(master); +> > > + set_sda_input(master); > > > + -> > > +?????? for (bit = 0; bit < num_bits; bit++) { -> > > +?????????????? clock_toggle(master, 1); -> > > +?????????????? in_bit = sda_in(master); -> > > +?????????????? msg->msg <<= 1; -> > > +?????????????? msg->msg |= ~in_bit & 0x1;????? /* Data is negative active */ -> > > +?????? } -> > > +?????? msg->bits += num_bi ts; +> > > + for (bit = 0; bit < num_bits; bit++) { +> > > + clock_toggle(master, 1); +> > > + in_bit = sda_in(master); +> > > + msg->msg <<= 1; +> > > + msg->msg |= ~in_bit & 0x1; /* Data is negative active */ +> > > + } +> > > + msg->bits += num_bi ts; > > > +} > > > + > > > +static void serial_out(struct fsi_master_gpio *master, -> > > +?????????????????????? const struct fsi_gpio_msg *cmd) +> > > + const struct fsi_gpio_msg *cmd) > > > +{ -> > > +?????? uint8_t bit; -> > > +?????? uint64_t msg = ~cmd->msg;?????? /* Data is negative active */ -> > > +?????? uint64_t sda_mask = 0x1ULL << (cmd->bits - 1); -> > > +?????? uint64_t last_bit = ~0; -> > > +?????? int next_bit; +> > > + uint8_t bit; +> > > + uint64_t msg = ~cmd->msg; /* Data is negative active */ +> > > + uint64_t sda_mask = 0x1ULL << (cmd->bits - 1); +> > > + uint64_t last_bit = ~0; +> > > + int next_bit; > > > + -> > > +?????? if (!cmd->bits) { -> > > +?????????????? dev_warn(master->dev, "trying to output 0 bits\n"); -> > > +?????????????? return; -> > > +?????? } -> > > +?????? set_sda_output(master, 0); +> > > + if (!cmd->bits) { +> > > + dev_warn(master->dev, "trying to output 0 bits\n"); +> > > + return; +> > > + } +> > > + set_sda_output(master, 0); > > > + -> > > +?????? /* Send the start bit */ -> > > +?????? sda_out(master, 0); -> > > +?????? clock_toggle(master, 1); +> > > + /* Send the start bit */ +> > > + sda_out(master, 0); +> > > + clock_toggle(master, 1); > > > + -> > > +?????? /* Send the message */ -> > > +?????? for (bit = 0; bit < cmd->bits; bit++) { -> > > +?????????????? next_bit = (msg & sda_mask) >> (cmd->bits - 1); -> > > +?????????????? if (last_bit ^ next_bit) { -> > > +?????????????????????? sda_out(master, next_bit); -> > > +?????????????????????? last_bit = next_bit; -> > > +?????????????? } -> > > +?????????????? clock_toggle(master, 1); -> > > +?????????????? msg <<= 1; -> > > +?????? } +> > > + /* Send the message */ +> > > + for (bit = 0; bit < cmd->bits; bit++) { +> > > + next_bit = (msg & sda_mask) >> (cmd->bits - 1); +> > > + if (last_bit ^ next_bit) { +> > > + sda_out(master, next_bit); +> > > + last_bit = next_bit; +> > > + } +> > > + clock_toggle(master, 1); +> > > + msg <<= 1; +> > > + } > > > +} As I mentioned privately, I don't think this is right, unless your diff --git a/a/content_digest b/N2/content_digest index f81799a..b2581e0 100644 --- a/a/content_digest +++ b/N2/content_digest @@ -2,58 +2,72 @@ "ref\020170329174340.89109-20-cbostic@linux.vnet.ibm.com\0" "ref\0CACPK8XfOSYPidHF6=psC4mP-tkRyWTu0psdcK6EwA2E6FF53Uw@mail.gmail.com\0" "ref\00e1bcf3a-e8d7-9f50-bdf7-2a1e7466665b@linux.vnet.ibm.com\0" - "From\0benh@kernel.crashing.org (Benjamin Herrenschmidt)\0" - "Subject\0[PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master\0" + "From\0Benjamin Herrenschmidt <benh@kernel.crashing.org>\0" + "Subject\0Re: [PATCH v4 19/23] drivers/fsi: Add GPIO based FSI master\0" "Date\0Fri, 31 Mar 2017 07:50:14 +1100\0" - "To\0linux-arm-kernel@lists.infradead.org\0" + "To\0Christopher Bostic <cbostic@linux.vnet.ibm.com>" + " Joel Stanley <joel@jms.id.au>\0" + "Cc\0Rob Herring <robh+dt@kernel.org>" + Mark Rutland <mark.rutland@arm.com> + Russell King <linux@armlinux.org.uk> + rostedt@goodmis.org + mingo@redhat.com + Greg KH <gregkh@linuxfoundation.org> + devicetree@vger.kernel.org + linux-arm-kernel@lists.infradead.org + Linux Kernel Mailing List <linux-kernel@vger.kernel.org> + Andrew Jeffery <andrew@aj.id.au> + Alistair Popple <alistair@popple.id.au> + Edward A . James <eajames@us.ibm.com> + " Jeremy Kerr <jk@ozlabs.org>\0" "\00:1\0" "b\0" "On Thu, 2017-03-30 at 13:15 -0500, Christopher Bostic wrote:\n" "> > > +static void serial_in(struct fsi_master_gpio *master, struct fsi_gpio_msg *msg,\n" - "> > > +?????????????????????? uint8_t num_bits)\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 uint8_t num_bits)\n" "> > > +{\n" - "> > > +?????? uint8_t bit, in_bit;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint8_t bit, in_bit;\n" "> > > +\n" - "> > > +?????? set_sda_input(master);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 set_sda_input(master);\n" "> > > +\n" - "> > > +?????? for (bit = 0; bit < num_bits; bit++) {\n" - "> > > +?????????????? clock_toggle(master, 1);\n" - "> > > +?????????????? in_bit = sda_in(master);\n" - "> > > +?????????????? msg->msg <<= 1;\n" - "> > > +?????????????? msg->msg |= ~in_bit & 0x1;????? /* Data is negative active */\n" - "> > > +?????? }\n" - "> > > +?????? msg->bits += num_bi\tts;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 for (bit = 0; bit < num_bits; bit++) {\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 clock_toggle(master, 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 in_bit = sda_in(master);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 msg->msg <<= 1;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 msg->msg |= ~in_bit & 0x1;\302\240\302\240\302\240\302\240\302\240 /* Data is negative active */\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 }\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 msg->bits += num_bi\tts;\n" "> > > +}\n" "> > > +\n" "> > > +static void serial_out(struct fsi_master_gpio *master,\n" - "> > > +?????????????????????? const struct fsi_gpio_msg *cmd)\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 const struct fsi_gpio_msg *cmd)\n" "> > > +{\n" - "> > > +?????? uint8_t bit;\n" - "> > > +?????? uint64_t msg = ~cmd->msg;?????? /* Data is negative active */\n" - "> > > +?????? uint64_t sda_mask = 0x1ULL << (cmd->bits - 1);\n" - "> > > +?????? uint64_t last_bit = ~0;\n" - "> > > +?????? int next_bit;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint8_t bit;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint64_t msg = ~cmd->msg;\302\240\302\240\302\240\302\240\302\240\302\240 /* Data is negative active */\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint64_t sda_mask = 0x1ULL << (cmd->bits - 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 uint64_t last_bit = ~0;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 int next_bit;\n" "> > > +\n" - "> > > +?????? if (!cmd->bits) {\n" - "> > > +?????????????? dev_warn(master->dev, \"trying to output 0 bits\\n\");\n" - "> > > +?????????????? return;\n" - "> > > +?????? }\n" - "> > > +?????? set_sda_output(master, 0);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 if (!cmd->bits) {\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 dev_warn(master->dev, \"trying to output 0 bits\\n\");\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 return;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 }\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 set_sda_output(master, 0);\n" "> > > +\n" - "> > > +?????? /* Send the start bit */\n" - "> > > +?????? sda_out(master, 0);\n" - "> > > +?????? clock_toggle(master, 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 /* Send the start bit */\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 sda_out(master, 0);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 clock_toggle(master, 1);\n" "> > > +\n" - "> > > +?????? /* Send the message */\n" - "> > > +?????? for (bit = 0; bit < cmd->bits; bit++) {\n" - "> > > +?????????????? next_bit = (msg & sda_mask) >> (cmd->bits - 1);\n" - "> > > +?????????????? if (last_bit ^ next_bit) {\n" - "> > > +?????????????????????? sda_out(master, next_bit);\n" - "> > > +?????????????????????? last_bit = next_bit;\n" - "> > > +?????????????? }\n" - "> > > +?????????????? clock_toggle(master, 1);\n" - "> > > +?????????????? msg <<= 1;\n" - "> > > +?????? }\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 /* Send the message */\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 for (bit = 0; bit < cmd->bits; bit++) {\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 next_bit = (msg & sda_mask) >> (cmd->bits - 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 if (last_bit ^ next_bit) {\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 sda_out(master, next_bit);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 last_bit = next_bit;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 }\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 clock_toggle(master, 1);\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240 msg <<= 1;\n" + "> > > +\302\240\302\240\302\240\302\240\302\240\302\240 }\n" "> > > +}\n" "\n" "As I mentioned privately, I don't think this is right, unless your\n" @@ -82,4 +96,4 @@ "Cheers,\n" Ben. -f5850245ffec3ef0593b11f3bcc3f49052def76da07e521a5f0171be4ea9788b +2b31c70b4723628bd63d99c1042372be6d93bdc6bd7d99224cd79ccdc345f2aa
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.